all: regen

Change-Id: I1d74f38ad0619d96b1819897874e72c4ad3daf3d
Reviewed-on: https://code-review.googlesource.com/c/gocloud/+/43310
Reviewed-by: Tyler Bui-Palsulich <tbp@google.com>
Reviewed-by: kokoro <noreply+kokoro@google.com>
diff --git a/asset/apiv1/doc.go b/asset/apiv1/doc.go
index 96922df..79dd9a0 100644
--- a/asset/apiv1/doc.go
+++ b/asset/apiv1/doc.go
@@ -97,4 +97,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/asset/apiv1beta1/doc.go b/asset/apiv1beta1/doc.go
index 525478f..40c1744 100644
--- a/asset/apiv1beta1/doc.go
+++ b/asset/apiv1beta1/doc.go
@@ -97,4 +97,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/automl/apiv1beta1/doc.go b/automl/apiv1beta1/doc.go
index 94dc8ce..fbbbf12 100644
--- a/automl/apiv1beta1/doc.go
+++ b/automl/apiv1beta1/doc.go
@@ -98,4 +98,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/bigquery/datatransfer/apiv1/doc.go b/bigquery/datatransfer/apiv1/doc.go
index 1063f74..7353118 100644
--- a/bigquery/datatransfer/apiv1/doc.go
+++ b/bigquery/datatransfer/apiv1/doc.go
@@ -98,4 +98,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/bigquery/storage/apiv1beta1/doc.go b/bigquery/storage/apiv1beta1/doc.go
index a81d7e7..e4111cd 100644
--- a/bigquery/storage/apiv1beta1/doc.go
+++ b/bigquery/storage/apiv1beta1/doc.go
@@ -97,4 +97,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/cloudtasks/apiv2/doc.go b/cloudtasks/apiv2/doc.go
index 8235423..9366b3f 100644
--- a/cloudtasks/apiv2/doc.go
+++ b/cloudtasks/apiv2/doc.go
@@ -96,4 +96,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/cloudtasks/apiv2beta2/doc.go b/cloudtasks/apiv2beta2/doc.go
index a92a2f7..cbb6e41 100644
--- a/cloudtasks/apiv2beta2/doc.go
+++ b/cloudtasks/apiv2beta2/doc.go
@@ -97,4 +97,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/cloudtasks/apiv2beta3/doc.go b/cloudtasks/apiv2beta3/doc.go
index 058df33..6423760 100644
--- a/cloudtasks/apiv2beta3/doc.go
+++ b/cloudtasks/apiv2beta3/doc.go
@@ -97,4 +97,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/containeranalysis/apiv1beta1/doc.go b/containeranalysis/apiv1beta1/doc.go
index 833c3b8..f8d760f 100644
--- a/containeranalysis/apiv1beta1/doc.go
+++ b/containeranalysis/apiv1beta1/doc.go
@@ -99,4 +99,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/dataproc/apiv1/doc.go b/dataproc/apiv1/doc.go
index 5f28924..4450011 100644
--- a/dataproc/apiv1/doc.go
+++ b/dataproc/apiv1/doc.go
@@ -97,4 +97,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/dataproc/apiv1beta2/doc.go b/dataproc/apiv1beta2/doc.go
index 1032762..aecf924 100644
--- a/dataproc/apiv1beta2/doc.go
+++ b/dataproc/apiv1beta2/doc.go
@@ -97,4 +97,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/debugger/apiv2/doc.go b/debugger/apiv2/doc.go
index 50733d1..4f71da4 100644
--- a/debugger/apiv2/doc.go
+++ b/debugger/apiv2/doc.go
@@ -101,4 +101,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/dialogflow/apiv2/doc.go b/dialogflow/apiv2/doc.go
index 668bdf4..9517132 100644
--- a/dialogflow/apiv2/doc.go
+++ b/dialogflow/apiv2/doc.go
@@ -99,4 +99,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/dlp/apiv2/doc.go b/dlp/apiv2/doc.go
index cc4dbf5..3ea28ee 100644
--- a/dlp/apiv2/doc.go
+++ b/dlp/apiv2/doc.go
@@ -98,4 +98,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/errorreporting/apiv1beta1/doc.go b/errorreporting/apiv1beta1/doc.go
index 3a54b07..04609b7 100644
--- a/errorreporting/apiv1beta1/doc.go
+++ b/errorreporting/apiv1beta1/doc.go
@@ -101,4 +101,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/expr/apiv1alpha1/doc.go b/expr/apiv1alpha1/doc.go
index cbec8b0..77f8ddf 100644
--- a/expr/apiv1alpha1/doc.go
+++ b/expr/apiv1alpha1/doc.go
@@ -95,4 +95,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/firestore/apiv1/admin/doc.go b/firestore/apiv1/admin/doc.go
index 99a9192..3bff205 100644
--- a/firestore/apiv1/admin/doc.go
+++ b/firestore/apiv1/admin/doc.go
@@ -99,4 +99,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/firestore/apiv1beta1/doc.go b/firestore/apiv1beta1/doc.go
index d5e4151..5cde089 100644
--- a/firestore/apiv1beta1/doc.go
+++ b/firestore/apiv1beta1/doc.go
@@ -99,4 +99,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/go.mod b/go.mod
index 3984fae..bdc2620 100644
--- a/go.mod
+++ b/go.mod
@@ -23,7 +23,7 @@
 	golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0
 	google.golang.org/api v0.7.0
 	google.golang.org/appengine v1.6.1 // indirect
-	google.golang.org/genproto v0.0.0-20190716160619-c506a9f90610
+	google.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64
 	google.golang.org/grpc v1.21.1
 	honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a
 	rsc.io/binaryregexp v0.2.0
diff --git a/go.sum b/go.sum
index a968047..a2926d4 100644
--- a/go.sum
+++ b/go.sum
@@ -135,8 +135,8 @@
 google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE=
 google.golang.org/genproto v0.0.0-20190502173448-54afdca5d873 h1:nfPFGzJkUDX6uBmpN/pSw7MbOAWegH5QDQuoXFHedLg=
 google.golang.org/genproto v0.0.0-20190502173448-54afdca5d873/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE=
-google.golang.org/genproto v0.0.0-20190716160619-c506a9f90610 h1:Ygq9/SRJX9+dU0WCIICM8RkWvDw03lvB77hrhJnpxfU=
-google.golang.org/genproto v0.0.0-20190716160619-c506a9f90610/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=
+google.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64 h1:iKtrH9Y8mcbADOP0YFaEMth7OfuHY9xHOwNj4znpM1A=
+google.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=
 google.golang.org/grpc v1.19.0 h1:cfg4PD8YEdSFnm7qLV4++93WcmhH2nIUhMjhdCvl3j8=
 google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
 google.golang.org/grpc v1.20.1 h1:Hz2g2wirWK7H0qIIhGIqRGTuMwTE8HEKFnDZZ7lm9NU=
diff --git a/iam/admin/apiv1/doc.go b/iam/admin/apiv1/doc.go
index 23682f9..6317c52 100644
--- a/iam/admin/apiv1/doc.go
+++ b/iam/admin/apiv1/doc.go
@@ -100,4 +100,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/iam/credentials/apiv1/doc.go b/iam/credentials/apiv1/doc.go
index 9b7f72b..abb16e2 100644
--- a/iam/credentials/apiv1/doc.go
+++ b/iam/credentials/apiv1/doc.go
@@ -97,4 +97,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/iot/apiv1/doc.go b/iot/apiv1/doc.go
index e1434ab..a35d0f8 100644
--- a/iot/apiv1/doc.go
+++ b/iot/apiv1/doc.go
@@ -99,4 +99,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/irm/apiv1alpha2/doc.go b/irm/apiv1alpha2/doc.go
index 26ca635..ded4132 100644
--- a/irm/apiv1alpha2/doc.go
+++ b/irm/apiv1alpha2/doc.go
@@ -96,4 +96,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/kms/apiv1/doc.go b/kms/apiv1/doc.go
index 8224f33..0bc4ce6 100644
--- a/kms/apiv1/doc.go
+++ b/kms/apiv1/doc.go
@@ -98,4 +98,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/language/apiv1/doc.go b/language/apiv1/doc.go
index a174671..143fc6f 100644
--- a/language/apiv1/doc.go
+++ b/language/apiv1/doc.go
@@ -100,4 +100,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/language/apiv1beta2/doc.go b/language/apiv1beta2/doc.go
index b772dd8..3a4e1d4 100644
--- a/language/apiv1beta2/doc.go
+++ b/language/apiv1beta2/doc.go
@@ -99,4 +99,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/logging/apiv2/doc.go b/logging/apiv2/doc.go
index fcef3ae..cd6d8f7 100644
--- a/logging/apiv2/doc.go
+++ b/logging/apiv2/doc.go
@@ -103,4 +103,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/longrunning/autogen/doc.go b/longrunning/autogen/doc.go
index f349eda..59e3458 100644
--- a/longrunning/autogen/doc.go
+++ b/longrunning/autogen/doc.go
@@ -96,4 +96,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/monitoring/apiv3/doc.go b/monitoring/apiv3/doc.go
index 378aa5c..0b6ae74 100644
--- a/monitoring/apiv3/doc.go
+++ b/monitoring/apiv3/doc.go
@@ -102,4 +102,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/monitoring/apiv3/mock_test.go b/monitoring/apiv3/mock_test.go
index f8417ee..d4624a5 100644
--- a/monitoring/apiv3/mock_test.go
+++ b/monitoring/apiv3/mock_test.go
@@ -420,6 +420,42 @@
 	return s.resps[0].(*emptypb.Empty), nil
 }
 
+func (s *mockNotificationChannelServer) SendNotificationChannelVerificationCode(ctx context.Context, req *monitoringpb.SendNotificationChannelVerificationCodeRequest) (*emptypb.Empty, error) {
+	md, _ := metadata.FromIncomingContext(ctx)
+	if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
+		return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
+	}
+	s.reqs = append(s.reqs, req)
+	if s.err != nil {
+		return nil, s.err
+	}
+	return s.resps[0].(*emptypb.Empty), nil
+}
+
+func (s *mockNotificationChannelServer) GetNotificationChannelVerificationCode(ctx context.Context, req *monitoringpb.GetNotificationChannelVerificationCodeRequest) (*monitoringpb.GetNotificationChannelVerificationCodeResponse, error) {
+	md, _ := metadata.FromIncomingContext(ctx)
+	if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
+		return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
+	}
+	s.reqs = append(s.reqs, req)
+	if s.err != nil {
+		return nil, s.err
+	}
+	return s.resps[0].(*monitoringpb.GetNotificationChannelVerificationCodeResponse), nil
+}
+
+func (s *mockNotificationChannelServer) VerifyNotificationChannel(ctx context.Context, req *monitoringpb.VerifyNotificationChannelRequest) (*monitoringpb.NotificationChannel, error) {
+	md, _ := metadata.FromIncomingContext(ctx)
+	if xg := md["x-goog-api-client"]; len(xg) == 0 || !strings.Contains(xg[0], "gl-go/") {
+		return nil, fmt.Errorf("x-goog-api-client = %v, expected gl-go key", xg)
+	}
+	s.reqs = append(s.reqs, req)
+	if s.err != nil {
+		return nil, s.err
+	}
+	return s.resps[0].(*monitoringpb.NotificationChannel), nil
+}
+
 type mockUptimeCheckServer struct {
 	// Embed for forward compatibility.
 	// Tests will keep working if more methods are added
@@ -2257,6 +2293,186 @@
 		t.Errorf("got error code %q, want %q", c, errCode)
 	}
 }
+func TestNotificationChannelServiceSendNotificationChannelVerificationCode(t *testing.T) {
+	var expectedResponse *emptypb.Empty = &emptypb.Empty{}
+
+	mockNotificationChannel.err = nil
+	mockNotificationChannel.reqs = nil
+
+	mockNotificationChannel.resps = append(mockNotificationChannel.resps[:0], expectedResponse)
+
+	var formattedName string = fmt.Sprintf("projects/%s/notificationChannels/%s", "[PROJECT]", "[NOTIFICATION_CHANNEL]")
+	var request = &monitoringpb.SendNotificationChannelVerificationCodeRequest{
+		Name: formattedName,
+	}
+
+	c, err := NewNotificationChannelClient(context.Background(), clientOpt)
+	if err != nil {
+		t.Fatal(err)
+	}
+
+	err = c.SendNotificationChannelVerificationCode(context.Background(), request)
+
+	if err != nil {
+		t.Fatal(err)
+	}
+
+	if want, got := request, mockNotificationChannel.reqs[0]; !proto.Equal(want, got) {
+		t.Errorf("wrong request %q, want %q", got, want)
+	}
+
+}
+
+func TestNotificationChannelServiceSendNotificationChannelVerificationCodeError(t *testing.T) {
+	errCode := codes.PermissionDenied
+	mockNotificationChannel.err = gstatus.Error(errCode, "test error")
+
+	var formattedName string = fmt.Sprintf("projects/%s/notificationChannels/%s", "[PROJECT]", "[NOTIFICATION_CHANNEL]")
+	var request = &monitoringpb.SendNotificationChannelVerificationCodeRequest{
+		Name: formattedName,
+	}
+
+	c, err := NewNotificationChannelClient(context.Background(), clientOpt)
+	if err != nil {
+		t.Fatal(err)
+	}
+
+	err = c.SendNotificationChannelVerificationCode(context.Background(), request)
+
+	if st, ok := gstatus.FromError(err); !ok {
+		t.Errorf("got error %v, expected grpc error", err)
+	} else if c := st.Code(); c != errCode {
+		t.Errorf("got error code %q, want %q", c, errCode)
+	}
+}
+func TestNotificationChannelServiceGetNotificationChannelVerificationCode(t *testing.T) {
+	var code string = "code3059181"
+	var expectedResponse = &monitoringpb.GetNotificationChannelVerificationCodeResponse{
+		Code: code,
+	}
+
+	mockNotificationChannel.err = nil
+	mockNotificationChannel.reqs = nil
+
+	mockNotificationChannel.resps = append(mockNotificationChannel.resps[:0], expectedResponse)
+
+	var formattedName string = fmt.Sprintf("projects/%s/notificationChannels/%s", "[PROJECT]", "[NOTIFICATION_CHANNEL]")
+	var request = &monitoringpb.GetNotificationChannelVerificationCodeRequest{
+		Name: formattedName,
+	}
+
+	c, err := NewNotificationChannelClient(context.Background(), clientOpt)
+	if err != nil {
+		t.Fatal(err)
+	}
+
+	resp, err := c.GetNotificationChannelVerificationCode(context.Background(), request)
+
+	if err != nil {
+		t.Fatal(err)
+	}
+
+	if want, got := request, mockNotificationChannel.reqs[0]; !proto.Equal(want, got) {
+		t.Errorf("wrong request %q, want %q", got, want)
+	}
+
+	if want, got := expectedResponse, resp; !proto.Equal(want, got) {
+		t.Errorf("wrong response %q, want %q)", got, want)
+	}
+}
+
+func TestNotificationChannelServiceGetNotificationChannelVerificationCodeError(t *testing.T) {
+	errCode := codes.PermissionDenied
+	mockNotificationChannel.err = gstatus.Error(errCode, "test error")
+
+	var formattedName string = fmt.Sprintf("projects/%s/notificationChannels/%s", "[PROJECT]", "[NOTIFICATION_CHANNEL]")
+	var request = &monitoringpb.GetNotificationChannelVerificationCodeRequest{
+		Name: formattedName,
+	}
+
+	c, err := NewNotificationChannelClient(context.Background(), clientOpt)
+	if err != nil {
+		t.Fatal(err)
+	}
+
+	resp, err := c.GetNotificationChannelVerificationCode(context.Background(), request)
+
+	if st, ok := gstatus.FromError(err); !ok {
+		t.Errorf("got error %v, expected grpc error", err)
+	} else if c := st.Code(); c != errCode {
+		t.Errorf("got error code %q, want %q", c, errCode)
+	}
+	_ = resp
+}
+func TestNotificationChannelServiceVerifyNotificationChannel(t *testing.T) {
+	var type_ string = "type3575610"
+	var name2 string = "name2-1052831874"
+	var displayName string = "displayName1615086568"
+	var description string = "description-1724546052"
+	var expectedResponse = &monitoringpb.NotificationChannel{
+		Type:        type_,
+		Name:        name2,
+		DisplayName: displayName,
+		Description: description,
+	}
+
+	mockNotificationChannel.err = nil
+	mockNotificationChannel.reqs = nil
+
+	mockNotificationChannel.resps = append(mockNotificationChannel.resps[:0], expectedResponse)
+
+	var formattedName string = fmt.Sprintf("projects/%s/notificationChannels/%s", "[PROJECT]", "[NOTIFICATION_CHANNEL]")
+	var code string = "code3059181"
+	var request = &monitoringpb.VerifyNotificationChannelRequest{
+		Name: formattedName,
+		Code: code,
+	}
+
+	c, err := NewNotificationChannelClient(context.Background(), clientOpt)
+	if err != nil {
+		t.Fatal(err)
+	}
+
+	resp, err := c.VerifyNotificationChannel(context.Background(), request)
+
+	if err != nil {
+		t.Fatal(err)
+	}
+
+	if want, got := request, mockNotificationChannel.reqs[0]; !proto.Equal(want, got) {
+		t.Errorf("wrong request %q, want %q", got, want)
+	}
+
+	if want, got := expectedResponse, resp; !proto.Equal(want, got) {
+		t.Errorf("wrong response %q, want %q)", got, want)
+	}
+}
+
+func TestNotificationChannelServiceVerifyNotificationChannelError(t *testing.T) {
+	errCode := codes.PermissionDenied
+	mockNotificationChannel.err = gstatus.Error(errCode, "test error")
+
+	var formattedName string = fmt.Sprintf("projects/%s/notificationChannels/%s", "[PROJECT]", "[NOTIFICATION_CHANNEL]")
+	var code string = "code3059181"
+	var request = &monitoringpb.VerifyNotificationChannelRequest{
+		Name: formattedName,
+		Code: code,
+	}
+
+	c, err := NewNotificationChannelClient(context.Background(), clientOpt)
+	if err != nil {
+		t.Fatal(err)
+	}
+
+	resp, err := c.VerifyNotificationChannel(context.Background(), request)
+
+	if st, ok := gstatus.FromError(err); !ok {
+		t.Errorf("got error %v, expected grpc error", err)
+	} else if c := st.Code(); c != errCode {
+		t.Errorf("got error code %q, want %q", c, errCode)
+	}
+	_ = resp
+}
 func TestUptimeCheckServiceListUptimeCheckConfigs(t *testing.T) {
 	var nextPageToken string = ""
 	var totalSize int32 = 705419236
diff --git a/monitoring/apiv3/notification_channel_client.go b/monitoring/apiv3/notification_channel_client.go
index fa71dd1..bf1e7e9 100644
--- a/monitoring/apiv3/notification_channel_client.go
+++ b/monitoring/apiv3/notification_channel_client.go
@@ -36,13 +36,16 @@
 
 // NotificationChannelCallOptions contains the retry settings for each method of NotificationChannelClient.
 type NotificationChannelCallOptions struct {
-	ListNotificationChannelDescriptors []gax.CallOption
-	GetNotificationChannelDescriptor   []gax.CallOption
-	ListNotificationChannels           []gax.CallOption
-	GetNotificationChannel             []gax.CallOption
-	CreateNotificationChannel          []gax.CallOption
-	UpdateNotificationChannel          []gax.CallOption
-	DeleteNotificationChannel          []gax.CallOption
+	ListNotificationChannelDescriptors      []gax.CallOption
+	GetNotificationChannelDescriptor        []gax.CallOption
+	ListNotificationChannels                []gax.CallOption
+	GetNotificationChannel                  []gax.CallOption
+	CreateNotificationChannel               []gax.CallOption
+	UpdateNotificationChannel               []gax.CallOption
+	DeleteNotificationChannel               []gax.CallOption
+	SendNotificationChannelVerificationCode []gax.CallOption
+	GetNotificationChannelVerificationCode  []gax.CallOption
+	VerifyNotificationChannel               []gax.CallOption
 }
 
 func defaultNotificationChannelClientOptions() []option.ClientOption {
@@ -68,13 +71,16 @@
 		},
 	}
 	return &NotificationChannelCallOptions{
-		ListNotificationChannelDescriptors: retry[[2]string{"default", "idempotent"}],
-		GetNotificationChannelDescriptor:   retry[[2]string{"default", "idempotent"}],
-		ListNotificationChannels:           retry[[2]string{"default", "idempotent"}],
-		GetNotificationChannel:             retry[[2]string{"default", "idempotent"}],
-		CreateNotificationChannel:          retry[[2]string{"default", "non_idempotent"}],
-		UpdateNotificationChannel:          retry[[2]string{"default", "non_idempotent"}],
-		DeleteNotificationChannel:          retry[[2]string{"default", "idempotent"}],
+		ListNotificationChannelDescriptors:      retry[[2]string{"default", "idempotent"}],
+		GetNotificationChannelDescriptor:        retry[[2]string{"default", "idempotent"}],
+		ListNotificationChannels:                retry[[2]string{"default", "idempotent"}],
+		GetNotificationChannel:                  retry[[2]string{"default", "idempotent"}],
+		CreateNotificationChannel:               retry[[2]string{"default", "non_idempotent"}],
+		UpdateNotificationChannel:               retry[[2]string{"default", "non_idempotent"}],
+		DeleteNotificationChannel:               retry[[2]string{"default", "idempotent"}],
+		SendNotificationChannelVerificationCode: retry[[2]string{"default", "non_idempotent"}],
+		GetNotificationChannelVerificationCode:  retry[[2]string{"default", "idempotent"}],
+		VerifyNotificationChannel:               retry[[2]string{"default", "idempotent"}],
 	}
 }
 
@@ -301,6 +307,76 @@
 	return err
 }
 
+// SendNotificationChannelVerificationCode causes a verification code to be delivered to the channel. The code
+// can then be supplied in VerifyNotificationChannel to verify the channel.
+func (c *NotificationChannelClient) SendNotificationChannelVerificationCode(ctx context.Context, req *monitoringpb.SendNotificationChannelVerificationCodeRequest, opts ...gax.CallOption) error {
+	md := metadata.Pairs("x-goog-request-params", fmt.Sprintf("%s=%v", "name", url.QueryEscape(req.GetName())))
+	ctx = insertMetadata(ctx, c.xGoogMetadata, md)
+	opts = append(c.CallOptions.SendNotificationChannelVerificationCode[0:len(c.CallOptions.SendNotificationChannelVerificationCode):len(c.CallOptions.SendNotificationChannelVerificationCode)], opts...)
+	err := gax.Invoke(ctx, func(ctx context.Context, settings gax.CallSettings) error {
+		var err error
+		_, err = c.notificationChannelClient.SendNotificationChannelVerificationCode(ctx, req, settings.GRPC...)
+		return err
+	}, opts...)
+	return err
+}
+
+// GetNotificationChannelVerificationCode requests a verification code for an already verified channel that can then
+// be used in a call to VerifyNotificationChannel() on a different channel
+// with an equivalent identity in the same or in a different project. This
+// makes it possible to copy a channel between projects without requiring
+// manual reverification of the channel. If the channel is not in the
+// verified state, this method will fail (in other words, this may only be
+// used if the SendNotificationChannelVerificationCode and
+// VerifyNotificationChannel paths have already been used to put the given
+// channel into the verified state).
+//
+// There is no guarantee that the verification codes returned by this method
+// will be of a similar structure or form as the ones that are delivered
+// to the channel via SendNotificationChannelVerificationCode; while
+// VerifyNotificationChannel() will recognize both the codes delivered via
+// SendNotificationChannelVerificationCode() and returned from
+// GetNotificationChannelVerificationCode(), it is typically the case that
+// the verification codes delivered via
+// SendNotificationChannelVerificationCode() will be shorter and also
+// have a shorter expiration (e.g. codes such as "G-123456") whereas
+// GetVerificationCode() will typically return a much longer, websafe base
+// 64 encoded string that has a longer expiration time.
+func (c *NotificationChannelClient) GetNotificationChannelVerificationCode(ctx context.Context, req *monitoringpb.GetNotificationChannelVerificationCodeRequest, opts ...gax.CallOption) (*monitoringpb.GetNotificationChannelVerificationCodeResponse, error) {
+	md := metadata.Pairs("x-goog-request-params", fmt.Sprintf("%s=%v", "name", url.QueryEscape(req.GetName())))
+	ctx = insertMetadata(ctx, c.xGoogMetadata, md)
+	opts = append(c.CallOptions.GetNotificationChannelVerificationCode[0:len(c.CallOptions.GetNotificationChannelVerificationCode):len(c.CallOptions.GetNotificationChannelVerificationCode)], opts...)
+	var resp *monitoringpb.GetNotificationChannelVerificationCodeResponse
+	err := gax.Invoke(ctx, func(ctx context.Context, settings gax.CallSettings) error {
+		var err error
+		resp, err = c.notificationChannelClient.GetNotificationChannelVerificationCode(ctx, req, settings.GRPC...)
+		return err
+	}, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return resp, nil
+}
+
+// VerifyNotificationChannel verifies a NotificationChannel by proving receipt of the code
+// delivered to the channel as a result of calling
+// SendNotificationChannelVerificationCode.
+func (c *NotificationChannelClient) VerifyNotificationChannel(ctx context.Context, req *monitoringpb.VerifyNotificationChannelRequest, opts ...gax.CallOption) (*monitoringpb.NotificationChannel, error) {
+	md := metadata.Pairs("x-goog-request-params", fmt.Sprintf("%s=%v", "name", url.QueryEscape(req.GetName())))
+	ctx = insertMetadata(ctx, c.xGoogMetadata, md)
+	opts = append(c.CallOptions.VerifyNotificationChannel[0:len(c.CallOptions.VerifyNotificationChannel):len(c.CallOptions.VerifyNotificationChannel)], opts...)
+	var resp *monitoringpb.NotificationChannel
+	err := gax.Invoke(ctx, func(ctx context.Context, settings gax.CallSettings) error {
+		var err error
+		resp, err = c.notificationChannelClient.VerifyNotificationChannel(ctx, req, settings.GRPC...)
+		return err
+	}, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return resp, nil
+}
+
 // NotificationChannelDescriptorIterator manages a stream of *monitoringpb.NotificationChannelDescriptor.
 type NotificationChannelDescriptorIterator struct {
 	items    []*monitoringpb.NotificationChannelDescriptor
diff --git a/monitoring/apiv3/notification_channel_client_example_test.go b/monitoring/apiv3/notification_channel_client_example_test.go
index 5fb1ba1..a5a6306 100644
--- a/monitoring/apiv3/notification_channel_client_example_test.go
+++ b/monitoring/apiv3/notification_channel_client_example_test.go
@@ -169,3 +169,55 @@
 		// TODO: Handle error.
 	}
 }
+
+func ExampleNotificationChannelClient_SendNotificationChannelVerificationCode() {
+	ctx := context.Background()
+	c, err := monitoring.NewNotificationChannelClient(ctx)
+	if err != nil {
+		// TODO: Handle error.
+	}
+
+	req := &monitoringpb.SendNotificationChannelVerificationCodeRequest{
+		// TODO: Fill request struct fields.
+	}
+	err = c.SendNotificationChannelVerificationCode(ctx, req)
+	if err != nil {
+		// TODO: Handle error.
+	}
+}
+
+func ExampleNotificationChannelClient_GetNotificationChannelVerificationCode() {
+	ctx := context.Background()
+	c, err := monitoring.NewNotificationChannelClient(ctx)
+	if err != nil {
+		// TODO: Handle error.
+	}
+
+	req := &monitoringpb.GetNotificationChannelVerificationCodeRequest{
+		// TODO: Fill request struct fields.
+	}
+	resp, err := c.GetNotificationChannelVerificationCode(ctx, req)
+	if err != nil {
+		// TODO: Handle error.
+	}
+	// TODO: Use resp.
+	_ = resp
+}
+
+func ExampleNotificationChannelClient_VerifyNotificationChannel() {
+	ctx := context.Background()
+	c, err := monitoring.NewNotificationChannelClient(ctx)
+	if err != nil {
+		// TODO: Handle error.
+	}
+
+	req := &monitoringpb.VerifyNotificationChannelRequest{
+		// TODO: Fill request struct fields.
+	}
+	resp, err := c.VerifyNotificationChannel(ctx, req)
+	if err != nil {
+		// TODO: Handle error.
+	}
+	// TODO: Use resp.
+	_ = resp
+}
diff --git a/oslogin/apiv1/doc.go b/oslogin/apiv1/doc.go
index 4335dd3..70602d5 100644
--- a/oslogin/apiv1/doc.go
+++ b/oslogin/apiv1/doc.go
@@ -100,4 +100,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/oslogin/apiv1beta/doc.go b/oslogin/apiv1beta/doc.go
index d27da50..7b88a1b 100644
--- a/oslogin/apiv1beta/doc.go
+++ b/oslogin/apiv1beta/doc.go
@@ -100,4 +100,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/phishingprotection/apiv1beta1/doc.go b/phishingprotection/apiv1beta1/doc.go
index 8eb92e0..346a067 100644
--- a/phishingprotection/apiv1beta1/doc.go
+++ b/phishingprotection/apiv1beta1/doc.go
@@ -96,4 +96,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/pubsub/apiv1/doc.go b/pubsub/apiv1/doc.go
index be92fb3..eeae891 100644
--- a/pubsub/apiv1/doc.go
+++ b/pubsub/apiv1/doc.go
@@ -100,4 +100,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/recaptchaenterprise/apiv1beta1/doc.go b/recaptchaenterprise/apiv1beta1/doc.go
index 575980b..ef43722 100644
--- a/recaptchaenterprise/apiv1beta1/doc.go
+++ b/recaptchaenterprise/apiv1beta1/doc.go
@@ -96,4 +96,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/redis/apiv1/doc.go b/redis/apiv1/doc.go
index 7b6faf4..ed72a2d 100644
--- a/redis/apiv1/doc.go
+++ b/redis/apiv1/doc.go
@@ -97,4 +97,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/redis/apiv1beta1/doc.go b/redis/apiv1beta1/doc.go
index adbb08f..13f21aa 100644
--- a/redis/apiv1beta1/doc.go
+++ b/redis/apiv1beta1/doc.go
@@ -97,4 +97,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/scheduler/apiv1/doc.go b/scheduler/apiv1/doc.go
index ca8d017..64fd895 100644
--- a/scheduler/apiv1/doc.go
+++ b/scheduler/apiv1/doc.go
@@ -96,4 +96,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/scheduler/apiv1beta1/doc.go b/scheduler/apiv1beta1/doc.go
index 3896061..ab88d4c 100644
--- a/scheduler/apiv1beta1/doc.go
+++ b/scheduler/apiv1beta1/doc.go
@@ -97,4 +97,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/securitycenter/apiv1/doc.go b/securitycenter/apiv1/doc.go
index f8444ed..f9ff19d 100644
--- a/securitycenter/apiv1/doc.go
+++ b/securitycenter/apiv1/doc.go
@@ -98,4 +98,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/securitycenter/apiv1beta1/doc.go b/securitycenter/apiv1beta1/doc.go
index c816bb3..06c5cd5 100644
--- a/securitycenter/apiv1beta1/doc.go
+++ b/securitycenter/apiv1beta1/doc.go
@@ -98,4 +98,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/spanner/admin/database/apiv1/doc.go b/spanner/admin/database/apiv1/doc.go
index 8affcd7..b5de905 100644
--- a/spanner/admin/database/apiv1/doc.go
+++ b/spanner/admin/database/apiv1/doc.go
@@ -97,4 +97,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/spanner/admin/instance/apiv1/doc.go b/spanner/admin/instance/apiv1/doc.go
index 5000a08..030c935 100644
--- a/spanner/admin/instance/apiv1/doc.go
+++ b/spanner/admin/instance/apiv1/doc.go
@@ -97,4 +97,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/spanner/apiv1/doc.go b/spanner/apiv1/doc.go
index 3a4cbec..a8dd3ac 100644
--- a/spanner/apiv1/doc.go
+++ b/spanner/apiv1/doc.go
@@ -100,4 +100,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/speech/apiv1/doc.go b/speech/apiv1/doc.go
index 456c8e3..8828230 100644
--- a/speech/apiv1/doc.go
+++ b/speech/apiv1/doc.go
@@ -96,4 +96,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/speech/apiv1p1beta1/doc.go b/speech/apiv1p1beta1/doc.go
index 62b3956..83b3ad1 100644
--- a/speech/apiv1p1beta1/doc.go
+++ b/speech/apiv1p1beta1/doc.go
@@ -97,4 +97,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/talent/apiv4beta1/doc.go b/talent/apiv4beta1/doc.go
index 9ae4632..742eea5 100644
--- a/talent/apiv4beta1/doc.go
+++ b/talent/apiv4beta1/doc.go
@@ -99,4 +99,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/texttospeech/apiv1/doc.go b/texttospeech/apiv1/doc.go
index 902f62d..a2e707b 100644
--- a/texttospeech/apiv1/doc.go
+++ b/texttospeech/apiv1/doc.go
@@ -98,4 +98,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/trace/apiv1/doc.go b/trace/apiv1/doc.go
index 87231ec..292bed8 100644
--- a/trace/apiv1/doc.go
+++ b/trace/apiv1/doc.go
@@ -105,4 +105,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/trace/apiv2/doc.go b/trace/apiv2/doc.go
index b07eebf..ee046ab 100644
--- a/trace/apiv2/doc.go
+++ b/trace/apiv2/doc.go
@@ -102,4 +102,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/videointelligence/apiv1/doc.go b/videointelligence/apiv1/doc.go
index 349d639..866421f 100644
--- a/videointelligence/apiv1/doc.go
+++ b/videointelligence/apiv1/doc.go
@@ -99,4 +99,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/videointelligence/apiv1beta1/doc.go b/videointelligence/apiv1beta1/doc.go
index 4198167..34cd110 100644
--- a/videointelligence/apiv1beta1/doc.go
+++ b/videointelligence/apiv1beta1/doc.go
@@ -19,7 +19,9 @@
 //
 //   NOTE: This package is in beta. It is not stable, and may be subject to changes.
 //
-// Google Cloud Video Intelligence API.
+// Detects objects, explicit content, and scene changes in videos. It also
+// specifies the region for annotation and transcribes speech to text.
+// Supports both asynchronous API and streaming API.
 //
 // Use of Context
 //
@@ -97,4 +99,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/videointelligence/apiv1beta2/doc.go b/videointelligence/apiv1beta2/doc.go
index 368c716..aeae913 100644
--- a/videointelligence/apiv1beta2/doc.go
+++ b/videointelligence/apiv1beta2/doc.go
@@ -19,7 +19,9 @@
 //
 //   NOTE: This package is in beta. It is not stable, and may be subject to changes.
 //
-// Google Cloud Video Intelligence API.
+// Detects objects, explicit content, and scene changes in videos. It also
+// specifies the region for annotation and transcribes speech to text.
+// Supports both asynchronous API and streaming API.
 //
 // Use of Context
 //
@@ -97,4 +99,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/vision/apiv1/doc.go b/vision/apiv1/doc.go
index b97ee9f..b5368d6 100644
--- a/vision/apiv1/doc.go
+++ b/vision/apiv1/doc.go
@@ -99,4 +99,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/vision/apiv1p1beta1/doc.go b/vision/apiv1p1beta1/doc.go
index 21c0325..cfd44ab 100644
--- a/vision/apiv1p1beta1/doc.go
+++ b/vision/apiv1p1beta1/doc.go
@@ -101,4 +101,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"
diff --git a/webrisk/apiv1beta1/doc.go b/webrisk/apiv1beta1/doc.go
index 64d86de..33d5257 100644
--- a/webrisk/apiv1beta1/doc.go
+++ b/webrisk/apiv1beta1/doc.go
@@ -96,4 +96,4 @@
 	return "UNKNOWN"
 }
 
-const versionClient = "20190716"
+const versionClient = "20190801"