diff --git a/googleapis/analytics/data/v1alpha/analytics_data_api.pb.go b/googleapis/analytics/data/v1alpha/analytics_data_api.pb.go index 9543f25916..60228afd06 100644 --- a/googleapis/analytics/data/v1alpha/analytics_data_api.pb.go +++ b/googleapis/analytics/data/v1alpha/analytics_data_api.pb.go @@ -45,73 +45,6 @@ const ( // of the legacy proto package is being used. const _ = proto.ProtoPackageIsVersion4 -// The dimensions and metrics currently accepted in reporting methods. -type Metadata struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Resource name of this metadata. - Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` - // The dimensions descriptions. - Dimensions []*DimensionMetadata `protobuf:"bytes,1,rep,name=dimensions,proto3" json:"dimensions,omitempty"` - // The metric descriptions. - Metrics []*MetricMetadata `protobuf:"bytes,2,rep,name=metrics,proto3" json:"metrics,omitempty"` -} - -func (x *Metadata) Reset() { - *x = Metadata{} - if protoimpl.UnsafeEnabled { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Metadata) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Metadata) ProtoMessage() {} - -func (x *Metadata) ProtoReflect() protoreflect.Message { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Metadata.ProtoReflect.Descriptor instead. -func (*Metadata) Descriptor() ([]byte, []int) { - return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{0} -} - -func (x *Metadata) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *Metadata) GetDimensions() []*DimensionMetadata { - if x != nil { - return x.Dimensions - } - return nil -} - -func (x *Metadata) GetMetrics() []*MetricMetadata { - if x != nil { - return x.Metrics - } - return nil -} - // The request to generate a report. type RunReportRequest struct { state protoimpl.MessageState @@ -166,7 +99,7 @@ type RunReportRequest struct { func (x *RunReportRequest) Reset() { *x = RunReportRequest{} if protoimpl.UnsafeEnabled { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[1] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -179,7 +112,7 @@ func (x *RunReportRequest) String() string { func (*RunReportRequest) ProtoMessage() {} func (x *RunReportRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[1] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[0] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -192,7 +125,7 @@ func (x *RunReportRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RunReportRequest.ProtoReflect.Descriptor instead. func (*RunReportRequest) Descriptor() ([]byte, []int) { - return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{1} + return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{0} } func (x *RunReportRequest) GetEntity() *Entity { @@ -313,6 +246,11 @@ type RunReportResponse struct { Maximums []*Row `protobuf:"bytes,9,rep,name=maximums,proto3" json:"maximums,omitempty"` // If requested, the minimum values of metrics. Minimums []*Row `protobuf:"bytes,10,rep,name=minimums,proto3" json:"minimums,omitempty"` + // The total number of rows in the query result, regardless of the number of + // rows returned in the response. For example if a query returns 175 rows and + // includes limit = 50 in the API request, the response will contain row_count + // = 175 but only 50 rows. + RowCount int32 `protobuf:"varint,12,opt,name=row_count,json=rowCount,proto3" json:"row_count,omitempty"` // Metadata for the report. Metadata *ResponseMetaData `protobuf:"bytes,6,opt,name=metadata,proto3" json:"metadata,omitempty"` // This Analytics Property's quota state including this request. @@ -322,7 +260,7 @@ type RunReportResponse struct { func (x *RunReportResponse) Reset() { *x = RunReportResponse{} if protoimpl.UnsafeEnabled { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[2] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -335,7 +273,7 @@ func (x *RunReportResponse) String() string { func (*RunReportResponse) ProtoMessage() {} func (x *RunReportResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[2] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -348,7 +286,7 @@ func (x *RunReportResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use RunReportResponse.ProtoReflect.Descriptor instead. func (*RunReportResponse) Descriptor() ([]byte, []int) { - return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{2} + return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{1} } func (x *RunReportResponse) GetDimensionHeaders() []*DimensionHeader { @@ -393,6 +331,13 @@ func (x *RunReportResponse) GetMinimums() []*Row { return nil } +func (x *RunReportResponse) GetRowCount() int32 { + if x != nil { + return x.RowCount + } + return 0 +} + func (x *RunReportResponse) GetMetadata() *ResponseMetaData { if x != nil { return x.Metadata @@ -459,7 +404,7 @@ type RunPivotReportRequest struct { func (x *RunPivotReportRequest) Reset() { *x = RunPivotReportRequest{} if protoimpl.UnsafeEnabled { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[3] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -472,7 +417,7 @@ func (x *RunPivotReportRequest) String() string { func (*RunPivotReportRequest) ProtoMessage() {} func (x *RunPivotReportRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[3] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -485,7 +430,7 @@ func (x *RunPivotReportRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RunPivotReportRequest.ProtoReflect.Descriptor instead. func (*RunPivotReportRequest) Descriptor() ([]byte, []int) { - return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{3} + return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{2} } func (x *RunPivotReportRequest) GetEntity() *Entity { @@ -630,7 +575,7 @@ type RunPivotReportResponse struct { func (x *RunPivotReportResponse) Reset() { *x = RunPivotReportResponse{} if protoimpl.UnsafeEnabled { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[4] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -643,7 +588,7 @@ func (x *RunPivotReportResponse) String() string { func (*RunPivotReportResponse) ProtoMessage() {} func (x *RunPivotReportResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[4] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -656,7 +601,7 @@ func (x *RunPivotReportResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use RunPivotReportResponse.ProtoReflect.Descriptor instead. func (*RunPivotReportResponse) Descriptor() ([]byte, []int) { - return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{4} + return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{3} } func (x *RunPivotReportResponse) GetPivotHeaders() []*PivotHeader { @@ -726,7 +671,7 @@ type BatchRunReportsRequest struct { func (x *BatchRunReportsRequest) Reset() { *x = BatchRunReportsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[5] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -739,7 +684,7 @@ func (x *BatchRunReportsRequest) String() string { func (*BatchRunReportsRequest) ProtoMessage() {} func (x *BatchRunReportsRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[5] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -752,7 +697,7 @@ func (x *BatchRunReportsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use BatchRunReportsRequest.ProtoReflect.Descriptor instead. func (*BatchRunReportsRequest) Descriptor() ([]byte, []int) { - return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{5} + return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{4} } func (x *BatchRunReportsRequest) GetEntity() *Entity { @@ -782,7 +727,7 @@ type BatchRunReportsResponse struct { func (x *BatchRunReportsResponse) Reset() { *x = BatchRunReportsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[6] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -795,7 +740,7 @@ func (x *BatchRunReportsResponse) String() string { func (*BatchRunReportsResponse) ProtoMessage() {} func (x *BatchRunReportsResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[6] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -808,7 +753,7 @@ func (x *BatchRunReportsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use BatchRunReportsResponse.ProtoReflect.Descriptor instead. func (*BatchRunReportsResponse) Descriptor() ([]byte, []int) { - return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{6} + return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{5} } func (x *BatchRunReportsResponse) GetReports() []*RunReportResponse { @@ -836,7 +781,7 @@ type BatchRunPivotReportsRequest struct { func (x *BatchRunPivotReportsRequest) Reset() { *x = BatchRunPivotReportsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[7] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -849,7 +794,7 @@ func (x *BatchRunPivotReportsRequest) String() string { func (*BatchRunPivotReportsRequest) ProtoMessage() {} func (x *BatchRunPivotReportsRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[7] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -862,7 +807,7 @@ func (x *BatchRunPivotReportsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use BatchRunPivotReportsRequest.ProtoReflect.Descriptor instead. func (*BatchRunPivotReportsRequest) Descriptor() ([]byte, []int) { - return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{7} + return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{6} } func (x *BatchRunPivotReportsRequest) GetEntity() *Entity { @@ -892,7 +837,7 @@ type BatchRunPivotReportsResponse struct { func (x *BatchRunPivotReportsResponse) Reset() { *x = BatchRunPivotReportsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[8] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -905,7 +850,7 @@ func (x *BatchRunPivotReportsResponse) String() string { func (*BatchRunPivotReportsResponse) ProtoMessage() {} func (x *BatchRunPivotReportsResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[8] + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -918,7 +863,7 @@ func (x *BatchRunPivotReportsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use BatchRunPivotReportsResponse.ProtoReflect.Descriptor instead. func (*BatchRunPivotReportsResponse) Descriptor() ([]byte, []int) { - return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{8} + return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{7} } func (x *BatchRunPivotReportsResponse) GetPivotReports() []*RunPivotReportResponse { @@ -928,21 +873,59 @@ func (x *BatchRunPivotReportsResponse) GetPivotReports() []*RunPivotReportRespon return nil } -// Request for dimension and metric metadata. -type GetMetadataRequest struct { +// Request for the universal dimension and metric metadata. +type GetUniversalMetadataRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields +} - // Required. The name of the metadata to retrieve. Either has the form - // 'metadata' or 'properties/{property}/metadata'. This name field is - // specified in the URL path and not URL parameters. Property is a numeric - // Google Analytics App + Web Property Id. - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` +func (x *GetUniversalMetadataRequest) Reset() { + *x = GetUniversalMetadataRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetUniversalMetadataRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetUniversalMetadataRequest) ProtoMessage() {} + +func (x *GetUniversalMetadataRequest) ProtoReflect() protoreflect.Message { + mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetUniversalMetadataRequest.ProtoReflect.Descriptor instead. +func (*GetUniversalMetadataRequest) Descriptor() ([]byte, []int) { + return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{8} +} + +// The dimensions and metrics currently accepted in reporting methods. +type UniversalMetadata struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // The dimensions descriptions. + Dimensions []*DimensionMetadata `protobuf:"bytes,1,rep,name=dimensions,proto3" json:"dimensions,omitempty"` + // The metric descriptions. + Metrics []*MetricMetadata `protobuf:"bytes,2,rep,name=metrics,proto3" json:"metrics,omitempty"` } -func (x *GetMetadataRequest) Reset() { - *x = GetMetadataRequest{} +func (x *UniversalMetadata) Reset() { + *x = UniversalMetadata{} if protoimpl.UnsafeEnabled { mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -950,13 +933,13 @@ func (x *GetMetadataRequest) Reset() { } } -func (x *GetMetadataRequest) String() string { +func (x *UniversalMetadata) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetMetadataRequest) ProtoMessage() {} +func (*UniversalMetadata) ProtoMessage() {} -func (x *GetMetadataRequest) ProtoReflect() protoreflect.Message { +func (x *UniversalMetadata) ProtoReflect() protoreflect.Message { mi := &file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -968,16 +951,23 @@ func (x *GetMetadataRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetMetadataRequest.ProtoReflect.Descriptor instead. -func (*GetMetadataRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use UniversalMetadata.ProtoReflect.Descriptor instead. +func (*UniversalMetadata) Descriptor() ([]byte, []int) { return file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP(), []int{9} } -func (x *GetMetadataRequest) GetName() string { +func (x *UniversalMetadata) GetDimensions() []*DimensionMetadata { if x != nil { - return x.Name + return x.Dimensions } - return "" + return nil +} + +func (x *UniversalMetadata) GetMetrics() []*MetricMetadata { + if x != nil { + return x.Metrics + } + return nil } var File_google_analytics_data_v1alpha_analytics_data_api_proto protoreflect.FileDescriptor @@ -996,109 +986,92 @@ var file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDesc = []byte 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, - 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x8f, 0x02, 0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x50, 0x0a, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, - 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x6d, 0x65, 0x6e, 0x73, - 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x64, 0x69, 0x6d, - 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x47, 0x0a, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, - 0x63, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xfc, 0x06, 0x0a, 0x10, 0x52, 0x75, + 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, + 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, + 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x45, + 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x48, 0x0a, + 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, + 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x2e, 0x44, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x64, 0x69, 0x6d, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3f, 0x0a, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, - 0x3a, 0x54, 0xea, 0x41, 0x51, 0x0a, 0x25, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, - 0x64, 0x61, 0x74, 0x61, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x08, 0x6d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, - 0x65, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x7d, 0x2f, 0x6d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0xfc, 0x06, 0x0a, 0x10, 0x52, 0x75, 0x6e, 0x52, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x45, 0x6e, 0x74, 0x69, - 0x74, 0x79, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x48, 0x0a, 0x0a, 0x64, 0x69, - 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x52, + 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x49, 0x0a, 0x0b, 0x64, 0x61, 0x74, 0x65, + 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x61, + 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x65, 0x52, 0x61, 0x6e, + 0x67, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, + 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, + 0x74, 0x12, 0x61, 0x0a, 0x13, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x61, 0x67, 0x67, 0x72, + 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, - 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, - 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, - 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3f, 0x0a, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, - 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x52, 0x07, 0x6d, 0x65, - 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x49, 0x0a, 0x0b, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x72, 0x61, - 0x6e, 0x67, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x61, 0x74, 0x65, 0x52, - 0x61, 0x6e, 0x67, 0x65, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, - 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, - 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x61, - 0x0a, 0x13, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x72, - 0x69, 0x63, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x6d, + 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x12, 0x5a, 0x0a, 0x10, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x66, - 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, - 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x46, 0x69, 0x6c, 0x74, - 0x65, 0x72, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x64, 0x69, - 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x54, 0x0a, - 0x0d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, - 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x78, 0x70, 0x72, 0x65, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x46, 0x69, 0x6c, - 0x74, 0x65, 0x72, 0x12, 0x43, 0x0a, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x73, - 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x52, 0x08, - 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x75, 0x72, 0x72, - 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x4a, 0x0a, - 0x0b, 0x63, 0x6f, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x0c, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, - 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x2e, 0x43, 0x6f, 0x68, 0x6f, 0x72, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x0a, 0x63, - 0x6f, 0x68, 0x6f, 0x72, 0x74, 0x53, 0x70, 0x65, 0x63, 0x12, 0x26, 0x0a, 0x0f, 0x6b, 0x65, 0x65, - 0x70, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x5f, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x0d, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0d, 0x6b, 0x65, 0x65, 0x70, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x6f, 0x77, - 0x73, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x70, - 0x65, 0x72, 0x74, 0x79, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x13, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, - 0x51, 0x75, 0x6f, 0x74, 0x61, 0x22, 0xda, 0x04, 0x0a, 0x11, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, - 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5b, 0x0a, 0x11, 0x64, - 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, - 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, - 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x10, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, - 0x6e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x52, 0x0a, 0x0e, 0x6d, 0x65, 0x74, 0x72, - 0x69, 0x63, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, - 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x0d, 0x6d, - 0x65, 0x74, 0x72, 0x69, 0x63, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x36, 0x0a, 0x04, - 0x72, 0x6f, 0x77, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x04, - 0x72, 0x6f, 0x77, 0x73, 0x12, 0x3a, 0x0a, 0x06, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x73, 0x18, 0x08, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, - 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x06, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x73, - 0x12, 0x3e, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x73, 0x18, 0x09, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, - 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x73, - 0x12, 0x3e, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x73, 0x18, 0x0a, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, - 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x73, + 0x52, 0x12, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x5a, 0x0a, 0x10, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, + 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x46, + 0x69, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, + 0x0f, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, + 0x12, 0x54, 0x0a, 0x0d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, + 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x78, + 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x43, 0x0a, 0x09, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, + 0x62, 0x79, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x42, + 0x79, 0x52, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, + 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x64, 0x65, + 0x12, 0x4a, 0x0a, 0x0b, 0x63, 0x6f, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, + 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x43, 0x6f, 0x68, 0x6f, 0x72, 0x74, 0x53, 0x70, 0x65, 0x63, + 0x52, 0x0a, 0x63, 0x6f, 0x68, 0x6f, 0x72, 0x74, 0x53, 0x70, 0x65, 0x63, 0x12, 0x26, 0x0a, 0x0f, + 0x6b, 0x65, 0x65, 0x70, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x5f, 0x72, 0x6f, 0x77, 0x73, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6b, 0x65, 0x65, 0x70, 0x45, 0x6d, 0x70, 0x74, 0x79, + 0x52, 0x6f, 0x77, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x5f, 0x70, + 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x0e, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x13, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, + 0x72, 0x74, 0x79, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x22, 0xf7, 0x04, 0x0a, 0x11, 0x52, 0x75, 0x6e, + 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5b, + 0x0a, 0x11, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x65, 0x61, 0x64, + 0x65, 0x72, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x6d, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x10, 0x64, 0x69, 0x6d, 0x65, 0x6e, + 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x52, 0x0a, 0x0e, 0x6d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, + 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, + 0x52, 0x0d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, + 0x36, 0x0a, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x6f, + 0x77, 0x52, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x12, 0x3a, 0x0a, 0x06, 0x74, 0x6f, 0x74, 0x61, 0x6c, + 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x06, 0x74, 0x6f, 0x74, + 0x61, 0x6c, 0x73, 0x12, 0x3e, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x73, 0x18, + 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, + 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x69, 0x6d, + 0x75, 0x6d, 0x73, 0x12, 0x3e, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x73, 0x18, + 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, + 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x69, 0x6d, + 0x75, 0x6d, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x6f, 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x4b, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, @@ -1227,84 +1200,90 @@ var file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDesc = []byte 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0c, 0x70, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, - 0x6f, 0x72, 0x74, 0x73, 0x22, 0x57, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, - 0x0a, 0x25, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x64, 0x61, 0x74, 0x61, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x32, 0xea, 0x07, - 0x0a, 0x12, 0x41, 0x6c, 0x70, 0x68, 0x61, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, - 0x44, 0x61, 0x74, 0x61, 0x12, 0x8d, 0x01, 0x0a, 0x09, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, - 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, - 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x17, 0x22, 0x12, 0x2f, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x3a, 0x72, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x3a, 0x01, 0x2a, 0x12, 0xa1, 0x01, 0x0a, 0x0e, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, - 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, - 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, + 0x6f, 0x72, 0x74, 0x73, 0x22, 0x1d, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x55, 0x6e, 0x69, 0x76, 0x65, + 0x72, 0x73, 0x61, 0x6c, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x22, 0xae, 0x01, 0x0a, 0x11, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x61, + 0x6c, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x50, 0x0a, 0x0a, 0x64, 0x69, 0x6d, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, - 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x75, - 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x22, 0x17, 0x2f, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x3a, 0x72, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, - 0x65, 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x01, 0x2a, 0x12, 0xa5, 0x01, 0x0a, 0x0f, 0x42, 0x61, 0x74, - 0x63, 0x68, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x35, 0x2e, 0x67, + 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, + 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, + 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x47, 0x0a, 0x07, 0x6d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, - 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x42, 0x61, 0x74, - 0x63, 0x68, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x4d, 0x65, 0x74, + 0x72, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x65, 0x74, + 0x72, 0x69, 0x63, 0x73, 0x32, 0xd7, 0x07, 0x0a, 0x12, 0x41, 0x6c, 0x70, 0x68, 0x61, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0x8d, 0x01, 0x0a, 0x09, + 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1d, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x17, 0x22, 0x12, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x3a, 0x72, + 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x01, 0x2a, 0x12, 0xa1, 0x01, 0x0a, 0x0e, + 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x34, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, + 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, + 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, + 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x1c, 0x22, 0x17, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x3a, 0x72, 0x75, + 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x01, 0x2a, 0x12, + 0xa5, 0x01, 0x0a, 0x0f, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x73, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x23, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x1d, 0x22, 0x18, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x3a, 0x62, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x3a, 0x01, 0x2a, - 0x12, 0xb9, 0x01, 0x0a, 0x14, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, - 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, - 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, - 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, - 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6e, 0x50, 0x69, - 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x22, 0x1d, 0x2f, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, - 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x3a, 0x01, 0x2a, 0x12, 0xbb, 0x01, 0x0a, - 0x0b, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x31, 0x2e, 0x67, + 0x72, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, + 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x23, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x22, 0x18, 0x2f, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x73, 0x3a, 0x01, 0x2a, 0x12, 0xb9, 0x01, 0x0a, 0x14, 0x42, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, + 0x12, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, + 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, + 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x42, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x28, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x22, 0x22, 0x1d, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x3a, 0x62, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, + 0x3a, 0x01, 0x2a, 0x12, 0xa8, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x55, 0x6e, 0x69, 0x76, 0x65, + 0x72, 0x73, 0x61, 0x6c, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x47, 0x65, 0x74, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, - 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x50, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x43, - 0x12, 0x18, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, - 0x3d, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x7d, 0x5a, 0x27, 0x12, 0x25, 0x2f, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, - 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x7e, 0xca, 0x41, 0x1c, 0x61, - 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x5c, 0x68, 0x74, - 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x61, 0x6e, - 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, - 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, - 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, - 0x73, 0x2e, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x42, 0x7f, 0x0a, 0x21, 0x63, 0x6f, - 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, - 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x42, - 0x15, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x44, 0x61, 0x74, 0x61, 0x41, 0x70, - 0x69, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x41, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, - 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x3b, 0x64, 0x61, 0x74, 0x61, 0x62, 0x06, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x33, + 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x61, 0x6c, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, + 0x61, 0x6c, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x1c, 0x12, 0x1a, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2f, 0x75, 0x6e, 0x69, + 0x76, 0x65, 0x72, 0x73, 0x61, 0x6c, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x7e, + 0xca, 0x41, 0x1c, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x64, 0x61, 0x74, 0x61, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, + 0x41, 0x5c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, + 0x68, 0x2f, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2c, 0x68, 0x74, 0x74, 0x70, + 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, + 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x61, 0x6e, 0x61, 0x6c, + 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x42, 0x7f, + 0x0a, 0x21, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, + 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x42, 0x15, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x44, 0x61, + 0x74, 0x61, 0x41, 0x70, 0x69, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x41, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, + 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, + 0x70, 0x69, 0x73, 0x2f, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2f, 0x64, 0x61, + 0x74, 0x61, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x3b, 0x64, 0x61, 0x74, 0x61, 0x62, + 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -1321,85 +1300,85 @@ func file_google_analytics_data_v1alpha_analytics_data_api_proto_rawDescGZIP() [ var file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes = make([]protoimpl.MessageInfo, 10) var file_google_analytics_data_v1alpha_analytics_data_api_proto_goTypes = []interface{}{ - (*Metadata)(nil), // 0: google.analytics.data.v1alpha.Metadata - (*RunReportRequest)(nil), // 1: google.analytics.data.v1alpha.RunReportRequest - (*RunReportResponse)(nil), // 2: google.analytics.data.v1alpha.RunReportResponse - (*RunPivotReportRequest)(nil), // 3: google.analytics.data.v1alpha.RunPivotReportRequest - (*RunPivotReportResponse)(nil), // 4: google.analytics.data.v1alpha.RunPivotReportResponse - (*BatchRunReportsRequest)(nil), // 5: google.analytics.data.v1alpha.BatchRunReportsRequest - (*BatchRunReportsResponse)(nil), // 6: google.analytics.data.v1alpha.BatchRunReportsResponse - (*BatchRunPivotReportsRequest)(nil), // 7: google.analytics.data.v1alpha.BatchRunPivotReportsRequest - (*BatchRunPivotReportsResponse)(nil), // 8: google.analytics.data.v1alpha.BatchRunPivotReportsResponse - (*GetMetadataRequest)(nil), // 9: google.analytics.data.v1alpha.GetMetadataRequest - (*DimensionMetadata)(nil), // 10: google.analytics.data.v1alpha.DimensionMetadata - (*MetricMetadata)(nil), // 11: google.analytics.data.v1alpha.MetricMetadata - (*Entity)(nil), // 12: google.analytics.data.v1alpha.Entity - (*Dimension)(nil), // 13: google.analytics.data.v1alpha.Dimension - (*Metric)(nil), // 14: google.analytics.data.v1alpha.Metric - (*DateRange)(nil), // 15: google.analytics.data.v1alpha.DateRange - (MetricAggregation)(0), // 16: google.analytics.data.v1alpha.MetricAggregation - (*FilterExpression)(nil), // 17: google.analytics.data.v1alpha.FilterExpression - (*OrderBy)(nil), // 18: google.analytics.data.v1alpha.OrderBy - (*CohortSpec)(nil), // 19: google.analytics.data.v1alpha.CohortSpec - (*DimensionHeader)(nil), // 20: google.analytics.data.v1alpha.DimensionHeader - (*MetricHeader)(nil), // 21: google.analytics.data.v1alpha.MetricHeader - (*Row)(nil), // 22: google.analytics.data.v1alpha.Row - (*ResponseMetaData)(nil), // 23: google.analytics.data.v1alpha.ResponseMetaData - (*PropertyQuota)(nil), // 24: google.analytics.data.v1alpha.PropertyQuota - (*Pivot)(nil), // 25: google.analytics.data.v1alpha.Pivot - (*PivotHeader)(nil), // 26: google.analytics.data.v1alpha.PivotHeader + (*RunReportRequest)(nil), // 0: google.analytics.data.v1alpha.RunReportRequest + (*RunReportResponse)(nil), // 1: google.analytics.data.v1alpha.RunReportResponse + (*RunPivotReportRequest)(nil), // 2: google.analytics.data.v1alpha.RunPivotReportRequest + (*RunPivotReportResponse)(nil), // 3: google.analytics.data.v1alpha.RunPivotReportResponse + (*BatchRunReportsRequest)(nil), // 4: google.analytics.data.v1alpha.BatchRunReportsRequest + (*BatchRunReportsResponse)(nil), // 5: google.analytics.data.v1alpha.BatchRunReportsResponse + (*BatchRunPivotReportsRequest)(nil), // 6: google.analytics.data.v1alpha.BatchRunPivotReportsRequest + (*BatchRunPivotReportsResponse)(nil), // 7: google.analytics.data.v1alpha.BatchRunPivotReportsResponse + (*GetUniversalMetadataRequest)(nil), // 8: google.analytics.data.v1alpha.GetUniversalMetadataRequest + (*UniversalMetadata)(nil), // 9: google.analytics.data.v1alpha.UniversalMetadata + (*Entity)(nil), // 10: google.analytics.data.v1alpha.Entity + (*Dimension)(nil), // 11: google.analytics.data.v1alpha.Dimension + (*Metric)(nil), // 12: google.analytics.data.v1alpha.Metric + (*DateRange)(nil), // 13: google.analytics.data.v1alpha.DateRange + (MetricAggregation)(0), // 14: google.analytics.data.v1alpha.MetricAggregation + (*FilterExpression)(nil), // 15: google.analytics.data.v1alpha.FilterExpression + (*OrderBy)(nil), // 16: google.analytics.data.v1alpha.OrderBy + (*CohortSpec)(nil), // 17: google.analytics.data.v1alpha.CohortSpec + (*DimensionHeader)(nil), // 18: google.analytics.data.v1alpha.DimensionHeader + (*MetricHeader)(nil), // 19: google.analytics.data.v1alpha.MetricHeader + (*Row)(nil), // 20: google.analytics.data.v1alpha.Row + (*ResponseMetaData)(nil), // 21: google.analytics.data.v1alpha.ResponseMetaData + (*PropertyQuota)(nil), // 22: google.analytics.data.v1alpha.PropertyQuota + (*Pivot)(nil), // 23: google.analytics.data.v1alpha.Pivot + (*PivotHeader)(nil), // 24: google.analytics.data.v1alpha.PivotHeader + (*DimensionMetadata)(nil), // 25: google.analytics.data.v1alpha.DimensionMetadata + (*MetricMetadata)(nil), // 26: google.analytics.data.v1alpha.MetricMetadata } var file_google_analytics_data_v1alpha_analytics_data_api_proto_depIdxs = []int32{ - 10, // 0: google.analytics.data.v1alpha.Metadata.dimensions:type_name -> google.analytics.data.v1alpha.DimensionMetadata - 11, // 1: google.analytics.data.v1alpha.Metadata.metrics:type_name -> google.analytics.data.v1alpha.MetricMetadata - 12, // 2: google.analytics.data.v1alpha.RunReportRequest.entity:type_name -> google.analytics.data.v1alpha.Entity - 13, // 3: google.analytics.data.v1alpha.RunReportRequest.dimensions:type_name -> google.analytics.data.v1alpha.Dimension - 14, // 4: google.analytics.data.v1alpha.RunReportRequest.metrics:type_name -> google.analytics.data.v1alpha.Metric - 15, // 5: google.analytics.data.v1alpha.RunReportRequest.date_ranges:type_name -> google.analytics.data.v1alpha.DateRange - 16, // 6: google.analytics.data.v1alpha.RunReportRequest.metric_aggregations:type_name -> google.analytics.data.v1alpha.MetricAggregation - 17, // 7: google.analytics.data.v1alpha.RunReportRequest.dimension_filter:type_name -> google.analytics.data.v1alpha.FilterExpression - 17, // 8: google.analytics.data.v1alpha.RunReportRequest.metric_filter:type_name -> google.analytics.data.v1alpha.FilterExpression - 18, // 9: google.analytics.data.v1alpha.RunReportRequest.order_bys:type_name -> google.analytics.data.v1alpha.OrderBy - 19, // 10: google.analytics.data.v1alpha.RunReportRequest.cohort_spec:type_name -> google.analytics.data.v1alpha.CohortSpec - 20, // 11: google.analytics.data.v1alpha.RunReportResponse.dimension_headers:type_name -> google.analytics.data.v1alpha.DimensionHeader - 21, // 12: google.analytics.data.v1alpha.RunReportResponse.metric_headers:type_name -> google.analytics.data.v1alpha.MetricHeader - 22, // 13: google.analytics.data.v1alpha.RunReportResponse.rows:type_name -> google.analytics.data.v1alpha.Row - 22, // 14: google.analytics.data.v1alpha.RunReportResponse.totals:type_name -> google.analytics.data.v1alpha.Row - 22, // 15: google.analytics.data.v1alpha.RunReportResponse.maximums:type_name -> google.analytics.data.v1alpha.Row - 22, // 16: google.analytics.data.v1alpha.RunReportResponse.minimums:type_name -> google.analytics.data.v1alpha.Row - 23, // 17: google.analytics.data.v1alpha.RunReportResponse.metadata:type_name -> google.analytics.data.v1alpha.ResponseMetaData - 24, // 18: google.analytics.data.v1alpha.RunReportResponse.property_quota:type_name -> google.analytics.data.v1alpha.PropertyQuota - 12, // 19: google.analytics.data.v1alpha.RunPivotReportRequest.entity:type_name -> google.analytics.data.v1alpha.Entity - 13, // 20: google.analytics.data.v1alpha.RunPivotReportRequest.dimensions:type_name -> google.analytics.data.v1alpha.Dimension - 14, // 21: google.analytics.data.v1alpha.RunPivotReportRequest.metrics:type_name -> google.analytics.data.v1alpha.Metric - 17, // 22: google.analytics.data.v1alpha.RunPivotReportRequest.dimension_filter:type_name -> google.analytics.data.v1alpha.FilterExpression - 17, // 23: google.analytics.data.v1alpha.RunPivotReportRequest.metric_filter:type_name -> google.analytics.data.v1alpha.FilterExpression - 25, // 24: google.analytics.data.v1alpha.RunPivotReportRequest.pivots:type_name -> google.analytics.data.v1alpha.Pivot - 15, // 25: google.analytics.data.v1alpha.RunPivotReportRequest.date_ranges:type_name -> google.analytics.data.v1alpha.DateRange - 19, // 26: google.analytics.data.v1alpha.RunPivotReportRequest.cohort_spec:type_name -> google.analytics.data.v1alpha.CohortSpec - 26, // 27: google.analytics.data.v1alpha.RunPivotReportResponse.pivot_headers:type_name -> google.analytics.data.v1alpha.PivotHeader - 20, // 28: google.analytics.data.v1alpha.RunPivotReportResponse.dimension_headers:type_name -> google.analytics.data.v1alpha.DimensionHeader - 21, // 29: google.analytics.data.v1alpha.RunPivotReportResponse.metric_headers:type_name -> google.analytics.data.v1alpha.MetricHeader - 22, // 30: google.analytics.data.v1alpha.RunPivotReportResponse.rows:type_name -> google.analytics.data.v1alpha.Row - 22, // 31: google.analytics.data.v1alpha.RunPivotReportResponse.aggregates:type_name -> google.analytics.data.v1alpha.Row - 23, // 32: google.analytics.data.v1alpha.RunPivotReportResponse.metadata:type_name -> google.analytics.data.v1alpha.ResponseMetaData - 24, // 33: google.analytics.data.v1alpha.RunPivotReportResponse.property_quota:type_name -> google.analytics.data.v1alpha.PropertyQuota - 12, // 34: google.analytics.data.v1alpha.BatchRunReportsRequest.entity:type_name -> google.analytics.data.v1alpha.Entity - 1, // 35: google.analytics.data.v1alpha.BatchRunReportsRequest.requests:type_name -> google.analytics.data.v1alpha.RunReportRequest - 2, // 36: google.analytics.data.v1alpha.BatchRunReportsResponse.reports:type_name -> google.analytics.data.v1alpha.RunReportResponse - 12, // 37: google.analytics.data.v1alpha.BatchRunPivotReportsRequest.entity:type_name -> google.analytics.data.v1alpha.Entity - 3, // 38: google.analytics.data.v1alpha.BatchRunPivotReportsRequest.requests:type_name -> google.analytics.data.v1alpha.RunPivotReportRequest - 4, // 39: google.analytics.data.v1alpha.BatchRunPivotReportsResponse.pivot_reports:type_name -> google.analytics.data.v1alpha.RunPivotReportResponse - 1, // 40: google.analytics.data.v1alpha.AlphaAnalyticsData.RunReport:input_type -> google.analytics.data.v1alpha.RunReportRequest - 3, // 41: google.analytics.data.v1alpha.AlphaAnalyticsData.RunPivotReport:input_type -> google.analytics.data.v1alpha.RunPivotReportRequest - 5, // 42: google.analytics.data.v1alpha.AlphaAnalyticsData.BatchRunReports:input_type -> google.analytics.data.v1alpha.BatchRunReportsRequest - 7, // 43: google.analytics.data.v1alpha.AlphaAnalyticsData.BatchRunPivotReports:input_type -> google.analytics.data.v1alpha.BatchRunPivotReportsRequest - 9, // 44: google.analytics.data.v1alpha.AlphaAnalyticsData.GetMetadata:input_type -> google.analytics.data.v1alpha.GetMetadataRequest - 2, // 45: google.analytics.data.v1alpha.AlphaAnalyticsData.RunReport:output_type -> google.analytics.data.v1alpha.RunReportResponse - 4, // 46: google.analytics.data.v1alpha.AlphaAnalyticsData.RunPivotReport:output_type -> google.analytics.data.v1alpha.RunPivotReportResponse - 6, // 47: google.analytics.data.v1alpha.AlphaAnalyticsData.BatchRunReports:output_type -> google.analytics.data.v1alpha.BatchRunReportsResponse - 8, // 48: google.analytics.data.v1alpha.AlphaAnalyticsData.BatchRunPivotReports:output_type -> google.analytics.data.v1alpha.BatchRunPivotReportsResponse - 0, // 49: google.analytics.data.v1alpha.AlphaAnalyticsData.GetMetadata:output_type -> google.analytics.data.v1alpha.Metadata + 10, // 0: google.analytics.data.v1alpha.RunReportRequest.entity:type_name -> google.analytics.data.v1alpha.Entity + 11, // 1: google.analytics.data.v1alpha.RunReportRequest.dimensions:type_name -> google.analytics.data.v1alpha.Dimension + 12, // 2: google.analytics.data.v1alpha.RunReportRequest.metrics:type_name -> google.analytics.data.v1alpha.Metric + 13, // 3: google.analytics.data.v1alpha.RunReportRequest.date_ranges:type_name -> google.analytics.data.v1alpha.DateRange + 14, // 4: google.analytics.data.v1alpha.RunReportRequest.metric_aggregations:type_name -> google.analytics.data.v1alpha.MetricAggregation + 15, // 5: google.analytics.data.v1alpha.RunReportRequest.dimension_filter:type_name -> google.analytics.data.v1alpha.FilterExpression + 15, // 6: google.analytics.data.v1alpha.RunReportRequest.metric_filter:type_name -> google.analytics.data.v1alpha.FilterExpression + 16, // 7: google.analytics.data.v1alpha.RunReportRequest.order_bys:type_name -> google.analytics.data.v1alpha.OrderBy + 17, // 8: google.analytics.data.v1alpha.RunReportRequest.cohort_spec:type_name -> google.analytics.data.v1alpha.CohortSpec + 18, // 9: google.analytics.data.v1alpha.RunReportResponse.dimension_headers:type_name -> google.analytics.data.v1alpha.DimensionHeader + 19, // 10: google.analytics.data.v1alpha.RunReportResponse.metric_headers:type_name -> google.analytics.data.v1alpha.MetricHeader + 20, // 11: google.analytics.data.v1alpha.RunReportResponse.rows:type_name -> google.analytics.data.v1alpha.Row + 20, // 12: google.analytics.data.v1alpha.RunReportResponse.totals:type_name -> google.analytics.data.v1alpha.Row + 20, // 13: google.analytics.data.v1alpha.RunReportResponse.maximums:type_name -> google.analytics.data.v1alpha.Row + 20, // 14: google.analytics.data.v1alpha.RunReportResponse.minimums:type_name -> google.analytics.data.v1alpha.Row + 21, // 15: google.analytics.data.v1alpha.RunReportResponse.metadata:type_name -> google.analytics.data.v1alpha.ResponseMetaData + 22, // 16: google.analytics.data.v1alpha.RunReportResponse.property_quota:type_name -> google.analytics.data.v1alpha.PropertyQuota + 10, // 17: google.analytics.data.v1alpha.RunPivotReportRequest.entity:type_name -> google.analytics.data.v1alpha.Entity + 11, // 18: google.analytics.data.v1alpha.RunPivotReportRequest.dimensions:type_name -> google.analytics.data.v1alpha.Dimension + 12, // 19: google.analytics.data.v1alpha.RunPivotReportRequest.metrics:type_name -> google.analytics.data.v1alpha.Metric + 15, // 20: google.analytics.data.v1alpha.RunPivotReportRequest.dimension_filter:type_name -> google.analytics.data.v1alpha.FilterExpression + 15, // 21: google.analytics.data.v1alpha.RunPivotReportRequest.metric_filter:type_name -> google.analytics.data.v1alpha.FilterExpression + 23, // 22: google.analytics.data.v1alpha.RunPivotReportRequest.pivots:type_name -> google.analytics.data.v1alpha.Pivot + 13, // 23: google.analytics.data.v1alpha.RunPivotReportRequest.date_ranges:type_name -> google.analytics.data.v1alpha.DateRange + 17, // 24: google.analytics.data.v1alpha.RunPivotReportRequest.cohort_spec:type_name -> google.analytics.data.v1alpha.CohortSpec + 24, // 25: google.analytics.data.v1alpha.RunPivotReportResponse.pivot_headers:type_name -> google.analytics.data.v1alpha.PivotHeader + 18, // 26: google.analytics.data.v1alpha.RunPivotReportResponse.dimension_headers:type_name -> google.analytics.data.v1alpha.DimensionHeader + 19, // 27: google.analytics.data.v1alpha.RunPivotReportResponse.metric_headers:type_name -> google.analytics.data.v1alpha.MetricHeader + 20, // 28: google.analytics.data.v1alpha.RunPivotReportResponse.rows:type_name -> google.analytics.data.v1alpha.Row + 20, // 29: google.analytics.data.v1alpha.RunPivotReportResponse.aggregates:type_name -> google.analytics.data.v1alpha.Row + 21, // 30: google.analytics.data.v1alpha.RunPivotReportResponse.metadata:type_name -> google.analytics.data.v1alpha.ResponseMetaData + 22, // 31: google.analytics.data.v1alpha.RunPivotReportResponse.property_quota:type_name -> google.analytics.data.v1alpha.PropertyQuota + 10, // 32: google.analytics.data.v1alpha.BatchRunReportsRequest.entity:type_name -> google.analytics.data.v1alpha.Entity + 0, // 33: google.analytics.data.v1alpha.BatchRunReportsRequest.requests:type_name -> google.analytics.data.v1alpha.RunReportRequest + 1, // 34: google.analytics.data.v1alpha.BatchRunReportsResponse.reports:type_name -> google.analytics.data.v1alpha.RunReportResponse + 10, // 35: google.analytics.data.v1alpha.BatchRunPivotReportsRequest.entity:type_name -> google.analytics.data.v1alpha.Entity + 2, // 36: google.analytics.data.v1alpha.BatchRunPivotReportsRequest.requests:type_name -> google.analytics.data.v1alpha.RunPivotReportRequest + 3, // 37: google.analytics.data.v1alpha.BatchRunPivotReportsResponse.pivot_reports:type_name -> google.analytics.data.v1alpha.RunPivotReportResponse + 25, // 38: google.analytics.data.v1alpha.UniversalMetadata.dimensions:type_name -> google.analytics.data.v1alpha.DimensionMetadata + 26, // 39: google.analytics.data.v1alpha.UniversalMetadata.metrics:type_name -> google.analytics.data.v1alpha.MetricMetadata + 0, // 40: google.analytics.data.v1alpha.AlphaAnalyticsData.RunReport:input_type -> google.analytics.data.v1alpha.RunReportRequest + 2, // 41: google.analytics.data.v1alpha.AlphaAnalyticsData.RunPivotReport:input_type -> google.analytics.data.v1alpha.RunPivotReportRequest + 4, // 42: google.analytics.data.v1alpha.AlphaAnalyticsData.BatchRunReports:input_type -> google.analytics.data.v1alpha.BatchRunReportsRequest + 6, // 43: google.analytics.data.v1alpha.AlphaAnalyticsData.BatchRunPivotReports:input_type -> google.analytics.data.v1alpha.BatchRunPivotReportsRequest + 8, // 44: google.analytics.data.v1alpha.AlphaAnalyticsData.GetUniversalMetadata:input_type -> google.analytics.data.v1alpha.GetUniversalMetadataRequest + 1, // 45: google.analytics.data.v1alpha.AlphaAnalyticsData.RunReport:output_type -> google.analytics.data.v1alpha.RunReportResponse + 3, // 46: google.analytics.data.v1alpha.AlphaAnalyticsData.RunPivotReport:output_type -> google.analytics.data.v1alpha.RunPivotReportResponse + 5, // 47: google.analytics.data.v1alpha.AlphaAnalyticsData.BatchRunReports:output_type -> google.analytics.data.v1alpha.BatchRunReportsResponse + 7, // 48: google.analytics.data.v1alpha.AlphaAnalyticsData.BatchRunPivotReports:output_type -> google.analytics.data.v1alpha.BatchRunPivotReportsResponse + 9, // 49: google.analytics.data.v1alpha.AlphaAnalyticsData.GetUniversalMetadata:output_type -> google.analytics.data.v1alpha.UniversalMetadata 45, // [45:50] is the sub-list for method output_type 40, // [40:45] is the sub-list for method input_type 40, // [40:40] is the sub-list for extension type_name @@ -1415,7 +1394,7 @@ func file_google_analytics_data_v1alpha_analytics_data_api_proto_init() { file_google_analytics_data_v1alpha_data_proto_init() if !protoimpl.UnsafeEnabled { file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Metadata); i { + switch v := v.(*RunReportRequest); i { case 0: return &v.state case 1: @@ -1427,7 +1406,7 @@ func file_google_analytics_data_v1alpha_analytics_data_api_proto_init() { } } file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RunReportRequest); i { + switch v := v.(*RunReportResponse); i { case 0: return &v.state case 1: @@ -1439,7 +1418,7 @@ func file_google_analytics_data_v1alpha_analytics_data_api_proto_init() { } } file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RunReportResponse); i { + switch v := v.(*RunPivotReportRequest); i { case 0: return &v.state case 1: @@ -1451,7 +1430,7 @@ func file_google_analytics_data_v1alpha_analytics_data_api_proto_init() { } } file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RunPivotReportRequest); i { + switch v := v.(*RunPivotReportResponse); i { case 0: return &v.state case 1: @@ -1463,7 +1442,7 @@ func file_google_analytics_data_v1alpha_analytics_data_api_proto_init() { } } file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RunPivotReportResponse); i { + switch v := v.(*BatchRunReportsRequest); i { case 0: return &v.state case 1: @@ -1475,7 +1454,7 @@ func file_google_analytics_data_v1alpha_analytics_data_api_proto_init() { } } file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BatchRunReportsRequest); i { + switch v := v.(*BatchRunReportsResponse); i { case 0: return &v.state case 1: @@ -1487,7 +1466,7 @@ func file_google_analytics_data_v1alpha_analytics_data_api_proto_init() { } } file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BatchRunReportsResponse); i { + switch v := v.(*BatchRunPivotReportsRequest); i { case 0: return &v.state case 1: @@ -1499,7 +1478,7 @@ func file_google_analytics_data_v1alpha_analytics_data_api_proto_init() { } } file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BatchRunPivotReportsRequest); i { + switch v := v.(*BatchRunPivotReportsResponse); i { case 0: return &v.state case 1: @@ -1511,7 +1490,7 @@ func file_google_analytics_data_v1alpha_analytics_data_api_proto_init() { } } file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BatchRunPivotReportsResponse); i { + switch v := v.(*GetUniversalMetadataRequest); i { case 0: return &v.state case 1: @@ -1523,7 +1502,7 @@ func file_google_analytics_data_v1alpha_analytics_data_api_proto_init() { } } file_google_analytics_data_v1alpha_analytics_data_api_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetMetadataRequest); i { + switch v := v.(*UniversalMetadata); i { case 0: return &v.state case 1: @@ -1590,7 +1569,10 @@ type AlphaAnalyticsDataClient interface { // Returns metadata for dimensions and metrics available in reporting methods. // Used to explore the dimensions and metrics. Dimensions and metrics will be // mostly added over time, but renames and deletions may occur. - GetMetadata(ctx context.Context, in *GetMetadataRequest, opts ...grpc.CallOption) (*Metadata, error) + // + // This method returns Universal Metadata. Universal Metadata are dimensions + // and metrics applicable to any property such as `country` and `totalUsers`. + GetUniversalMetadata(ctx context.Context, in *GetUniversalMetadataRequest, opts ...grpc.CallOption) (*UniversalMetadata, error) } type alphaAnalyticsDataClient struct { @@ -1637,9 +1619,9 @@ func (c *alphaAnalyticsDataClient) BatchRunPivotReports(ctx context.Context, in return out, nil } -func (c *alphaAnalyticsDataClient) GetMetadata(ctx context.Context, in *GetMetadataRequest, opts ...grpc.CallOption) (*Metadata, error) { - out := new(Metadata) - err := c.cc.Invoke(ctx, "/google.analytics.data.v1alpha.AlphaAnalyticsData/GetMetadata", in, out, opts...) +func (c *alphaAnalyticsDataClient) GetUniversalMetadata(ctx context.Context, in *GetUniversalMetadataRequest, opts ...grpc.CallOption) (*UniversalMetadata, error) { + out := new(UniversalMetadata) + err := c.cc.Invoke(ctx, "/google.analytics.data.v1alpha.AlphaAnalyticsData/GetUniversalMetadata", in, out, opts...) if err != nil { return nil, err } @@ -1671,7 +1653,10 @@ type AlphaAnalyticsDataServer interface { // Returns metadata for dimensions and metrics available in reporting methods. // Used to explore the dimensions and metrics. Dimensions and metrics will be // mostly added over time, but renames and deletions may occur. - GetMetadata(context.Context, *GetMetadataRequest) (*Metadata, error) + // + // This method returns Universal Metadata. Universal Metadata are dimensions + // and metrics applicable to any property such as `country` and `totalUsers`. + GetUniversalMetadata(context.Context, *GetUniversalMetadataRequest) (*UniversalMetadata, error) } // UnimplementedAlphaAnalyticsDataServer can be embedded to have forward compatible implementations. @@ -1690,8 +1675,8 @@ func (*UnimplementedAlphaAnalyticsDataServer) BatchRunReports(context.Context, * func (*UnimplementedAlphaAnalyticsDataServer) BatchRunPivotReports(context.Context, *BatchRunPivotReportsRequest) (*BatchRunPivotReportsResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method BatchRunPivotReports not implemented") } -func (*UnimplementedAlphaAnalyticsDataServer) GetMetadata(context.Context, *GetMetadataRequest) (*Metadata, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetMetadata not implemented") +func (*UnimplementedAlphaAnalyticsDataServer) GetUniversalMetadata(context.Context, *GetUniversalMetadataRequest) (*UniversalMetadata, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetUniversalMetadata not implemented") } func RegisterAlphaAnalyticsDataServer(s *grpc.Server, srv AlphaAnalyticsDataServer) { @@ -1770,20 +1755,20 @@ func _AlphaAnalyticsData_BatchRunPivotReports_Handler(srv interface{}, ctx conte return interceptor(ctx, in, info, handler) } -func _AlphaAnalyticsData_GetMetadata_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetMetadataRequest) +func _AlphaAnalyticsData_GetUniversalMetadata_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetUniversalMetadataRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(AlphaAnalyticsDataServer).GetMetadata(ctx, in) + return srv.(AlphaAnalyticsDataServer).GetUniversalMetadata(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/google.analytics.data.v1alpha.AlphaAnalyticsData/GetMetadata", + FullMethod: "/google.analytics.data.v1alpha.AlphaAnalyticsData/GetUniversalMetadata", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AlphaAnalyticsDataServer).GetMetadata(ctx, req.(*GetMetadataRequest)) + return srv.(AlphaAnalyticsDataServer).GetUniversalMetadata(ctx, req.(*GetUniversalMetadataRequest)) } return interceptor(ctx, in, info, handler) } @@ -1809,8 +1794,8 @@ var _AlphaAnalyticsData_serviceDesc = grpc.ServiceDesc{ Handler: _AlphaAnalyticsData_BatchRunPivotReports_Handler, }, { - MethodName: "GetMetadata", - Handler: _AlphaAnalyticsData_GetMetadata_Handler, + MethodName: "GetUniversalMetadata", + Handler: _AlphaAnalyticsData_GetUniversalMetadata_Handler, }, }, Streams: []grpc.StreamDesc{}, diff --git a/googleapis/analytics/data/v1alpha/data.pb.go b/googleapis/analytics/data/v1alpha/data.pb.go index a9472585a5..ce366ae0cc 100644 --- a/googleapis/analytics/data/v1alpha/data.pb.go +++ b/googleapis/analytics/data/v1alpha/data.pb.go @@ -1731,7 +1731,9 @@ type PivotHeader struct { // The size is the same as the cardinality of the corresponding dimension // combinations. PivotDimensionHeaders []*PivotDimensionHeader `protobuf:"bytes,1,rep,name=pivot_dimension_headers,json=pivotDimensionHeaders,proto3" json:"pivot_dimension_headers,omitempty"` - // The cardinality of the pivot as if offset = 0 and limit = -1. + // The cardinality of the pivot as if offset = 0 and limit = -1. The total + // number of rows for this pivot's fields regardless of how the parameters + // offset and limit are specified in the request. RowCount int32 `protobuf:"varint,2,opt,name=row_count,json=rowCount,proto3" json:"row_count,omitempty"` } diff --git a/googleapis/cloud/billing/budgets/v1/budget_model.pb.go b/googleapis/cloud/billing/budgets/v1/budget_model.pb.go new file mode 100644 index 0000000000..8423023156 --- /dev/null +++ b/googleapis/cloud/billing/budgets/v1/budget_model.pb.go @@ -0,0 +1,953 @@ +// Copyright 2020 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.25.0 +// protoc v3.13.0 +// source: google/cloud/billing/budgets/v1/budget_model.proto + +package budgets + +import ( + reflect "reflect" + sync "sync" + + proto "github.com/golang/protobuf/proto" + _ "google.golang.org/genproto/googleapis/api/annotations" + money "google.golang.org/genproto/googleapis/type/money" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + structpb "google.golang.org/protobuf/types/known/structpb" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// This is a compile-time assertion that a sufficiently up-to-date version +// of the legacy proto package is being used. +const _ = proto.ProtoPackageIsVersion4 + +// The type of basis used to determine if spend has passed the threshold. +type ThresholdRule_Basis int32 + +const ( + // Unspecified threshold basis. + ThresholdRule_BASIS_UNSPECIFIED ThresholdRule_Basis = 0 + // Use current spend as the basis for comparison against the threshold. + ThresholdRule_CURRENT_SPEND ThresholdRule_Basis = 1 + // Use forecasted spend for the period as the basis for comparison against + // the threshold. + ThresholdRule_FORECASTED_SPEND ThresholdRule_Basis = 2 +) + +// Enum value maps for ThresholdRule_Basis. +var ( + ThresholdRule_Basis_name = map[int32]string{ + 0: "BASIS_UNSPECIFIED", + 1: "CURRENT_SPEND", + 2: "FORECASTED_SPEND", + } + ThresholdRule_Basis_value = map[string]int32{ + "BASIS_UNSPECIFIED": 0, + "CURRENT_SPEND": 1, + "FORECASTED_SPEND": 2, + } +) + +func (x ThresholdRule_Basis) Enum() *ThresholdRule_Basis { + p := new(ThresholdRule_Basis) + *p = x + return p +} + +func (x ThresholdRule_Basis) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ThresholdRule_Basis) Descriptor() protoreflect.EnumDescriptor { + return file_google_cloud_billing_budgets_v1_budget_model_proto_enumTypes[0].Descriptor() +} + +func (ThresholdRule_Basis) Type() protoreflect.EnumType { + return &file_google_cloud_billing_budgets_v1_budget_model_proto_enumTypes[0] +} + +func (x ThresholdRule_Basis) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ThresholdRule_Basis.Descriptor instead. +func (ThresholdRule_Basis) EnumDescriptor() ([]byte, []int) { + return file_google_cloud_billing_budgets_v1_budget_model_proto_rawDescGZIP(), []int{3, 0} +} + +// Specifies how credits should be treated when determining spend for +// threshold calculations. +type Filter_CreditTypesTreatment int32 + +const ( + // This is an invalid value. + Filter_CREDIT_TYPES_TREATMENT_UNSPECIFIED Filter_CreditTypesTreatment = 0 + // All types of credit are subtracted from the gross cost to determine the + // spend for threshold calculations. + Filter_INCLUDE_ALL_CREDITS Filter_CreditTypesTreatment = 1 + // All types of credit are added to the net cost to determine the spend for + // threshold calculations. + Filter_EXCLUDE_ALL_CREDITS Filter_CreditTypesTreatment = 2 +) + +// Enum value maps for Filter_CreditTypesTreatment. +var ( + Filter_CreditTypesTreatment_name = map[int32]string{ + 0: "CREDIT_TYPES_TREATMENT_UNSPECIFIED", + 1: "INCLUDE_ALL_CREDITS", + 2: "EXCLUDE_ALL_CREDITS", + } + Filter_CreditTypesTreatment_value = map[string]int32{ + "CREDIT_TYPES_TREATMENT_UNSPECIFIED": 0, + "INCLUDE_ALL_CREDITS": 1, + "EXCLUDE_ALL_CREDITS": 2, + } +) + +func (x Filter_CreditTypesTreatment) Enum() *Filter_CreditTypesTreatment { + p := new(Filter_CreditTypesTreatment) + *p = x + return p +} + +func (x Filter_CreditTypesTreatment) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (Filter_CreditTypesTreatment) Descriptor() protoreflect.EnumDescriptor { + return file_google_cloud_billing_budgets_v1_budget_model_proto_enumTypes[1].Descriptor() +} + +func (Filter_CreditTypesTreatment) Type() protoreflect.EnumType { + return &file_google_cloud_billing_budgets_v1_budget_model_proto_enumTypes[1] +} + +func (x Filter_CreditTypesTreatment) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use Filter_CreditTypesTreatment.Descriptor instead. +func (Filter_CreditTypesTreatment) EnumDescriptor() ([]byte, []int) { + return file_google_cloud_billing_budgets_v1_budget_model_proto_rawDescGZIP(), []int{5, 0} +} + +// A budget is a plan that describes what you expect to spend on Cloud +// projects, plus the rules to execute as spend is tracked against that plan, +// (for example, send an alert when 90% of the target spend is met). +// Currently all plans are monthly budgets so the usage period(s) tracked are +// implied (calendar months of usage back-to-back). +type Budget struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Output only. Resource name of the budget. + // The resource name implies the scope of a budget. Values are of the form + // `billingAccounts/{billingAccountId}/budgets/{budgetId}`. + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // User data for display name in UI. The name must be less than or equal to 60 + // characters. + DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"` + // Optional. Filters that define which resources are used to compute + // the actual spend against the budget. + BudgetFilter *Filter `protobuf:"bytes,3,opt,name=budget_filter,json=budgetFilter,proto3" json:"budget_filter,omitempty"` + // Required. Budgeted amount. + Amount *BudgetAmount `protobuf:"bytes,4,opt,name=amount,proto3" json:"amount,omitempty"` + // Optional. Rules that trigger alerts (notifications of thresholds + // being crossed) when spend exceeds the specified percentages of the budget. + ThresholdRules []*ThresholdRule `protobuf:"bytes,5,rep,name=threshold_rules,json=thresholdRules,proto3" json:"threshold_rules,omitempty"` + // Optional. Rules to apply to notifications sent based on budget spend and thresholds. + NotificationsRule *NotificationsRule `protobuf:"bytes,6,opt,name=notifications_rule,json=notificationsRule,proto3" json:"notifications_rule,omitempty"` + // Optional. Etag to validate that the object is unchanged for a + // read-modify-write operation. + // An empty etag will cause an update to overwrite other changes. + Etag string `protobuf:"bytes,7,opt,name=etag,proto3" json:"etag,omitempty"` +} + +func (x *Budget) Reset() { + *x = Budget{} + if protoimpl.UnsafeEnabled { + mi := &file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Budget) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Budget) ProtoMessage() {} + +func (x *Budget) ProtoReflect() protoreflect.Message { + mi := &file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Budget.ProtoReflect.Descriptor instead. +func (*Budget) Descriptor() ([]byte, []int) { + return file_google_cloud_billing_budgets_v1_budget_model_proto_rawDescGZIP(), []int{0} +} + +func (x *Budget) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *Budget) GetDisplayName() string { + if x != nil { + return x.DisplayName + } + return "" +} + +func (x *Budget) GetBudgetFilter() *Filter { + if x != nil { + return x.BudgetFilter + } + return nil +} + +func (x *Budget) GetAmount() *BudgetAmount { + if x != nil { + return x.Amount + } + return nil +} + +func (x *Budget) GetThresholdRules() []*ThresholdRule { + if x != nil { + return x.ThresholdRules + } + return nil +} + +func (x *Budget) GetNotificationsRule() *NotificationsRule { + if x != nil { + return x.NotificationsRule + } + return nil +} + +func (x *Budget) GetEtag() string { + if x != nil { + return x.Etag + } + return "" +} + +// The budgeted amount for each usage period. +type BudgetAmount struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Specification for what amount to use as the budget. + // + // Types that are assignable to BudgetAmount: + // *BudgetAmount_SpecifiedAmount + // *BudgetAmount_LastPeriodAmount + BudgetAmount isBudgetAmount_BudgetAmount `protobuf_oneof:"budget_amount"` +} + +func (x *BudgetAmount) Reset() { + *x = BudgetAmount{} + if protoimpl.UnsafeEnabled { + mi := &file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BudgetAmount) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BudgetAmount) ProtoMessage() {} + +func (x *BudgetAmount) ProtoReflect() protoreflect.Message { + mi := &file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BudgetAmount.ProtoReflect.Descriptor instead. +func (*BudgetAmount) Descriptor() ([]byte, []int) { + return file_google_cloud_billing_budgets_v1_budget_model_proto_rawDescGZIP(), []int{1} +} + +func (m *BudgetAmount) GetBudgetAmount() isBudgetAmount_BudgetAmount { + if m != nil { + return m.BudgetAmount + } + return nil +} + +func (x *BudgetAmount) GetSpecifiedAmount() *money.Money { + if x, ok := x.GetBudgetAmount().(*BudgetAmount_SpecifiedAmount); ok { + return x.SpecifiedAmount + } + return nil +} + +func (x *BudgetAmount) GetLastPeriodAmount() *LastPeriodAmount { + if x, ok := x.GetBudgetAmount().(*BudgetAmount_LastPeriodAmount); ok { + return x.LastPeriodAmount + } + return nil +} + +type isBudgetAmount_BudgetAmount interface { + isBudgetAmount_BudgetAmount() +} + +type BudgetAmount_SpecifiedAmount struct { + // A specified amount to use as the budget. + // `currency_code` is optional. If specified, it must match the + // currency of the billing account. The `currency_code` is provided on + // output. + SpecifiedAmount *money.Money `protobuf:"bytes,1,opt,name=specified_amount,json=specifiedAmount,proto3,oneof"` +} + +type BudgetAmount_LastPeriodAmount struct { + // Use the last period's actual spend as the budget for the present period. + LastPeriodAmount *LastPeriodAmount `protobuf:"bytes,2,opt,name=last_period_amount,json=lastPeriodAmount,proto3,oneof"` +} + +func (*BudgetAmount_SpecifiedAmount) isBudgetAmount_BudgetAmount() {} + +func (*BudgetAmount_LastPeriodAmount) isBudgetAmount_BudgetAmount() {} + +// Describes a budget amount targeted to last period's spend. +// At this time, the amount is automatically 100% of last period's spend; +// that is, there are no other options yet. +// Future configuration will be described here (for example, configuring a +// percentage of last period's spend). +type LastPeriodAmount struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *LastPeriodAmount) Reset() { + *x = LastPeriodAmount{} + if protoimpl.UnsafeEnabled { + mi := &file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *LastPeriodAmount) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LastPeriodAmount) ProtoMessage() {} + +func (x *LastPeriodAmount) ProtoReflect() protoreflect.Message { + mi := &file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use LastPeriodAmount.ProtoReflect.Descriptor instead. +func (*LastPeriodAmount) Descriptor() ([]byte, []int) { + return file_google_cloud_billing_budgets_v1_budget_model_proto_rawDescGZIP(), []int{2} +} + +// ThresholdRule contains a definition of a threshold which triggers +// an alert (a notification of a threshold being crossed) to be sent when +// spend goes above the specified amount. +// Alerts are automatically e-mailed to users with the Billing Account +// Administrator role or the Billing Account User role. +// The thresholds here have no effect on notifications sent to anything +// configured under `Budget.all_updates_rule`. +type ThresholdRule struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Required. Send an alert when this threshold is exceeded. + // This is a 1.0-based percentage, so 0.5 = 50%. + // Validation: non-negative number. + ThresholdPercent float64 `protobuf:"fixed64,1,opt,name=threshold_percent,json=thresholdPercent,proto3" json:"threshold_percent,omitempty"` + // Optional. The type of basis used to determine if spend has passed the + // threshold. Behavior defaults to CURRENT_SPEND if not set. + SpendBasis ThresholdRule_Basis `protobuf:"varint,2,opt,name=spend_basis,json=spendBasis,proto3,enum=google.cloud.billing.budgets.v1.ThresholdRule_Basis" json:"spend_basis,omitempty"` +} + +func (x *ThresholdRule) Reset() { + *x = ThresholdRule{} + if protoimpl.UnsafeEnabled { + mi := &file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ThresholdRule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ThresholdRule) ProtoMessage() {} + +func (x *ThresholdRule) ProtoReflect() protoreflect.Message { + mi := &file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ThresholdRule.ProtoReflect.Descriptor instead. +func (*ThresholdRule) Descriptor() ([]byte, []int) { + return file_google_cloud_billing_budgets_v1_budget_model_proto_rawDescGZIP(), []int{3} +} + +func (x *ThresholdRule) GetThresholdPercent() float64 { + if x != nil { + return x.ThresholdPercent + } + return 0 +} + +func (x *ThresholdRule) GetSpendBasis() ThresholdRule_Basis { + if x != nil { + return x.SpendBasis + } + return ThresholdRule_BASIS_UNSPECIFIED +} + +// NotificationsRule defines notifications that are sent based on budget spend +// and thresholds. +type NotificationsRule struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Optional. The name of the Pub/Sub topic where budget related messages will be + // published, in the form `projects/{project_id}/topics/{topic_id}`. Updates + // are sent at regular intervals to the topic. + // The topic needs to be created before the budget is created; see + // https://cloud.google.com/billing/docs/how-to/budgets#manage-notifications + // for more details. + // Caller is expected to have + // `pubsub.topics.setIamPolicy` permission on the topic when it's set for a + // budget, otherwise, the API call will fail with PERMISSION_DENIED. See + // https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications + // for more details on Pub/Sub roles and permissions. + PubsubTopic string `protobuf:"bytes,1,opt,name=pubsub_topic,json=pubsubTopic,proto3" json:"pubsub_topic,omitempty"` + // Optional. The schema version of the notification sent to `pubsub_topic`. + // Only "1.0" is accepted. It represents the JSON schema as defined in + // https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#notification_format + SchemaVersion string `protobuf:"bytes,2,opt,name=schema_version,json=schemaVersion,proto3" json:"schema_version,omitempty"` + // Optional. Targets to send notifications to when a threshold is exceeded. This is in + // addition to default recipients who have billing account IAM roles. + // The value is the full REST resource name of a monitoring notification + // channel with the form + // `projects/{project_id}/notificationChannels/{channel_id}`. A maximum of 5 + // channels are allowed. See + // https://cloud.google.com/billing/docs/how-to/budgets-notification-recipients + // for more details. + MonitoringNotificationChannels []string `protobuf:"bytes,3,rep,name=monitoring_notification_channels,json=monitoringNotificationChannels,proto3" json:"monitoring_notification_channels,omitempty"` + // Optional. When set to true, disables default notifications sent when a threshold is + // exceeded. Default notifications are sent to those with Billing Account + // Administrator and Billing Account User IAM roles for the target account. + DisableDefaultIamRecipients bool `protobuf:"varint,4,opt,name=disable_default_iam_recipients,json=disableDefaultIamRecipients,proto3" json:"disable_default_iam_recipients,omitempty"` +} + +func (x *NotificationsRule) Reset() { + *x = NotificationsRule{} + if protoimpl.UnsafeEnabled { + mi := &file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *NotificationsRule) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*NotificationsRule) ProtoMessage() {} + +func (x *NotificationsRule) ProtoReflect() protoreflect.Message { + mi := &file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use NotificationsRule.ProtoReflect.Descriptor instead. +func (*NotificationsRule) Descriptor() ([]byte, []int) { + return file_google_cloud_billing_budgets_v1_budget_model_proto_rawDescGZIP(), []int{4} +} + +func (x *NotificationsRule) GetPubsubTopic() string { + if x != nil { + return x.PubsubTopic + } + return "" +} + +func (x *NotificationsRule) GetSchemaVersion() string { + if x != nil { + return x.SchemaVersion + } + return "" +} + +func (x *NotificationsRule) GetMonitoringNotificationChannels() []string { + if x != nil { + return x.MonitoringNotificationChannels + } + return nil +} + +func (x *NotificationsRule) GetDisableDefaultIamRecipients() bool { + if x != nil { + return x.DisableDefaultIamRecipients + } + return false +} + +// A filter for a budget, limiting the scope of the cost to calculate. +type Filter struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Optional. A set of projects of the form `projects/{project}`, + // specifying that usage from only this set of projects should be + // included in the budget. If omitted, the report will include all usage for + // the billing account, regardless of which project the usage occurred on. + // Only zero or one project can be specified currently. + Projects []string `protobuf:"bytes,1,rep,name=projects,proto3" json:"projects,omitempty"` + // Optional. If not set, default behavior is `INCLUDE_ALL_CREDITS`. + CreditTypesTreatment Filter_CreditTypesTreatment `protobuf:"varint,4,opt,name=credit_types_treatment,json=creditTypesTreatment,proto3,enum=google.cloud.billing.budgets.v1.Filter_CreditTypesTreatment" json:"credit_types_treatment,omitempty"` + // Optional. A set of services of the form `services/{service_id}`, + // specifying that usage from only this set of services should be + // included in the budget. If omitted, the report will include usage for + // all the services. + // The service names are available through the Catalog API: + // https://cloud.google.com/billing/v1/how-tos/catalog-api. + Services []string `protobuf:"bytes,3,rep,name=services,proto3" json:"services,omitempty"` + // Optional. A set of subaccounts of the form `billingAccounts/{account_id}`, specifying + // that usage from only this set of subaccounts should be included in the + // budget. If a subaccount is set to the name of the parent account, + // usage from the parent account will be included. If the field is omitted, + // the report will include usage from the parent account and all subaccounts, + // if they exist. + Subaccounts []string `protobuf:"bytes,5,rep,name=subaccounts,proto3" json:"subaccounts,omitempty"` + // Optional. A single label and value pair specifying that usage from only this set of + // labeled resources should be included in the budget. Currently, multiple + // entries or multiple values per entry are not allowed. If omitted, the + // report will include all labeled and unlabeled usage. + Labels map[string]*structpb.ListValue `protobuf:"bytes,6,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (x *Filter) Reset() { + *x = Filter{} + if protoimpl.UnsafeEnabled { + mi := &file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Filter) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Filter) ProtoMessage() {} + +func (x *Filter) ProtoReflect() protoreflect.Message { + mi := &file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Filter.ProtoReflect.Descriptor instead. +func (*Filter) Descriptor() ([]byte, []int) { + return file_google_cloud_billing_budgets_v1_budget_model_proto_rawDescGZIP(), []int{5} +} + +func (x *Filter) GetProjects() []string { + if x != nil { + return x.Projects + } + return nil +} + +func (x *Filter) GetCreditTypesTreatment() Filter_CreditTypesTreatment { + if x != nil { + return x.CreditTypesTreatment + } + return Filter_CREDIT_TYPES_TREATMENT_UNSPECIFIED +} + +func (x *Filter) GetServices() []string { + if x != nil { + return x.Services + } + return nil +} + +func (x *Filter) GetSubaccounts() []string { + if x != nil { + return x.Subaccounts + } + return nil +} + +func (x *Filter) GetLabels() map[string]*structpb.ListValue { + if x != nil { + return x.Labels + } + return nil +} + +var File_google_cloud_billing_budgets_v1_budget_model_proto protoreflect.FileDescriptor + +var file_google_cloud_billing_budgets_v1_budget_model_proto_rawDesc = []byte{ + 0x0a, 0x32, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x62, + 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2f, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2f, 0x76, + 0x31, 0x2f, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, + 0x74, 0x73, 0x2e, 0x76, 0x31, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, + 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, + 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, + 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x6d, 0x6f, 0x6e, + 0x65, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa1, 0x04, 0x0a, 0x06, 0x42, 0x75, 0x64, + 0x67, 0x65, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, + 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x51, 0x0a, 0x0d, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x75, + 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x42, + 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x46, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x12, 0x4a, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, + 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x41, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x5c, + 0x0a, 0x0f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x5f, 0x72, 0x75, 0x6c, 0x65, + 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, + 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, + 0x6f, 0x6c, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x74, 0x68, + 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x66, 0x0a, 0x12, + 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x72, 0x75, + 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, + 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x75, 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41, + 0x01, 0x52, 0x11, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x52, 0x75, 0x6c, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x3a, 0x5d, 0xea, + 0x41, 0x5a, 0x0a, 0x24, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x62, 0x75, 0x64, 0x67, 0x65, + 0x74, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, + 0x6d, 0x2f, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x12, 0x32, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, + 0x67, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x62, 0x69, 0x6c, 0x6c, 0x69, + 0x6e, 0x67, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x7d, 0x2f, 0x62, 0x75, 0x64, 0x67, + 0x65, 0x74, 0x73, 0x2f, 0x7b, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x7d, 0x22, 0xc3, 0x01, 0x0a, + 0x0c, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3f, 0x0a, + 0x10, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x4d, 0x6f, 0x6e, 0x65, 0x79, 0x48, 0x00, 0x52, 0x0f, 0x73, + 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x61, + 0x0a, 0x12, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x5f, 0x61, 0x6d, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, + 0x67, 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x61, 0x73, + 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x48, 0x00, 0x52, + 0x10, 0x6c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x41, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x42, 0x0f, 0x0a, 0x0d, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x5f, 0x61, 0x6d, 0x6f, 0x75, + 0x6e, 0x74, 0x22, 0x12, 0x0a, 0x10, 0x4c, 0x61, 0x73, 0x74, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, + 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xe6, 0x01, 0x0a, 0x0d, 0x54, 0x68, 0x72, 0x65, 0x73, + 0x68, 0x6f, 0x6c, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x30, 0x0a, 0x11, 0x74, 0x68, 0x72, 0x65, + 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x10, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, + 0x6f, 0x6c, 0x64, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x5a, 0x0a, 0x0b, 0x73, 0x70, + 0x65, 0x6e, 0x64, 0x5f, 0x62, 0x61, 0x73, 0x69, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, + 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, + 0x31, 0x2e, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x52, 0x75, 0x6c, 0x65, 0x2e, + 0x42, 0x61, 0x73, 0x69, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x73, 0x70, 0x65, 0x6e, + 0x64, 0x42, 0x61, 0x73, 0x69, 0x73, 0x22, 0x47, 0x0a, 0x05, 0x42, 0x61, 0x73, 0x69, 0x73, 0x12, + 0x15, 0x0a, 0x11, 0x42, 0x41, 0x53, 0x49, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, + 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, + 0x54, 0x5f, 0x53, 0x50, 0x45, 0x4e, 0x44, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x46, 0x4f, 0x52, + 0x45, 0x43, 0x41, 0x53, 0x54, 0x45, 0x44, 0x5f, 0x53, 0x50, 0x45, 0x4e, 0x44, 0x10, 0x02, 0x22, + 0x80, 0x02, 0x0a, 0x11, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x26, 0x0a, 0x0c, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x5f, + 0x74, 0x6f, 0x70, 0x69, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, + 0x52, 0x0b, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x2a, 0x0a, + 0x0e, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0d, 0x73, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x4d, 0x0a, 0x20, 0x6d, 0x6f, 0x6e, + 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x03, 0x20, + 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x1e, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, + 0x72, 0x69, 0x6e, 0x67, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x48, 0x0a, 0x1e, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x69, 0x61, 0x6d, 0x5f, + 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, + 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x1b, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x49, 0x61, 0x6d, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, + 0x74, 0x73, 0x22, 0x85, 0x04, 0x0a, 0x06, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x1f, 0x0a, + 0x08, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x42, + 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x77, + 0x0a, 0x16, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x5f, 0x74, + 0x72, 0x65, 0x61, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, + 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, 0x31, + 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x73, 0x54, 0x72, 0x65, 0x61, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, + 0x01, 0x52, 0x14, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x54, 0x79, 0x70, 0x65, 0x73, 0x54, 0x72, + 0x65, 0x61, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0b, 0x73, 0x75, 0x62, 0x61, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, + 0x41, 0x01, 0x52, 0x0b, 0x73, 0x75, 0x62, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, + 0x50, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, + 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, + 0x31, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x73, 0x1a, 0x55, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x30, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x70, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x64, + 0x69, 0x74, 0x54, 0x79, 0x70, 0x65, 0x73, 0x54, 0x72, 0x65, 0x61, 0x74, 0x6d, 0x65, 0x6e, 0x74, + 0x12, 0x26, 0x0a, 0x22, 0x43, 0x52, 0x45, 0x44, 0x49, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x53, + 0x5f, 0x54, 0x52, 0x45, 0x41, 0x54, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, + 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x49, 0x4e, 0x43, 0x4c, + 0x55, 0x44, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x5f, 0x43, 0x52, 0x45, 0x44, 0x49, 0x54, 0x53, 0x10, + 0x01, 0x12, 0x17, 0x0a, 0x13, 0x45, 0x58, 0x43, 0x4c, 0x55, 0x44, 0x45, 0x5f, 0x41, 0x4c, 0x4c, + 0x5f, 0x43, 0x52, 0x45, 0x44, 0x49, 0x54, 0x53, 0x10, 0x02, 0x42, 0x81, 0x01, 0x0a, 0x23, 0x63, + 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, + 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, + 0x76, 0x31, 0x42, 0x10, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x46, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, + 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c, + 0x6f, 0x75, 0x64, 0x2f, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2f, 0x62, 0x75, 0x64, 0x67, + 0x65, 0x74, 0x73, 0x2f, 0x76, 0x31, 0x3b, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x62, 0x06, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_google_cloud_billing_budgets_v1_budget_model_proto_rawDescOnce sync.Once + file_google_cloud_billing_budgets_v1_budget_model_proto_rawDescData = file_google_cloud_billing_budgets_v1_budget_model_proto_rawDesc +) + +func file_google_cloud_billing_budgets_v1_budget_model_proto_rawDescGZIP() []byte { + file_google_cloud_billing_budgets_v1_budget_model_proto_rawDescOnce.Do(func() { + file_google_cloud_billing_budgets_v1_budget_model_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_billing_budgets_v1_budget_model_proto_rawDescData) + }) + return file_google_cloud_billing_budgets_v1_budget_model_proto_rawDescData +} + +var file_google_cloud_billing_budgets_v1_budget_model_proto_enumTypes = make([]protoimpl.EnumInfo, 2) +var file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes = make([]protoimpl.MessageInfo, 7) +var file_google_cloud_billing_budgets_v1_budget_model_proto_goTypes = []interface{}{ + (ThresholdRule_Basis)(0), // 0: google.cloud.billing.budgets.v1.ThresholdRule.Basis + (Filter_CreditTypesTreatment)(0), // 1: google.cloud.billing.budgets.v1.Filter.CreditTypesTreatment + (*Budget)(nil), // 2: google.cloud.billing.budgets.v1.Budget + (*BudgetAmount)(nil), // 3: google.cloud.billing.budgets.v1.BudgetAmount + (*LastPeriodAmount)(nil), // 4: google.cloud.billing.budgets.v1.LastPeriodAmount + (*ThresholdRule)(nil), // 5: google.cloud.billing.budgets.v1.ThresholdRule + (*NotificationsRule)(nil), // 6: google.cloud.billing.budgets.v1.NotificationsRule + (*Filter)(nil), // 7: google.cloud.billing.budgets.v1.Filter + nil, // 8: google.cloud.billing.budgets.v1.Filter.LabelsEntry + (*money.Money)(nil), // 9: google.type.Money + (*structpb.ListValue)(nil), // 10: google.protobuf.ListValue +} +var file_google_cloud_billing_budgets_v1_budget_model_proto_depIdxs = []int32{ + 7, // 0: google.cloud.billing.budgets.v1.Budget.budget_filter:type_name -> google.cloud.billing.budgets.v1.Filter + 3, // 1: google.cloud.billing.budgets.v1.Budget.amount:type_name -> google.cloud.billing.budgets.v1.BudgetAmount + 5, // 2: google.cloud.billing.budgets.v1.Budget.threshold_rules:type_name -> google.cloud.billing.budgets.v1.ThresholdRule + 6, // 3: google.cloud.billing.budgets.v1.Budget.notifications_rule:type_name -> google.cloud.billing.budgets.v1.NotificationsRule + 9, // 4: google.cloud.billing.budgets.v1.BudgetAmount.specified_amount:type_name -> google.type.Money + 4, // 5: google.cloud.billing.budgets.v1.BudgetAmount.last_period_amount:type_name -> google.cloud.billing.budgets.v1.LastPeriodAmount + 0, // 6: google.cloud.billing.budgets.v1.ThresholdRule.spend_basis:type_name -> google.cloud.billing.budgets.v1.ThresholdRule.Basis + 1, // 7: google.cloud.billing.budgets.v1.Filter.credit_types_treatment:type_name -> google.cloud.billing.budgets.v1.Filter.CreditTypesTreatment + 8, // 8: google.cloud.billing.budgets.v1.Filter.labels:type_name -> google.cloud.billing.budgets.v1.Filter.LabelsEntry + 10, // 9: google.cloud.billing.budgets.v1.Filter.LabelsEntry.value:type_name -> google.protobuf.ListValue + 10, // [10:10] is the sub-list for method output_type + 10, // [10:10] is the sub-list for method input_type + 10, // [10:10] is the sub-list for extension type_name + 10, // [10:10] is the sub-list for extension extendee + 0, // [0:10] is the sub-list for field type_name +} + +func init() { file_google_cloud_billing_budgets_v1_budget_model_proto_init() } +func file_google_cloud_billing_budgets_v1_budget_model_proto_init() { + if File_google_cloud_billing_budgets_v1_budget_model_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Budget); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BudgetAmount); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LastPeriodAmount); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ThresholdRule); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*NotificationsRule); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Filter); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes[1].OneofWrappers = []interface{}{ + (*BudgetAmount_SpecifiedAmount)(nil), + (*BudgetAmount_LastPeriodAmount)(nil), + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_google_cloud_billing_budgets_v1_budget_model_proto_rawDesc, + NumEnums: 2, + NumMessages: 7, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_google_cloud_billing_budgets_v1_budget_model_proto_goTypes, + DependencyIndexes: file_google_cloud_billing_budgets_v1_budget_model_proto_depIdxs, + EnumInfos: file_google_cloud_billing_budgets_v1_budget_model_proto_enumTypes, + MessageInfos: file_google_cloud_billing_budgets_v1_budget_model_proto_msgTypes, + }.Build() + File_google_cloud_billing_budgets_v1_budget_model_proto = out.File + file_google_cloud_billing_budgets_v1_budget_model_proto_rawDesc = nil + file_google_cloud_billing_budgets_v1_budget_model_proto_goTypes = nil + file_google_cloud_billing_budgets_v1_budget_model_proto_depIdxs = nil +} diff --git a/googleapis/cloud/billing/budgets/v1/budget_service.pb.go b/googleapis/cloud/billing/budgets/v1/budget_service.pb.go new file mode 100644 index 0000000000..a75ce919e3 --- /dev/null +++ b/googleapis/cloud/billing/budgets/v1/budget_service.pb.go @@ -0,0 +1,960 @@ +// Copyright 2020 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.25.0 +// protoc v3.13.0 +// source: google/cloud/billing/budgets/v1/budget_service.proto + +package budgets + +import ( + context "context" + reflect "reflect" + sync "sync" + + proto "github.com/golang/protobuf/proto" + _ "google.golang.org/genproto/googleapis/api/annotations" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + emptypb "google.golang.org/protobuf/types/known/emptypb" + fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// This is a compile-time assertion that a sufficiently up-to-date version +// of the legacy proto package is being used. +const _ = proto.ProtoPackageIsVersion4 + +// Request for CreateBudget +type CreateBudgetRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Required. The name of the billing account to create the budget in. Values + // are of the form `billingAccounts/{billingAccountId}`. + Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` + // Required. Budget to create. + Budget *Budget `protobuf:"bytes,2,opt,name=budget,proto3" json:"budget,omitempty"` +} + +func (x *CreateBudgetRequest) Reset() { + *x = CreateBudgetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateBudgetRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateBudgetRequest) ProtoMessage() {} + +func (x *CreateBudgetRequest) ProtoReflect() protoreflect.Message { + mi := &file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateBudgetRequest.ProtoReflect.Descriptor instead. +func (*CreateBudgetRequest) Descriptor() ([]byte, []int) { + return file_google_cloud_billing_budgets_v1_budget_service_proto_rawDescGZIP(), []int{0} +} + +func (x *CreateBudgetRequest) GetParent() string { + if x != nil { + return x.Parent + } + return "" +} + +func (x *CreateBudgetRequest) GetBudget() *Budget { + if x != nil { + return x.Budget + } + return nil +} + +// Request for UpdateBudget +type UpdateBudgetRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Required. The updated budget object. + // The budget to update is specified by the budget name in the budget. + Budget *Budget `protobuf:"bytes,1,opt,name=budget,proto3" json:"budget,omitempty"` + // Optional. Indicates which fields in the provided budget to update. + // Read-only fields (such as `name`) cannot be changed. If this is not + // provided, then only fields with non-default values from the request are + // updated. See + // https://developers.google.com/protocol-buffers/docs/proto3#default for more + // details about default values. + UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` +} + +func (x *UpdateBudgetRequest) Reset() { + *x = UpdateBudgetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateBudgetRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateBudgetRequest) ProtoMessage() {} + +func (x *UpdateBudgetRequest) ProtoReflect() protoreflect.Message { + mi := &file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateBudgetRequest.ProtoReflect.Descriptor instead. +func (*UpdateBudgetRequest) Descriptor() ([]byte, []int) { + return file_google_cloud_billing_budgets_v1_budget_service_proto_rawDescGZIP(), []int{1} +} + +func (x *UpdateBudgetRequest) GetBudget() *Budget { + if x != nil { + return x.Budget + } + return nil +} + +func (x *UpdateBudgetRequest) GetUpdateMask() *fieldmaskpb.FieldMask { + if x != nil { + return x.UpdateMask + } + return nil +} + +// Request for GetBudget +type GetBudgetRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Required. Name of budget to get. Values are of the form + // `billingAccounts/{billingAccountId}/budgets/{budgetId}`. + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` +} + +func (x *GetBudgetRequest) Reset() { + *x = GetBudgetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetBudgetRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetBudgetRequest) ProtoMessage() {} + +func (x *GetBudgetRequest) ProtoReflect() protoreflect.Message { + mi := &file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetBudgetRequest.ProtoReflect.Descriptor instead. +func (*GetBudgetRequest) Descriptor() ([]byte, []int) { + return file_google_cloud_billing_budgets_v1_budget_service_proto_rawDescGZIP(), []int{2} +} + +func (x *GetBudgetRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +// Request for ListBudgets +type ListBudgetsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Required. Name of billing account to list budgets under. Values + // are of the form `billingAccounts/{billingAccountId}`. + Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` + // Optional. The maximum number of budgets to return per page. + // The default and maximum value are 100. + PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` + // Optional. The value returned by the last `ListBudgetsResponse` which + // indicates that this is a continuation of a prior `ListBudgets` call, + // and that the system should return the next page of data. + PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` +} + +func (x *ListBudgetsRequest) Reset() { + *x = ListBudgetsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListBudgetsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListBudgetsRequest) ProtoMessage() {} + +func (x *ListBudgetsRequest) ProtoReflect() protoreflect.Message { + mi := &file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListBudgetsRequest.ProtoReflect.Descriptor instead. +func (*ListBudgetsRequest) Descriptor() ([]byte, []int) { + return file_google_cloud_billing_budgets_v1_budget_service_proto_rawDescGZIP(), []int{3} +} + +func (x *ListBudgetsRequest) GetParent() string { + if x != nil { + return x.Parent + } + return "" +} + +func (x *ListBudgetsRequest) GetPageSize() int32 { + if x != nil { + return x.PageSize + } + return 0 +} + +func (x *ListBudgetsRequest) GetPageToken() string { + if x != nil { + return x.PageToken + } + return "" +} + +// Response for ListBudgets +type ListBudgetsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // List of the budgets owned by the requested billing account. + Budgets []*Budget `protobuf:"bytes,1,rep,name=budgets,proto3" json:"budgets,omitempty"` + // If not empty, indicates that there may be more budgets that match the + // request; this value should be passed in a new `ListBudgetsRequest`. + NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` +} + +func (x *ListBudgetsResponse) Reset() { + *x = ListBudgetsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListBudgetsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListBudgetsResponse) ProtoMessage() {} + +func (x *ListBudgetsResponse) ProtoReflect() protoreflect.Message { + mi := &file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListBudgetsResponse.ProtoReflect.Descriptor instead. +func (*ListBudgetsResponse) Descriptor() ([]byte, []int) { + return file_google_cloud_billing_budgets_v1_budget_service_proto_rawDescGZIP(), []int{4} +} + +func (x *ListBudgetsResponse) GetBudgets() []*Budget { + if x != nil { + return x.Budgets + } + return nil +} + +func (x *ListBudgetsResponse) GetNextPageToken() string { + if x != nil { + return x.NextPageToken + } + return "" +} + +// Request for DeleteBudget +type DeleteBudgetRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Required. Name of the budget to delete. Values are of the form + // `billingAccounts/{billingAccountId}/budgets/{budgetId}`. + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` +} + +func (x *DeleteBudgetRequest) Reset() { + *x = DeleteBudgetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteBudgetRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteBudgetRequest) ProtoMessage() {} + +func (x *DeleteBudgetRequest) ProtoReflect() protoreflect.Message { + mi := &file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteBudgetRequest.ProtoReflect.Descriptor instead. +func (*DeleteBudgetRequest) Descriptor() ([]byte, []int) { + return file_google_cloud_billing_budgets_v1_budget_service_proto_rawDescGZIP(), []int{5} +} + +func (x *DeleteBudgetRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +var File_google_cloud_billing_budgets_v1_budget_service_proto protoreflect.FileDescriptor + +var file_google_cloud_billing_budgets_v1_budget_service_proto_rawDesc = []byte{ + 0x0a, 0x34, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x62, + 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2f, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2f, 0x76, + 0x31, 0x2f, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x75, 0x64, + 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, + 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, + 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, + 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, + 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x32, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, + 0x2f, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x62, 0x75, 0x64, 0x67, + 0x65, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, + 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, + 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa1, 0x01, + 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x26, 0x12, 0x24, 0x62, + 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75, 0x64, + 0x67, 0x65, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x44, 0x0a, 0x06, 0x62, + 0x75, 0x64, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, + 0x6e, 0x67, 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, + 0x64, 0x67, 0x65, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x64, 0x67, 0x65, + 0x74, 0x22, 0x9d, 0x01, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x75, 0x64, 0x67, + 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x06, 0x62, 0x75, 0x64, + 0x67, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, + 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x64, 0x67, + 0x65, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x12, + 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, + 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, + 0x6b, 0x22, 0x54, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x2c, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x26, 0x0a, 0x24, 0x62, 0x69, 0x6c, + 0x6c, 0x69, 0x6e, 0x67, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75, 0x64, 0x67, 0x65, + 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa0, 0x01, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, + 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, + 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, + 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x26, 0x12, 0x24, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x62, + 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, + 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x52, 0x06, 0x70, 0x61, + 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, + 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, + 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x80, 0x01, 0x0a, 0x13, 0x4c, + 0x69, 0x73, 0x74, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x41, 0x0a, 0x07, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, + 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, + 0x74, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x52, 0x07, 0x62, 0x75, + 0x64, 0x67, 0x65, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, + 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, + 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x57, 0x0a, + 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x2c, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x26, 0x0a, 0x24, 0x62, 0x69, 0x6c, 0x6c, + 0x69, 0x6e, 0x67, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x32, 0xf7, 0x07, 0x0a, 0x0d, 0x42, 0x75, 0x64, 0x67, 0x65, + 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xb5, 0x01, 0x0a, 0x0c, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, + 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, + 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, + 0x31, 0x2e, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x22, 0x46, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x30, + 0x22, 0x26, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x62, 0x69, + 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, + 0x2f, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x3a, 0x06, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, + 0xda, 0x41, 0x0d, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, + 0x12, 0xc1, 0x01, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x75, 0x64, 0x67, 0x65, + 0x74, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, + 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, + 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, + 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, + 0x22, 0x52, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x37, 0x32, 0x2d, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x62, + 0x75, 0x64, 0x67, 0x65, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x62, 0x69, 0x6c, 0x6c, 0x69, + 0x6e, 0x67, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x62, 0x75, 0x64, + 0x67, 0x65, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x06, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0xda, + 0x41, 0x12, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, + 0x6d, 0x61, 0x73, 0x6b, 0x12, 0x9e, 0x01, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x42, 0x75, 0x64, 0x67, + 0x65, 0x74, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, + 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, + 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x75, 0x64, + 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x22, 0x35, + 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x28, 0x12, 0x26, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x73, 0x2f, 0x2a, 0x2f, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xb1, 0x01, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x75, + 0x64, 0x67, 0x65, 0x74, 0x73, 0x12, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, + 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x75, 0x64, + 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x75, 0x64, 0x67, + 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, + 0x67, 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, + 0x74, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x37, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x28, 0x12, 0x26, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, + 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, + 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x93, 0x01, 0x0a, 0x0c, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, + 0x67, 0x2e, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x35, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x28, + 0x2a, 0x26, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x62, 0x69, 0x6c, 0x6c, + 0x69, 0x6e, 0x67, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x62, 0x75, + 0x64, 0x67, 0x65, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, + 0x7f, 0xca, 0x41, 0x1d, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x62, 0x75, 0x64, 0x67, 0x65, + 0x74, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, + 0x6d, 0xd2, 0x41, 0x5c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, + 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, + 0x67, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, + 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x42, 0x83, 0x01, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x62, 0x75, + 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x76, 0x31, 0x42, 0x12, 0x42, 0x75, 0x64, 0x67, 0x65, 0x74, + 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x46, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, + 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x62, 0x69, 0x6c, 0x6c, + 0x69, 0x6e, 0x67, 0x2f, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2f, 0x76, 0x31, 0x3b, 0x62, + 0x75, 0x64, 0x67, 0x65, 0x74, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_google_cloud_billing_budgets_v1_budget_service_proto_rawDescOnce sync.Once + file_google_cloud_billing_budgets_v1_budget_service_proto_rawDescData = file_google_cloud_billing_budgets_v1_budget_service_proto_rawDesc +) + +func file_google_cloud_billing_budgets_v1_budget_service_proto_rawDescGZIP() []byte { + file_google_cloud_billing_budgets_v1_budget_service_proto_rawDescOnce.Do(func() { + file_google_cloud_billing_budgets_v1_budget_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_billing_budgets_v1_budget_service_proto_rawDescData) + }) + return file_google_cloud_billing_budgets_v1_budget_service_proto_rawDescData +} + +var file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes = make([]protoimpl.MessageInfo, 6) +var file_google_cloud_billing_budgets_v1_budget_service_proto_goTypes = []interface{}{ + (*CreateBudgetRequest)(nil), // 0: google.cloud.billing.budgets.v1.CreateBudgetRequest + (*UpdateBudgetRequest)(nil), // 1: google.cloud.billing.budgets.v1.UpdateBudgetRequest + (*GetBudgetRequest)(nil), // 2: google.cloud.billing.budgets.v1.GetBudgetRequest + (*ListBudgetsRequest)(nil), // 3: google.cloud.billing.budgets.v1.ListBudgetsRequest + (*ListBudgetsResponse)(nil), // 4: google.cloud.billing.budgets.v1.ListBudgetsResponse + (*DeleteBudgetRequest)(nil), // 5: google.cloud.billing.budgets.v1.DeleteBudgetRequest + (*Budget)(nil), // 6: google.cloud.billing.budgets.v1.Budget + (*fieldmaskpb.FieldMask)(nil), // 7: google.protobuf.FieldMask + (*emptypb.Empty)(nil), // 8: google.protobuf.Empty +} +var file_google_cloud_billing_budgets_v1_budget_service_proto_depIdxs = []int32{ + 6, // 0: google.cloud.billing.budgets.v1.CreateBudgetRequest.budget:type_name -> google.cloud.billing.budgets.v1.Budget + 6, // 1: google.cloud.billing.budgets.v1.UpdateBudgetRequest.budget:type_name -> google.cloud.billing.budgets.v1.Budget + 7, // 2: google.cloud.billing.budgets.v1.UpdateBudgetRequest.update_mask:type_name -> google.protobuf.FieldMask + 6, // 3: google.cloud.billing.budgets.v1.ListBudgetsResponse.budgets:type_name -> google.cloud.billing.budgets.v1.Budget + 0, // 4: google.cloud.billing.budgets.v1.BudgetService.CreateBudget:input_type -> google.cloud.billing.budgets.v1.CreateBudgetRequest + 1, // 5: google.cloud.billing.budgets.v1.BudgetService.UpdateBudget:input_type -> google.cloud.billing.budgets.v1.UpdateBudgetRequest + 2, // 6: google.cloud.billing.budgets.v1.BudgetService.GetBudget:input_type -> google.cloud.billing.budgets.v1.GetBudgetRequest + 3, // 7: google.cloud.billing.budgets.v1.BudgetService.ListBudgets:input_type -> google.cloud.billing.budgets.v1.ListBudgetsRequest + 5, // 8: google.cloud.billing.budgets.v1.BudgetService.DeleteBudget:input_type -> google.cloud.billing.budgets.v1.DeleteBudgetRequest + 6, // 9: google.cloud.billing.budgets.v1.BudgetService.CreateBudget:output_type -> google.cloud.billing.budgets.v1.Budget + 6, // 10: google.cloud.billing.budgets.v1.BudgetService.UpdateBudget:output_type -> google.cloud.billing.budgets.v1.Budget + 6, // 11: google.cloud.billing.budgets.v1.BudgetService.GetBudget:output_type -> google.cloud.billing.budgets.v1.Budget + 4, // 12: google.cloud.billing.budgets.v1.BudgetService.ListBudgets:output_type -> google.cloud.billing.budgets.v1.ListBudgetsResponse + 8, // 13: google.cloud.billing.budgets.v1.BudgetService.DeleteBudget:output_type -> google.protobuf.Empty + 9, // [9:14] is the sub-list for method output_type + 4, // [4:9] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name +} + +func init() { file_google_cloud_billing_budgets_v1_budget_service_proto_init() } +func file_google_cloud_billing_budgets_v1_budget_service_proto_init() { + if File_google_cloud_billing_budgets_v1_budget_service_proto != nil { + return + } + file_google_cloud_billing_budgets_v1_budget_model_proto_init() + if !protoimpl.UnsafeEnabled { + file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateBudgetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateBudgetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetBudgetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListBudgetsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListBudgetsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteBudgetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_google_cloud_billing_budgets_v1_budget_service_proto_rawDesc, + NumEnums: 0, + NumMessages: 6, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_google_cloud_billing_budgets_v1_budget_service_proto_goTypes, + DependencyIndexes: file_google_cloud_billing_budgets_v1_budget_service_proto_depIdxs, + MessageInfos: file_google_cloud_billing_budgets_v1_budget_service_proto_msgTypes, + }.Build() + File_google_cloud_billing_budgets_v1_budget_service_proto = out.File + file_google_cloud_billing_budgets_v1_budget_service_proto_rawDesc = nil + file_google_cloud_billing_budgets_v1_budget_service_proto_goTypes = nil + file_google_cloud_billing_budgets_v1_budget_service_proto_depIdxs = nil +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConnInterface + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion6 + +// BudgetServiceClient is the client API for BudgetService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type BudgetServiceClient interface { + // Creates a new budget. See + // [Quotas and limits](https://cloud.google.com/billing/quotas) + // for more information on the limits of the number of budgets you can create. + CreateBudget(ctx context.Context, in *CreateBudgetRequest, opts ...grpc.CallOption) (*Budget, error) + // Updates a budget and returns the updated budget. + // + // WARNING: There are some fields exposed on the Google Cloud Console that + // aren't available on this API. Budget fields that are not exposed in + // this API will not be changed by this method. + UpdateBudget(ctx context.Context, in *UpdateBudgetRequest, opts ...grpc.CallOption) (*Budget, error) + // Returns a budget. + // + // WARNING: There are some fields exposed on the Google Cloud Console that + // aren't available on this API. When reading from the API, you will not + // see these fields in the return value, though they may have been set + // in the Cloud Console. + GetBudget(ctx context.Context, in *GetBudgetRequest, opts ...grpc.CallOption) (*Budget, error) + // Returns a list of budgets for a billing account. + // + // WARNING: There are some fields exposed on the Google Cloud Console that + // aren't available on this API. When reading from the API, you will not + // see these fields in the return value, though they may have been set + // in the Cloud Console. + ListBudgets(ctx context.Context, in *ListBudgetsRequest, opts ...grpc.CallOption) (*ListBudgetsResponse, error) + // Deletes a budget. Returns successfully if already deleted. + DeleteBudget(ctx context.Context, in *DeleteBudgetRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) +} + +type budgetServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewBudgetServiceClient(cc grpc.ClientConnInterface) BudgetServiceClient { + return &budgetServiceClient{cc} +} + +func (c *budgetServiceClient) CreateBudget(ctx context.Context, in *CreateBudgetRequest, opts ...grpc.CallOption) (*Budget, error) { + out := new(Budget) + err := c.cc.Invoke(ctx, "/google.cloud.billing.budgets.v1.BudgetService/CreateBudget", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *budgetServiceClient) UpdateBudget(ctx context.Context, in *UpdateBudgetRequest, opts ...grpc.CallOption) (*Budget, error) { + out := new(Budget) + err := c.cc.Invoke(ctx, "/google.cloud.billing.budgets.v1.BudgetService/UpdateBudget", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *budgetServiceClient) GetBudget(ctx context.Context, in *GetBudgetRequest, opts ...grpc.CallOption) (*Budget, error) { + out := new(Budget) + err := c.cc.Invoke(ctx, "/google.cloud.billing.budgets.v1.BudgetService/GetBudget", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *budgetServiceClient) ListBudgets(ctx context.Context, in *ListBudgetsRequest, opts ...grpc.CallOption) (*ListBudgetsResponse, error) { + out := new(ListBudgetsResponse) + err := c.cc.Invoke(ctx, "/google.cloud.billing.budgets.v1.BudgetService/ListBudgets", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *budgetServiceClient) DeleteBudget(ctx context.Context, in *DeleteBudgetRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) + err := c.cc.Invoke(ctx, "/google.cloud.billing.budgets.v1.BudgetService/DeleteBudget", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// BudgetServiceServer is the server API for BudgetService service. +type BudgetServiceServer interface { + // Creates a new budget. See + // [Quotas and limits](https://cloud.google.com/billing/quotas) + // for more information on the limits of the number of budgets you can create. + CreateBudget(context.Context, *CreateBudgetRequest) (*Budget, error) + // Updates a budget and returns the updated budget. + // + // WARNING: There are some fields exposed on the Google Cloud Console that + // aren't available on this API. Budget fields that are not exposed in + // this API will not be changed by this method. + UpdateBudget(context.Context, *UpdateBudgetRequest) (*Budget, error) + // Returns a budget. + // + // WARNING: There are some fields exposed on the Google Cloud Console that + // aren't available on this API. When reading from the API, you will not + // see these fields in the return value, though they may have been set + // in the Cloud Console. + GetBudget(context.Context, *GetBudgetRequest) (*Budget, error) + // Returns a list of budgets for a billing account. + // + // WARNING: There are some fields exposed on the Google Cloud Console that + // aren't available on this API. When reading from the API, you will not + // see these fields in the return value, though they may have been set + // in the Cloud Console. + ListBudgets(context.Context, *ListBudgetsRequest) (*ListBudgetsResponse, error) + // Deletes a budget. Returns successfully if already deleted. + DeleteBudget(context.Context, *DeleteBudgetRequest) (*emptypb.Empty, error) +} + +// UnimplementedBudgetServiceServer can be embedded to have forward compatible implementations. +type UnimplementedBudgetServiceServer struct { +} + +func (*UnimplementedBudgetServiceServer) CreateBudget(context.Context, *CreateBudgetRequest) (*Budget, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateBudget not implemented") +} +func (*UnimplementedBudgetServiceServer) UpdateBudget(context.Context, *UpdateBudgetRequest) (*Budget, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateBudget not implemented") +} +func (*UnimplementedBudgetServiceServer) GetBudget(context.Context, *GetBudgetRequest) (*Budget, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetBudget not implemented") +} +func (*UnimplementedBudgetServiceServer) ListBudgets(context.Context, *ListBudgetsRequest) (*ListBudgetsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListBudgets not implemented") +} +func (*UnimplementedBudgetServiceServer) DeleteBudget(context.Context, *DeleteBudgetRequest) (*emptypb.Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteBudget not implemented") +} + +func RegisterBudgetServiceServer(s *grpc.Server, srv BudgetServiceServer) { + s.RegisterService(&_BudgetService_serviceDesc, srv) +} + +func _BudgetService_CreateBudget_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateBudgetRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BudgetServiceServer).CreateBudget(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/google.cloud.billing.budgets.v1.BudgetService/CreateBudget", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BudgetServiceServer).CreateBudget(ctx, req.(*CreateBudgetRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _BudgetService_UpdateBudget_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(UpdateBudgetRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BudgetServiceServer).UpdateBudget(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/google.cloud.billing.budgets.v1.BudgetService/UpdateBudget", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BudgetServiceServer).UpdateBudget(ctx, req.(*UpdateBudgetRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _BudgetService_GetBudget_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetBudgetRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BudgetServiceServer).GetBudget(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/google.cloud.billing.budgets.v1.BudgetService/GetBudget", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BudgetServiceServer).GetBudget(ctx, req.(*GetBudgetRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _BudgetService_ListBudgets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListBudgetsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BudgetServiceServer).ListBudgets(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/google.cloud.billing.budgets.v1.BudgetService/ListBudgets", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BudgetServiceServer).ListBudgets(ctx, req.(*ListBudgetsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _BudgetService_DeleteBudget_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteBudgetRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BudgetServiceServer).DeleteBudget(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/google.cloud.billing.budgets.v1.BudgetService/DeleteBudget", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BudgetServiceServer).DeleteBudget(ctx, req.(*DeleteBudgetRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _BudgetService_serviceDesc = grpc.ServiceDesc{ + ServiceName: "google.cloud.billing.budgets.v1.BudgetService", + HandlerType: (*BudgetServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "CreateBudget", + Handler: _BudgetService_CreateBudget_Handler, + }, + { + MethodName: "UpdateBudget", + Handler: _BudgetService_UpdateBudget_Handler, + }, + { + MethodName: "GetBudget", + Handler: _BudgetService_GetBudget_Handler, + }, + { + MethodName: "ListBudgets", + Handler: _BudgetService_ListBudgets_Handler, + }, + { + MethodName: "DeleteBudget", + Handler: _BudgetService_DeleteBudget_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "google/cloud/billing/budgets/v1/budget_service.proto", +}