1// Copyright 2021 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// Code generated by protoc-gen-go. DO NOT EDIT. 16// versions: 17// protoc-gen-go v1.26.0 18// protoc v3.12.2 19// source: google/analytics/data/v1beta/analytics_data_api.proto 20 21package data 22 23import ( 24 context "context" 25 reflect "reflect" 26 sync "sync" 27 28 _ "google.golang.org/genproto/googleapis/api/annotations" 29 grpc "google.golang.org/grpc" 30 codes "google.golang.org/grpc/codes" 31 status "google.golang.org/grpc/status" 32 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 33 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 34) 35 36const ( 37 // Verify that this generated code is sufficiently up-to-date. 38 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 39 // Verify that runtime/protoimpl is sufficiently up-to-date. 40 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 41) 42 43// The dimensions and metrics currently accepted in reporting methods. 44type Metadata struct { 45 state protoimpl.MessageState 46 sizeCache protoimpl.SizeCache 47 unknownFields protoimpl.UnknownFields 48 49 // Resource name of this metadata. 50 Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` 51 // The dimension descriptions. 52 Dimensions []*DimensionMetadata `protobuf:"bytes,1,rep,name=dimensions,proto3" json:"dimensions,omitempty"` 53 // The metric descriptions. 54 Metrics []*MetricMetadata `protobuf:"bytes,2,rep,name=metrics,proto3" json:"metrics,omitempty"` 55} 56 57func (x *Metadata) Reset() { 58 *x = Metadata{} 59 if protoimpl.UnsafeEnabled { 60 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[0] 61 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 62 ms.StoreMessageInfo(mi) 63 } 64} 65 66func (x *Metadata) String() string { 67 return protoimpl.X.MessageStringOf(x) 68} 69 70func (*Metadata) ProtoMessage() {} 71 72func (x *Metadata) ProtoReflect() protoreflect.Message { 73 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[0] 74 if protoimpl.UnsafeEnabled && x != nil { 75 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 76 if ms.LoadMessageInfo() == nil { 77 ms.StoreMessageInfo(mi) 78 } 79 return ms 80 } 81 return mi.MessageOf(x) 82} 83 84// Deprecated: Use Metadata.ProtoReflect.Descriptor instead. 85func (*Metadata) Descriptor() ([]byte, []int) { 86 return file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescGZIP(), []int{0} 87} 88 89func (x *Metadata) GetName() string { 90 if x != nil { 91 return x.Name 92 } 93 return "" 94} 95 96func (x *Metadata) GetDimensions() []*DimensionMetadata { 97 if x != nil { 98 return x.Dimensions 99 } 100 return nil 101} 102 103func (x *Metadata) GetMetrics() []*MetricMetadata { 104 if x != nil { 105 return x.Metrics 106 } 107 return nil 108} 109 110// The request to generate a report. 111type RunReportRequest struct { 112 state protoimpl.MessageState 113 sizeCache protoimpl.SizeCache 114 unknownFields protoimpl.UnknownFields 115 116 // A Google Analytics GA4 property identifier whose events are tracked. 117 // Specified in the URL path and not the body. To learn more, see [where to 118 // find your Property 119 // ID](https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). 120 // Within a batch request, this property should either be unspecified or 121 // consistent with the batch-level property. 122 // 123 // Example: properties/1234 124 Property string `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"` 125 // The dimensions requested and displayed. 126 Dimensions []*Dimension `protobuf:"bytes,2,rep,name=dimensions,proto3" json:"dimensions,omitempty"` 127 // The metrics requested and displayed. 128 Metrics []*Metric `protobuf:"bytes,3,rep,name=metrics,proto3" json:"metrics,omitempty"` 129 // Date ranges of data to read. If multiple date ranges are requested, each 130 // response row will contain a zero based date range index. If two date 131 // ranges overlap, the event data for the overlapping days is included in the 132 // response rows for both date ranges. In a cohort request, this `dateRanges` 133 // must be unspecified. 134 DateRanges []*DateRange `protobuf:"bytes,4,rep,name=date_ranges,json=dateRanges,proto3" json:"date_ranges,omitempty"` 135 // The filter clause of dimensions. Dimensions must be requested to be used in 136 // this filter. Metrics cannot be used in this filter. 137 DimensionFilter *FilterExpression `protobuf:"bytes,5,opt,name=dimension_filter,json=dimensionFilter,proto3" json:"dimension_filter,omitempty"` 138 // The filter clause of metrics. Applied at post aggregation phase, similar to 139 // SQL having-clause. Metrics must be requested to be used in this filter. 140 // Dimensions cannot be used in this filter. 141 MetricFilter *FilterExpression `protobuf:"bytes,6,opt,name=metric_filter,json=metricFilter,proto3" json:"metric_filter,omitempty"` 142 // The row count of the start row. The first row is counted as row 0. 143 // 144 // When paging, the first request does not specify offset; or equivalently, 145 // sets offset to 0; the first request returns the first `limit` of rows. The 146 // second request sets offset to the `limit` of the first request; the second 147 // request returns the second `limit` of rows. 148 // 149 // To learn more about this pagination parameter, see 150 // [Pagination](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). 151 Offset int64 `protobuf:"varint,7,opt,name=offset,proto3" json:"offset,omitempty"` 152 // The number of rows to return. If unspecified, 10,000 rows are returned. The 153 // API returns a maximum of 100,000 rows per request, no matter how many you 154 // ask for. `limit` must be positive. 155 // 156 // The API can also return fewer rows than the requested `limit`, if there 157 // aren't as many dimension values as the `limit`. For instance, there are 158 // fewer than 300 possible values for the dimension `country`, so when 159 // reporting on only `country`, you can't get more than 300 rows, even if you 160 // set `limit` to a higher value. 161 // 162 // To learn more about this pagination parameter, see 163 // [Pagination](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). 164 Limit int64 `protobuf:"varint,8,opt,name=limit,proto3" json:"limit,omitempty"` 165 // Aggregation of metrics. Aggregated metric values will be shown in rows 166 // where the dimension_values are set to "RESERVED_(MetricAggregation)". 167 MetricAggregations []MetricAggregation `protobuf:"varint,9,rep,packed,name=metric_aggregations,json=metricAggregations,proto3,enum=google.analytics.data.v1beta.MetricAggregation" json:"metric_aggregations,omitempty"` 168 // Specifies how rows are ordered in the response. 169 OrderBys []*OrderBy `protobuf:"bytes,10,rep,name=order_bys,json=orderBys,proto3" json:"order_bys,omitempty"` 170 // A currency code in ISO4217 format, such as "AED", "USD", "JPY". 171 // If the field is empty, the report uses the property's default currency. 172 CurrencyCode string `protobuf:"bytes,11,opt,name=currency_code,json=currencyCode,proto3" json:"currency_code,omitempty"` 173 // Cohort group associated with this request. If there is a cohort group 174 // in the request the 'cohort' dimension must be present. 175 CohortSpec *CohortSpec `protobuf:"bytes,12,opt,name=cohort_spec,json=cohortSpec,proto3" json:"cohort_spec,omitempty"` 176 // If false or unspecified, each row with all metrics equal to 0 will not be 177 // returned. If true, these rows will be returned if they are not separately 178 // removed by a filter. 179 KeepEmptyRows bool `protobuf:"varint,13,opt,name=keep_empty_rows,json=keepEmptyRows,proto3" json:"keep_empty_rows,omitempty"` 180 // Toggles whether to return the current state of this Analytics Property's 181 // quota. Quota is returned in [PropertyQuota](#PropertyQuota). 182 ReturnPropertyQuota bool `protobuf:"varint,14,opt,name=return_property_quota,json=returnPropertyQuota,proto3" json:"return_property_quota,omitempty"` 183} 184 185func (x *RunReportRequest) Reset() { 186 *x = RunReportRequest{} 187 if protoimpl.UnsafeEnabled { 188 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[1] 189 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 190 ms.StoreMessageInfo(mi) 191 } 192} 193 194func (x *RunReportRequest) String() string { 195 return protoimpl.X.MessageStringOf(x) 196} 197 198func (*RunReportRequest) ProtoMessage() {} 199 200func (x *RunReportRequest) ProtoReflect() protoreflect.Message { 201 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[1] 202 if protoimpl.UnsafeEnabled && x != nil { 203 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 204 if ms.LoadMessageInfo() == nil { 205 ms.StoreMessageInfo(mi) 206 } 207 return ms 208 } 209 return mi.MessageOf(x) 210} 211 212// Deprecated: Use RunReportRequest.ProtoReflect.Descriptor instead. 213func (*RunReportRequest) Descriptor() ([]byte, []int) { 214 return file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescGZIP(), []int{1} 215} 216 217func (x *RunReportRequest) GetProperty() string { 218 if x != nil { 219 return x.Property 220 } 221 return "" 222} 223 224func (x *RunReportRequest) GetDimensions() []*Dimension { 225 if x != nil { 226 return x.Dimensions 227 } 228 return nil 229} 230 231func (x *RunReportRequest) GetMetrics() []*Metric { 232 if x != nil { 233 return x.Metrics 234 } 235 return nil 236} 237 238func (x *RunReportRequest) GetDateRanges() []*DateRange { 239 if x != nil { 240 return x.DateRanges 241 } 242 return nil 243} 244 245func (x *RunReportRequest) GetDimensionFilter() *FilterExpression { 246 if x != nil { 247 return x.DimensionFilter 248 } 249 return nil 250} 251 252func (x *RunReportRequest) GetMetricFilter() *FilterExpression { 253 if x != nil { 254 return x.MetricFilter 255 } 256 return nil 257} 258 259func (x *RunReportRequest) GetOffset() int64 { 260 if x != nil { 261 return x.Offset 262 } 263 return 0 264} 265 266func (x *RunReportRequest) GetLimit() int64 { 267 if x != nil { 268 return x.Limit 269 } 270 return 0 271} 272 273func (x *RunReportRequest) GetMetricAggregations() []MetricAggregation { 274 if x != nil { 275 return x.MetricAggregations 276 } 277 return nil 278} 279 280func (x *RunReportRequest) GetOrderBys() []*OrderBy { 281 if x != nil { 282 return x.OrderBys 283 } 284 return nil 285} 286 287func (x *RunReportRequest) GetCurrencyCode() string { 288 if x != nil { 289 return x.CurrencyCode 290 } 291 return "" 292} 293 294func (x *RunReportRequest) GetCohortSpec() *CohortSpec { 295 if x != nil { 296 return x.CohortSpec 297 } 298 return nil 299} 300 301func (x *RunReportRequest) GetKeepEmptyRows() bool { 302 if x != nil { 303 return x.KeepEmptyRows 304 } 305 return false 306} 307 308func (x *RunReportRequest) GetReturnPropertyQuota() bool { 309 if x != nil { 310 return x.ReturnPropertyQuota 311 } 312 return false 313} 314 315// The response report table corresponding to a request. 316type RunReportResponse struct { 317 state protoimpl.MessageState 318 sizeCache protoimpl.SizeCache 319 unknownFields protoimpl.UnknownFields 320 321 // Describes dimension columns. The number of DimensionHeaders and ordering of 322 // DimensionHeaders matches the dimensions present in rows. 323 DimensionHeaders []*DimensionHeader `protobuf:"bytes,1,rep,name=dimension_headers,json=dimensionHeaders,proto3" json:"dimension_headers,omitempty"` 324 // Describes metric columns. The number of MetricHeaders and ordering of 325 // MetricHeaders matches the metrics present in rows. 326 MetricHeaders []*MetricHeader `protobuf:"bytes,2,rep,name=metric_headers,json=metricHeaders,proto3" json:"metric_headers,omitempty"` 327 // Rows of dimension value combinations and metric values in the report. 328 Rows []*Row `protobuf:"bytes,3,rep,name=rows,proto3" json:"rows,omitempty"` 329 // If requested, the totaled values of metrics. 330 Totals []*Row `protobuf:"bytes,4,rep,name=totals,proto3" json:"totals,omitempty"` 331 // If requested, the maximum values of metrics. 332 Maximums []*Row `protobuf:"bytes,5,rep,name=maximums,proto3" json:"maximums,omitempty"` 333 // If requested, the minimum values of metrics. 334 Minimums []*Row `protobuf:"bytes,6,rep,name=minimums,proto3" json:"minimums,omitempty"` 335 // The total number of rows in the query result. `rowCount` is independent of 336 // the number of rows returned in the response, the `limit` request 337 // parameter, and the `offset` request parameter. For example if a query 338 // returns 175 rows and includes `limit` of 50 in the API request, the 339 // response will contain `rowCount` of 175 but only 50 rows. 340 // 341 // To learn more about this pagination parameter, see 342 // [Pagination](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). 343 RowCount int32 `protobuf:"varint,7,opt,name=row_count,json=rowCount,proto3" json:"row_count,omitempty"` 344 // Metadata for the report. 345 Metadata *ResponseMetaData `protobuf:"bytes,8,opt,name=metadata,proto3" json:"metadata,omitempty"` 346 // This Analytics Property's quota state including this request. 347 PropertyQuota *PropertyQuota `protobuf:"bytes,9,opt,name=property_quota,json=propertyQuota,proto3" json:"property_quota,omitempty"` 348 // Identifies what kind of resource this message is. This `kind` is always the 349 // fixed string "analyticsData#runReport". Useful to distinguish between 350 // response types in JSON. 351 Kind string `protobuf:"bytes,10,opt,name=kind,proto3" json:"kind,omitempty"` 352} 353 354func (x *RunReportResponse) Reset() { 355 *x = RunReportResponse{} 356 if protoimpl.UnsafeEnabled { 357 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[2] 358 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 359 ms.StoreMessageInfo(mi) 360 } 361} 362 363func (x *RunReportResponse) String() string { 364 return protoimpl.X.MessageStringOf(x) 365} 366 367func (*RunReportResponse) ProtoMessage() {} 368 369func (x *RunReportResponse) ProtoReflect() protoreflect.Message { 370 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[2] 371 if protoimpl.UnsafeEnabled && x != nil { 372 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 373 if ms.LoadMessageInfo() == nil { 374 ms.StoreMessageInfo(mi) 375 } 376 return ms 377 } 378 return mi.MessageOf(x) 379} 380 381// Deprecated: Use RunReportResponse.ProtoReflect.Descriptor instead. 382func (*RunReportResponse) Descriptor() ([]byte, []int) { 383 return file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescGZIP(), []int{2} 384} 385 386func (x *RunReportResponse) GetDimensionHeaders() []*DimensionHeader { 387 if x != nil { 388 return x.DimensionHeaders 389 } 390 return nil 391} 392 393func (x *RunReportResponse) GetMetricHeaders() []*MetricHeader { 394 if x != nil { 395 return x.MetricHeaders 396 } 397 return nil 398} 399 400func (x *RunReportResponse) GetRows() []*Row { 401 if x != nil { 402 return x.Rows 403 } 404 return nil 405} 406 407func (x *RunReportResponse) GetTotals() []*Row { 408 if x != nil { 409 return x.Totals 410 } 411 return nil 412} 413 414func (x *RunReportResponse) GetMaximums() []*Row { 415 if x != nil { 416 return x.Maximums 417 } 418 return nil 419} 420 421func (x *RunReportResponse) GetMinimums() []*Row { 422 if x != nil { 423 return x.Minimums 424 } 425 return nil 426} 427 428func (x *RunReportResponse) GetRowCount() int32 { 429 if x != nil { 430 return x.RowCount 431 } 432 return 0 433} 434 435func (x *RunReportResponse) GetMetadata() *ResponseMetaData { 436 if x != nil { 437 return x.Metadata 438 } 439 return nil 440} 441 442func (x *RunReportResponse) GetPropertyQuota() *PropertyQuota { 443 if x != nil { 444 return x.PropertyQuota 445 } 446 return nil 447} 448 449func (x *RunReportResponse) GetKind() string { 450 if x != nil { 451 return x.Kind 452 } 453 return "" 454} 455 456// The request to generate a pivot report. 457type RunPivotReportRequest struct { 458 state protoimpl.MessageState 459 sizeCache protoimpl.SizeCache 460 unknownFields protoimpl.UnknownFields 461 462 // A Google Analytics GA4 property identifier whose events are tracked. 463 // Specified in the URL path and not the body. To learn more, see [where to 464 // find your Property 465 // ID](https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). 466 // Within a batch request, this property should either be unspecified or 467 // consistent with the batch-level property. 468 // 469 // Example: properties/1234 470 Property string `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"` 471 // The dimensions requested. All defined dimensions must be used by one of the 472 // following: dimension_expression, dimension_filter, pivots, order_bys. 473 Dimensions []*Dimension `protobuf:"bytes,2,rep,name=dimensions,proto3" json:"dimensions,omitempty"` 474 // The metrics requested, at least one metric needs to be specified. All 475 // defined metrics must be used by one of the following: metric_expression, 476 // metric_filter, order_bys. 477 Metrics []*Metric `protobuf:"bytes,3,rep,name=metrics,proto3" json:"metrics,omitempty"` 478 // The date range to retrieve event data for the report. If multiple date 479 // ranges are specified, event data from each date range is used in the 480 // report. A special dimension with field name "dateRange" can be included in 481 // a Pivot's field names; if included, the report compares between date 482 // ranges. In a cohort request, this `dateRanges` must be unspecified. 483 DateRanges []*DateRange `protobuf:"bytes,4,rep,name=date_ranges,json=dateRanges,proto3" json:"date_ranges,omitempty"` 484 // Describes the visual format of the report's dimensions in columns or rows. 485 // The union of the fieldNames (dimension names) in all pivots must be a 486 // subset of dimension names defined in Dimensions. No two pivots can share a 487 // dimension. A dimension is only visible if it appears in a pivot. 488 Pivots []*Pivot `protobuf:"bytes,5,rep,name=pivots,proto3" json:"pivots,omitempty"` 489 // The filter clause of dimensions. Dimensions must be requested to be used in 490 // this filter. Metrics cannot be used in this filter. 491 DimensionFilter *FilterExpression `protobuf:"bytes,6,opt,name=dimension_filter,json=dimensionFilter,proto3" json:"dimension_filter,omitempty"` 492 // The filter clause of metrics. Applied at post aggregation phase, similar to 493 // SQL having-clause. Metrics must be requested to be used in this filter. 494 // Dimensions cannot be used in this filter. 495 MetricFilter *FilterExpression `protobuf:"bytes,7,opt,name=metric_filter,json=metricFilter,proto3" json:"metric_filter,omitempty"` 496 // A currency code in ISO4217 format, such as "AED", "USD", "JPY". 497 // If the field is empty, the report uses the property's default currency. 498 CurrencyCode string `protobuf:"bytes,8,opt,name=currency_code,json=currencyCode,proto3" json:"currency_code,omitempty"` 499 // Cohort group associated with this request. If there is a cohort group 500 // in the request the 'cohort' dimension must be present. 501 CohortSpec *CohortSpec `protobuf:"bytes,9,opt,name=cohort_spec,json=cohortSpec,proto3" json:"cohort_spec,omitempty"` 502 // If false or unspecified, each row with all metrics equal to 0 will not be 503 // returned. If true, these rows will be returned if they are not separately 504 // removed by a filter. 505 KeepEmptyRows bool `protobuf:"varint,10,opt,name=keep_empty_rows,json=keepEmptyRows,proto3" json:"keep_empty_rows,omitempty"` 506 // Toggles whether to return the current state of this Analytics Property's 507 // quota. Quota is returned in [PropertyQuota](#PropertyQuota). 508 ReturnPropertyQuota bool `protobuf:"varint,11,opt,name=return_property_quota,json=returnPropertyQuota,proto3" json:"return_property_quota,omitempty"` 509} 510 511func (x *RunPivotReportRequest) Reset() { 512 *x = RunPivotReportRequest{} 513 if protoimpl.UnsafeEnabled { 514 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[3] 515 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 516 ms.StoreMessageInfo(mi) 517 } 518} 519 520func (x *RunPivotReportRequest) String() string { 521 return protoimpl.X.MessageStringOf(x) 522} 523 524func (*RunPivotReportRequest) ProtoMessage() {} 525 526func (x *RunPivotReportRequest) ProtoReflect() protoreflect.Message { 527 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[3] 528 if protoimpl.UnsafeEnabled && x != nil { 529 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 530 if ms.LoadMessageInfo() == nil { 531 ms.StoreMessageInfo(mi) 532 } 533 return ms 534 } 535 return mi.MessageOf(x) 536} 537 538// Deprecated: Use RunPivotReportRequest.ProtoReflect.Descriptor instead. 539func (*RunPivotReportRequest) Descriptor() ([]byte, []int) { 540 return file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescGZIP(), []int{3} 541} 542 543func (x *RunPivotReportRequest) GetProperty() string { 544 if x != nil { 545 return x.Property 546 } 547 return "" 548} 549 550func (x *RunPivotReportRequest) GetDimensions() []*Dimension { 551 if x != nil { 552 return x.Dimensions 553 } 554 return nil 555} 556 557func (x *RunPivotReportRequest) GetMetrics() []*Metric { 558 if x != nil { 559 return x.Metrics 560 } 561 return nil 562} 563 564func (x *RunPivotReportRequest) GetDateRanges() []*DateRange { 565 if x != nil { 566 return x.DateRanges 567 } 568 return nil 569} 570 571func (x *RunPivotReportRequest) GetPivots() []*Pivot { 572 if x != nil { 573 return x.Pivots 574 } 575 return nil 576} 577 578func (x *RunPivotReportRequest) GetDimensionFilter() *FilterExpression { 579 if x != nil { 580 return x.DimensionFilter 581 } 582 return nil 583} 584 585func (x *RunPivotReportRequest) GetMetricFilter() *FilterExpression { 586 if x != nil { 587 return x.MetricFilter 588 } 589 return nil 590} 591 592func (x *RunPivotReportRequest) GetCurrencyCode() string { 593 if x != nil { 594 return x.CurrencyCode 595 } 596 return "" 597} 598 599func (x *RunPivotReportRequest) GetCohortSpec() *CohortSpec { 600 if x != nil { 601 return x.CohortSpec 602 } 603 return nil 604} 605 606func (x *RunPivotReportRequest) GetKeepEmptyRows() bool { 607 if x != nil { 608 return x.KeepEmptyRows 609 } 610 return false 611} 612 613func (x *RunPivotReportRequest) GetReturnPropertyQuota() bool { 614 if x != nil { 615 return x.ReturnPropertyQuota 616 } 617 return false 618} 619 620// The response pivot report table corresponding to a pivot request. 621type RunPivotReportResponse struct { 622 state protoimpl.MessageState 623 sizeCache protoimpl.SizeCache 624 unknownFields protoimpl.UnknownFields 625 626 // Summarizes the columns and rows created by a pivot. Each pivot in the 627 // request produces one header in the response. If we have a request like 628 // this: 629 // 630 // "pivots": [{ 631 // "fieldNames": ["country", 632 // "city"] 633 // }, 634 // { 635 // "fieldNames": "eventName" 636 // }] 637 // 638 // We will have the following `pivotHeaders` in the response: 639 // 640 // "pivotHeaders" : [{ 641 // "dimensionHeaders": [{ 642 // "dimensionValues": [ 643 // { "value": "United Kingdom" }, 644 // { "value": "London" } 645 // ] 646 // }, 647 // { 648 // "dimensionValues": [ 649 // { "value": "Japan" }, 650 // { "value": "Osaka" } 651 // ] 652 // }] 653 // }, 654 // { 655 // "dimensionHeaders": [{ 656 // "dimensionValues": [{ "value": "session_start" }] 657 // }, 658 // { 659 // "dimensionValues": [{ "value": "scroll" }] 660 // }] 661 // }] 662 PivotHeaders []*PivotHeader `protobuf:"bytes,1,rep,name=pivot_headers,json=pivotHeaders,proto3" json:"pivot_headers,omitempty"` 663 // Describes dimension columns. The number of DimensionHeaders and ordering of 664 // DimensionHeaders matches the dimensions present in rows. 665 DimensionHeaders []*DimensionHeader `protobuf:"bytes,2,rep,name=dimension_headers,json=dimensionHeaders,proto3" json:"dimension_headers,omitempty"` 666 // Describes metric columns. The number of MetricHeaders and ordering of 667 // MetricHeaders matches the metrics present in rows. 668 MetricHeaders []*MetricHeader `protobuf:"bytes,3,rep,name=metric_headers,json=metricHeaders,proto3" json:"metric_headers,omitempty"` 669 // Rows of dimension value combinations and metric values in the report. 670 Rows []*Row `protobuf:"bytes,4,rep,name=rows,proto3" json:"rows,omitempty"` 671 // Aggregation of metric values. Can be totals, minimums, or maximums. The 672 // returned aggregations are controlled by the metric_aggregations in the 673 // pivot. The type of aggregation returned in each row is shown by the 674 // dimension_values which are set to "RESERVED_<MetricAggregation>". 675 Aggregates []*Row `protobuf:"bytes,5,rep,name=aggregates,proto3" json:"aggregates,omitempty"` 676 // Metadata for the report. 677 Metadata *ResponseMetaData `protobuf:"bytes,6,opt,name=metadata,proto3" json:"metadata,omitempty"` 678 // This Analytics Property's quota state including this request. 679 PropertyQuota *PropertyQuota `protobuf:"bytes,7,opt,name=property_quota,json=propertyQuota,proto3" json:"property_quota,omitempty"` 680 // Identifies what kind of resource this message is. This `kind` is always the 681 // fixed string "analyticsData#runPivotReport". Useful to distinguish between 682 // response types in JSON. 683 Kind string `protobuf:"bytes,8,opt,name=kind,proto3" json:"kind,omitempty"` 684} 685 686func (x *RunPivotReportResponse) Reset() { 687 *x = RunPivotReportResponse{} 688 if protoimpl.UnsafeEnabled { 689 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[4] 690 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 691 ms.StoreMessageInfo(mi) 692 } 693} 694 695func (x *RunPivotReportResponse) String() string { 696 return protoimpl.X.MessageStringOf(x) 697} 698 699func (*RunPivotReportResponse) ProtoMessage() {} 700 701func (x *RunPivotReportResponse) ProtoReflect() protoreflect.Message { 702 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[4] 703 if protoimpl.UnsafeEnabled && x != nil { 704 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 705 if ms.LoadMessageInfo() == nil { 706 ms.StoreMessageInfo(mi) 707 } 708 return ms 709 } 710 return mi.MessageOf(x) 711} 712 713// Deprecated: Use RunPivotReportResponse.ProtoReflect.Descriptor instead. 714func (*RunPivotReportResponse) Descriptor() ([]byte, []int) { 715 return file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescGZIP(), []int{4} 716} 717 718func (x *RunPivotReportResponse) GetPivotHeaders() []*PivotHeader { 719 if x != nil { 720 return x.PivotHeaders 721 } 722 return nil 723} 724 725func (x *RunPivotReportResponse) GetDimensionHeaders() []*DimensionHeader { 726 if x != nil { 727 return x.DimensionHeaders 728 } 729 return nil 730} 731 732func (x *RunPivotReportResponse) GetMetricHeaders() []*MetricHeader { 733 if x != nil { 734 return x.MetricHeaders 735 } 736 return nil 737} 738 739func (x *RunPivotReportResponse) GetRows() []*Row { 740 if x != nil { 741 return x.Rows 742 } 743 return nil 744} 745 746func (x *RunPivotReportResponse) GetAggregates() []*Row { 747 if x != nil { 748 return x.Aggregates 749 } 750 return nil 751} 752 753func (x *RunPivotReportResponse) GetMetadata() *ResponseMetaData { 754 if x != nil { 755 return x.Metadata 756 } 757 return nil 758} 759 760func (x *RunPivotReportResponse) GetPropertyQuota() *PropertyQuota { 761 if x != nil { 762 return x.PropertyQuota 763 } 764 return nil 765} 766 767func (x *RunPivotReportResponse) GetKind() string { 768 if x != nil { 769 return x.Kind 770 } 771 return "" 772} 773 774// The batch request containing multiple report requests. 775type BatchRunReportsRequest struct { 776 state protoimpl.MessageState 777 sizeCache protoimpl.SizeCache 778 unknownFields protoimpl.UnknownFields 779 780 // A Google Analytics GA4 property identifier whose events are tracked. 781 // Specified in the URL path and not the body. To learn more, see [where to 782 // find your Property 783 // ID](https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). 784 // This property must be specified for the batch. The property within 785 // RunReportRequest may either be unspecified or consistent with this 786 // property. 787 // 788 // Example: properties/1234 789 Property string `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"` 790 // Individual requests. Each request has a separate report response. Each 791 // batch request is allowed up to 5 requests. 792 Requests []*RunReportRequest `protobuf:"bytes,2,rep,name=requests,proto3" json:"requests,omitempty"` 793} 794 795func (x *BatchRunReportsRequest) Reset() { 796 *x = BatchRunReportsRequest{} 797 if protoimpl.UnsafeEnabled { 798 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[5] 799 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 800 ms.StoreMessageInfo(mi) 801 } 802} 803 804func (x *BatchRunReportsRequest) String() string { 805 return protoimpl.X.MessageStringOf(x) 806} 807 808func (*BatchRunReportsRequest) ProtoMessage() {} 809 810func (x *BatchRunReportsRequest) ProtoReflect() protoreflect.Message { 811 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[5] 812 if protoimpl.UnsafeEnabled && x != nil { 813 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 814 if ms.LoadMessageInfo() == nil { 815 ms.StoreMessageInfo(mi) 816 } 817 return ms 818 } 819 return mi.MessageOf(x) 820} 821 822// Deprecated: Use BatchRunReportsRequest.ProtoReflect.Descriptor instead. 823func (*BatchRunReportsRequest) Descriptor() ([]byte, []int) { 824 return file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescGZIP(), []int{5} 825} 826 827func (x *BatchRunReportsRequest) GetProperty() string { 828 if x != nil { 829 return x.Property 830 } 831 return "" 832} 833 834func (x *BatchRunReportsRequest) GetRequests() []*RunReportRequest { 835 if x != nil { 836 return x.Requests 837 } 838 return nil 839} 840 841// The batch response containing multiple reports. 842type BatchRunReportsResponse struct { 843 state protoimpl.MessageState 844 sizeCache protoimpl.SizeCache 845 unknownFields protoimpl.UnknownFields 846 847 // Individual responses. Each response has a separate report request. 848 Reports []*RunReportResponse `protobuf:"bytes,1,rep,name=reports,proto3" json:"reports,omitempty"` 849 // Identifies what kind of resource this message is. This `kind` is always the 850 // fixed string "analyticsData#batchRunReports". Useful to distinguish between 851 // response types in JSON. 852 Kind string `protobuf:"bytes,2,opt,name=kind,proto3" json:"kind,omitempty"` 853} 854 855func (x *BatchRunReportsResponse) Reset() { 856 *x = BatchRunReportsResponse{} 857 if protoimpl.UnsafeEnabled { 858 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[6] 859 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 860 ms.StoreMessageInfo(mi) 861 } 862} 863 864func (x *BatchRunReportsResponse) String() string { 865 return protoimpl.X.MessageStringOf(x) 866} 867 868func (*BatchRunReportsResponse) ProtoMessage() {} 869 870func (x *BatchRunReportsResponse) ProtoReflect() protoreflect.Message { 871 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[6] 872 if protoimpl.UnsafeEnabled && x != nil { 873 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 874 if ms.LoadMessageInfo() == nil { 875 ms.StoreMessageInfo(mi) 876 } 877 return ms 878 } 879 return mi.MessageOf(x) 880} 881 882// Deprecated: Use BatchRunReportsResponse.ProtoReflect.Descriptor instead. 883func (*BatchRunReportsResponse) Descriptor() ([]byte, []int) { 884 return file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescGZIP(), []int{6} 885} 886 887func (x *BatchRunReportsResponse) GetReports() []*RunReportResponse { 888 if x != nil { 889 return x.Reports 890 } 891 return nil 892} 893 894func (x *BatchRunReportsResponse) GetKind() string { 895 if x != nil { 896 return x.Kind 897 } 898 return "" 899} 900 901// The batch request containing multiple pivot report requests. 902type BatchRunPivotReportsRequest struct { 903 state protoimpl.MessageState 904 sizeCache protoimpl.SizeCache 905 unknownFields protoimpl.UnknownFields 906 907 // A Google Analytics GA4 property identifier whose events are tracked. 908 // Specified in the URL path and not the body. To learn more, see [where to 909 // find your Property 910 // ID](https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). 911 // This property must be specified for the batch. The property within 912 // RunPivotReportRequest may either be unspecified or consistent with this 913 // property. 914 // 915 // Example: properties/1234 916 Property string `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"` 917 // Individual requests. Each request has a separate pivot report response. 918 // Each batch request is allowed up to 5 requests. 919 Requests []*RunPivotReportRequest `protobuf:"bytes,2,rep,name=requests,proto3" json:"requests,omitempty"` 920} 921 922func (x *BatchRunPivotReportsRequest) Reset() { 923 *x = BatchRunPivotReportsRequest{} 924 if protoimpl.UnsafeEnabled { 925 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[7] 926 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 927 ms.StoreMessageInfo(mi) 928 } 929} 930 931func (x *BatchRunPivotReportsRequest) String() string { 932 return protoimpl.X.MessageStringOf(x) 933} 934 935func (*BatchRunPivotReportsRequest) ProtoMessage() {} 936 937func (x *BatchRunPivotReportsRequest) ProtoReflect() protoreflect.Message { 938 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[7] 939 if protoimpl.UnsafeEnabled && x != nil { 940 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 941 if ms.LoadMessageInfo() == nil { 942 ms.StoreMessageInfo(mi) 943 } 944 return ms 945 } 946 return mi.MessageOf(x) 947} 948 949// Deprecated: Use BatchRunPivotReportsRequest.ProtoReflect.Descriptor instead. 950func (*BatchRunPivotReportsRequest) Descriptor() ([]byte, []int) { 951 return file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescGZIP(), []int{7} 952} 953 954func (x *BatchRunPivotReportsRequest) GetProperty() string { 955 if x != nil { 956 return x.Property 957 } 958 return "" 959} 960 961func (x *BatchRunPivotReportsRequest) GetRequests() []*RunPivotReportRequest { 962 if x != nil { 963 return x.Requests 964 } 965 return nil 966} 967 968// The batch response containing multiple pivot reports. 969type BatchRunPivotReportsResponse struct { 970 state protoimpl.MessageState 971 sizeCache protoimpl.SizeCache 972 unknownFields protoimpl.UnknownFields 973 974 // Individual responses. Each response has a separate pivot report request. 975 PivotReports []*RunPivotReportResponse `protobuf:"bytes,1,rep,name=pivot_reports,json=pivotReports,proto3" json:"pivot_reports,omitempty"` 976 // Identifies what kind of resource this message is. This `kind` is always the 977 // fixed string "analyticsData#batchRunPivotReports". Useful to distinguish 978 // between response types in JSON. 979 Kind string `protobuf:"bytes,2,opt,name=kind,proto3" json:"kind,omitempty"` 980} 981 982func (x *BatchRunPivotReportsResponse) Reset() { 983 *x = BatchRunPivotReportsResponse{} 984 if protoimpl.UnsafeEnabled { 985 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[8] 986 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 987 ms.StoreMessageInfo(mi) 988 } 989} 990 991func (x *BatchRunPivotReportsResponse) String() string { 992 return protoimpl.X.MessageStringOf(x) 993} 994 995func (*BatchRunPivotReportsResponse) ProtoMessage() {} 996 997func (x *BatchRunPivotReportsResponse) ProtoReflect() protoreflect.Message { 998 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[8] 999 if protoimpl.UnsafeEnabled && x != nil { 1000 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1001 if ms.LoadMessageInfo() == nil { 1002 ms.StoreMessageInfo(mi) 1003 } 1004 return ms 1005 } 1006 return mi.MessageOf(x) 1007} 1008 1009// Deprecated: Use BatchRunPivotReportsResponse.ProtoReflect.Descriptor instead. 1010func (*BatchRunPivotReportsResponse) Descriptor() ([]byte, []int) { 1011 return file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescGZIP(), []int{8} 1012} 1013 1014func (x *BatchRunPivotReportsResponse) GetPivotReports() []*RunPivotReportResponse { 1015 if x != nil { 1016 return x.PivotReports 1017 } 1018 return nil 1019} 1020 1021func (x *BatchRunPivotReportsResponse) GetKind() string { 1022 if x != nil { 1023 return x.Kind 1024 } 1025 return "" 1026} 1027 1028// Request for a property's dimension and metric metadata. 1029type GetMetadataRequest struct { 1030 state protoimpl.MessageState 1031 sizeCache protoimpl.SizeCache 1032 unknownFields protoimpl.UnknownFields 1033 1034 // Required. The resource name of the metadata to retrieve. This name field is 1035 // specified in the URL path and not URL parameters. Property is a numeric 1036 // Google Analytics GA4 Property identifier. To learn more, see [where to find 1037 // your Property 1038 // ID](https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). 1039 // 1040 // Example: properties/1234/metadata 1041 // 1042 // Set the Property ID to 0 for dimensions and metrics common to all 1043 // properties. In this special mode, this method will not return custom 1044 // dimensions and metrics. 1045 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 1046} 1047 1048func (x *GetMetadataRequest) Reset() { 1049 *x = GetMetadataRequest{} 1050 if protoimpl.UnsafeEnabled { 1051 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[9] 1052 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1053 ms.StoreMessageInfo(mi) 1054 } 1055} 1056 1057func (x *GetMetadataRequest) String() string { 1058 return protoimpl.X.MessageStringOf(x) 1059} 1060 1061func (*GetMetadataRequest) ProtoMessage() {} 1062 1063func (x *GetMetadataRequest) ProtoReflect() protoreflect.Message { 1064 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[9] 1065 if protoimpl.UnsafeEnabled && x != nil { 1066 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1067 if ms.LoadMessageInfo() == nil { 1068 ms.StoreMessageInfo(mi) 1069 } 1070 return ms 1071 } 1072 return mi.MessageOf(x) 1073} 1074 1075// Deprecated: Use GetMetadataRequest.ProtoReflect.Descriptor instead. 1076func (*GetMetadataRequest) Descriptor() ([]byte, []int) { 1077 return file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescGZIP(), []int{9} 1078} 1079 1080func (x *GetMetadataRequest) GetName() string { 1081 if x != nil { 1082 return x.Name 1083 } 1084 return "" 1085} 1086 1087// The request to generate a realtime report. 1088type RunRealtimeReportRequest struct { 1089 state protoimpl.MessageState 1090 sizeCache protoimpl.SizeCache 1091 unknownFields protoimpl.UnknownFields 1092 1093 // A Google Analytics GA4 property identifier whose events are tracked. 1094 // Specified in the URL path and not the body. To learn more, see [where to 1095 // find your Property 1096 // ID](https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). 1097 // 1098 // Example: properties/1234 1099 Property string `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"` 1100 // The dimensions requested and displayed. 1101 Dimensions []*Dimension `protobuf:"bytes,2,rep,name=dimensions,proto3" json:"dimensions,omitempty"` 1102 // The metrics requested and displayed. 1103 Metrics []*Metric `protobuf:"bytes,3,rep,name=metrics,proto3" json:"metrics,omitempty"` 1104 // The filter clause of dimensions. Dimensions must be requested to be used in 1105 // this filter. Metrics cannot be used in this filter. 1106 DimensionFilter *FilterExpression `protobuf:"bytes,4,opt,name=dimension_filter,json=dimensionFilter,proto3" json:"dimension_filter,omitempty"` 1107 // The filter clause of metrics. Applied at post aggregation phase, similar to 1108 // SQL having-clause. Metrics must be requested to be used in this filter. 1109 // Dimensions cannot be used in this filter. 1110 MetricFilter *FilterExpression `protobuf:"bytes,5,opt,name=metric_filter,json=metricFilter,proto3" json:"metric_filter,omitempty"` 1111 // The number of rows to return. If unspecified, 10,000 rows are returned. The 1112 // API returns a maximum of 100,000 rows per request, no matter how many you 1113 // ask for. `limit` must be positive. 1114 // 1115 // The API can also return fewer rows than the requested `limit`, if there 1116 // aren't as many dimension values as the `limit`. For instance, there are 1117 // fewer than 300 possible values for the dimension `country`, so when 1118 // reporting on only `country`, you can't get more than 300 rows, even if you 1119 // set `limit` to a higher value. 1120 Limit int64 `protobuf:"varint,6,opt,name=limit,proto3" json:"limit,omitempty"` 1121 // Aggregation of metrics. Aggregated metric values will be shown in rows 1122 // where the dimension_values are set to "RESERVED_(MetricAggregation)". 1123 MetricAggregations []MetricAggregation `protobuf:"varint,7,rep,packed,name=metric_aggregations,json=metricAggregations,proto3,enum=google.analytics.data.v1beta.MetricAggregation" json:"metric_aggregations,omitempty"` 1124 // Specifies how rows are ordered in the response. 1125 OrderBys []*OrderBy `protobuf:"bytes,8,rep,name=order_bys,json=orderBys,proto3" json:"order_bys,omitempty"` 1126 // Toggles whether to return the current state of this Analytics Property's 1127 // Realtime quota. Quota is returned in [PropertyQuota](#PropertyQuota). 1128 ReturnPropertyQuota bool `protobuf:"varint,9,opt,name=return_property_quota,json=returnPropertyQuota,proto3" json:"return_property_quota,omitempty"` 1129 // The minute ranges of event data to read. If unspecified, one minute range 1130 // for the last 30 minutes will be used. If multiple minute ranges are 1131 // requested, each response row will contain a zero based minute range index. 1132 // If two minute ranges overlap, the event data for the overlapping minutes is 1133 // included in the response rows for both minute ranges. 1134 MinuteRanges []*MinuteRange `protobuf:"bytes,10,rep,name=minute_ranges,json=minuteRanges,proto3" json:"minute_ranges,omitempty"` 1135} 1136 1137func (x *RunRealtimeReportRequest) Reset() { 1138 *x = RunRealtimeReportRequest{} 1139 if protoimpl.UnsafeEnabled { 1140 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[10] 1141 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1142 ms.StoreMessageInfo(mi) 1143 } 1144} 1145 1146func (x *RunRealtimeReportRequest) String() string { 1147 return protoimpl.X.MessageStringOf(x) 1148} 1149 1150func (*RunRealtimeReportRequest) ProtoMessage() {} 1151 1152func (x *RunRealtimeReportRequest) ProtoReflect() protoreflect.Message { 1153 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[10] 1154 if protoimpl.UnsafeEnabled && x != nil { 1155 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1156 if ms.LoadMessageInfo() == nil { 1157 ms.StoreMessageInfo(mi) 1158 } 1159 return ms 1160 } 1161 return mi.MessageOf(x) 1162} 1163 1164// Deprecated: Use RunRealtimeReportRequest.ProtoReflect.Descriptor instead. 1165func (*RunRealtimeReportRequest) Descriptor() ([]byte, []int) { 1166 return file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescGZIP(), []int{10} 1167} 1168 1169func (x *RunRealtimeReportRequest) GetProperty() string { 1170 if x != nil { 1171 return x.Property 1172 } 1173 return "" 1174} 1175 1176func (x *RunRealtimeReportRequest) GetDimensions() []*Dimension { 1177 if x != nil { 1178 return x.Dimensions 1179 } 1180 return nil 1181} 1182 1183func (x *RunRealtimeReportRequest) GetMetrics() []*Metric { 1184 if x != nil { 1185 return x.Metrics 1186 } 1187 return nil 1188} 1189 1190func (x *RunRealtimeReportRequest) GetDimensionFilter() *FilterExpression { 1191 if x != nil { 1192 return x.DimensionFilter 1193 } 1194 return nil 1195} 1196 1197func (x *RunRealtimeReportRequest) GetMetricFilter() *FilterExpression { 1198 if x != nil { 1199 return x.MetricFilter 1200 } 1201 return nil 1202} 1203 1204func (x *RunRealtimeReportRequest) GetLimit() int64 { 1205 if x != nil { 1206 return x.Limit 1207 } 1208 return 0 1209} 1210 1211func (x *RunRealtimeReportRequest) GetMetricAggregations() []MetricAggregation { 1212 if x != nil { 1213 return x.MetricAggregations 1214 } 1215 return nil 1216} 1217 1218func (x *RunRealtimeReportRequest) GetOrderBys() []*OrderBy { 1219 if x != nil { 1220 return x.OrderBys 1221 } 1222 return nil 1223} 1224 1225func (x *RunRealtimeReportRequest) GetReturnPropertyQuota() bool { 1226 if x != nil { 1227 return x.ReturnPropertyQuota 1228 } 1229 return false 1230} 1231 1232func (x *RunRealtimeReportRequest) GetMinuteRanges() []*MinuteRange { 1233 if x != nil { 1234 return x.MinuteRanges 1235 } 1236 return nil 1237} 1238 1239// The response realtime report table corresponding to a request. 1240type RunRealtimeReportResponse struct { 1241 state protoimpl.MessageState 1242 sizeCache protoimpl.SizeCache 1243 unknownFields protoimpl.UnknownFields 1244 1245 // Describes dimension columns. The number of DimensionHeaders and ordering of 1246 // DimensionHeaders matches the dimensions present in rows. 1247 DimensionHeaders []*DimensionHeader `protobuf:"bytes,1,rep,name=dimension_headers,json=dimensionHeaders,proto3" json:"dimension_headers,omitempty"` 1248 // Describes metric columns. The number of MetricHeaders and ordering of 1249 // MetricHeaders matches the metrics present in rows. 1250 MetricHeaders []*MetricHeader `protobuf:"bytes,2,rep,name=metric_headers,json=metricHeaders,proto3" json:"metric_headers,omitempty"` 1251 // Rows of dimension value combinations and metric values in the report. 1252 Rows []*Row `protobuf:"bytes,3,rep,name=rows,proto3" json:"rows,omitempty"` 1253 // If requested, the totaled values of metrics. 1254 Totals []*Row `protobuf:"bytes,4,rep,name=totals,proto3" json:"totals,omitempty"` 1255 // If requested, the maximum values of metrics. 1256 Maximums []*Row `protobuf:"bytes,5,rep,name=maximums,proto3" json:"maximums,omitempty"` 1257 // If requested, the minimum values of metrics. 1258 Minimums []*Row `protobuf:"bytes,6,rep,name=minimums,proto3" json:"minimums,omitempty"` 1259 // The total number of rows in the query result. `rowCount` is independent of 1260 // the number of rows returned in the response and the `limit` request 1261 // parameter. For example if a query returns 175 rows and includes `limit` 1262 // of 50 in the API request, the response will contain `rowCount` of 175 but 1263 // only 50 rows. 1264 RowCount int32 `protobuf:"varint,7,opt,name=row_count,json=rowCount,proto3" json:"row_count,omitempty"` 1265 // This Analytics Property's Realtime quota state including this request. 1266 PropertyQuota *PropertyQuota `protobuf:"bytes,8,opt,name=property_quota,json=propertyQuota,proto3" json:"property_quota,omitempty"` 1267 // Identifies what kind of resource this message is. This `kind` is always the 1268 // fixed string "analyticsData#runRealtimeReport". Useful to distinguish 1269 // between response types in JSON. 1270 Kind string `protobuf:"bytes,9,opt,name=kind,proto3" json:"kind,omitempty"` 1271} 1272 1273func (x *RunRealtimeReportResponse) Reset() { 1274 *x = RunRealtimeReportResponse{} 1275 if protoimpl.UnsafeEnabled { 1276 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[11] 1277 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1278 ms.StoreMessageInfo(mi) 1279 } 1280} 1281 1282func (x *RunRealtimeReportResponse) String() string { 1283 return protoimpl.X.MessageStringOf(x) 1284} 1285 1286func (*RunRealtimeReportResponse) ProtoMessage() {} 1287 1288func (x *RunRealtimeReportResponse) ProtoReflect() protoreflect.Message { 1289 mi := &file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[11] 1290 if protoimpl.UnsafeEnabled && x != nil { 1291 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1292 if ms.LoadMessageInfo() == nil { 1293 ms.StoreMessageInfo(mi) 1294 } 1295 return ms 1296 } 1297 return mi.MessageOf(x) 1298} 1299 1300// Deprecated: Use RunRealtimeReportResponse.ProtoReflect.Descriptor instead. 1301func (*RunRealtimeReportResponse) Descriptor() ([]byte, []int) { 1302 return file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescGZIP(), []int{11} 1303} 1304 1305func (x *RunRealtimeReportResponse) GetDimensionHeaders() []*DimensionHeader { 1306 if x != nil { 1307 return x.DimensionHeaders 1308 } 1309 return nil 1310} 1311 1312func (x *RunRealtimeReportResponse) GetMetricHeaders() []*MetricHeader { 1313 if x != nil { 1314 return x.MetricHeaders 1315 } 1316 return nil 1317} 1318 1319func (x *RunRealtimeReportResponse) GetRows() []*Row { 1320 if x != nil { 1321 return x.Rows 1322 } 1323 return nil 1324} 1325 1326func (x *RunRealtimeReportResponse) GetTotals() []*Row { 1327 if x != nil { 1328 return x.Totals 1329 } 1330 return nil 1331} 1332 1333func (x *RunRealtimeReportResponse) GetMaximums() []*Row { 1334 if x != nil { 1335 return x.Maximums 1336 } 1337 return nil 1338} 1339 1340func (x *RunRealtimeReportResponse) GetMinimums() []*Row { 1341 if x != nil { 1342 return x.Minimums 1343 } 1344 return nil 1345} 1346 1347func (x *RunRealtimeReportResponse) GetRowCount() int32 { 1348 if x != nil { 1349 return x.RowCount 1350 } 1351 return 0 1352} 1353 1354func (x *RunRealtimeReportResponse) GetPropertyQuota() *PropertyQuota { 1355 if x != nil { 1356 return x.PropertyQuota 1357 } 1358 return nil 1359} 1360 1361func (x *RunRealtimeReportResponse) GetKind() string { 1362 if x != nil { 1363 return x.Kind 1364 } 1365 return "" 1366} 1367 1368var File_google_analytics_data_v1beta_analytics_data_api_proto protoreflect.FileDescriptor 1369 1370var file_google_analytics_data_v1beta_analytics_data_api_proto_rawDesc = []byte{ 1371 0x0a, 0x35, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 1372 0x63, 0x73, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2f, 0x61, 1373 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x61, 0x70, 1374 0x69, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1375 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 1376 0x31, 0x62, 0x65, 0x74, 0x61, 0x1a, 0x27, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x6e, 1377 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x76, 0x31, 0x62, 1378 0x65, 0x74, 0x61, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 1379 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 1380 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 1381 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 1382 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 1383 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 1384 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 1385 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 1386 0x6f, 0x22, 0x83, 0x02, 0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x12, 1387 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 1388 0x6d, 0x65, 0x12, 0x4f, 0x0a, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 1389 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1390 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 1391 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x44, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 1392 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 1393 0x6f, 0x6e, 0x73, 0x12, 0x46, 0x0a, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x02, 1394 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 1395 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 1396 0x65, 0x74, 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 1397 0x74, 0x61, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x3a, 0x4a, 0xea, 0x41, 0x47, 1398 0x0a, 0x25, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x64, 0x61, 0x74, 0x61, 0x2e, 1399 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 1400 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 1401 0x69, 0x65, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x7d, 0x2f, 0x6d, 1402 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0xd1, 0x06, 0x0a, 0x10, 0x52, 0x75, 0x6e, 0x52, 1403 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 1404 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 1405 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x47, 0x0a, 0x0a, 0x64, 0x69, 0x6d, 0x65, 1406 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 1407 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 1408 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x44, 0x69, 0x6d, 0x65, 1409 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 1410 0x73, 0x12, 0x3e, 0x0a, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x03, 0x20, 0x03, 1411 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 1412 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 1413 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 1414 0x73, 0x12, 0x48, 0x0a, 0x0b, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 1415 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1416 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 1417 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x44, 0x61, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 1418 0x0a, 0x64, 0x61, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x59, 0x0a, 0x10, 0x64, 1419 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 1420 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 1421 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 1422 0x62, 0x65, 0x74, 0x61, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x78, 0x70, 0x72, 0x65, 1423 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 1424 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x53, 0x0a, 0x0d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 1425 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 1426 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 1427 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x46, 0x69, 0x6c, 1428 0x74, 0x65, 0x72, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x6d, 1429 0x65, 0x74, 0x72, 0x69, 0x63, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x6f, 1430 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 1431 0x73, 0x65, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x08, 0x20, 0x01, 1432 0x28, 0x03, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x60, 0x0a, 0x13, 0x6d, 0x65, 0x74, 1433 0x72, 0x69, 0x63, 0x5f, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 1434 0x18, 0x09, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1435 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 1436 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x41, 0x67, 0x67, 0x72, 1437 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x41, 1438 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x42, 0x0a, 0x09, 0x6f, 1439 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 1440 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 1441 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x4f, 0x72, 1442 0x64, 0x65, 0x72, 0x42, 0x79, 0x52, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x73, 0x12, 1443 0x23, 0x0a, 0x0d, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 1444 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 1445 0x43, 0x6f, 0x64, 0x65, 0x12, 0x49, 0x0a, 0x0b, 0x63, 0x6f, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x73, 1446 0x70, 0x65, 0x63, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 1447 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 1448 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x43, 0x6f, 0x68, 0x6f, 0x72, 0x74, 0x53, 1449 0x70, 0x65, 0x63, 0x52, 0x0a, 0x63, 0x6f, 0x68, 0x6f, 0x72, 0x74, 0x53, 0x70, 0x65, 0x63, 0x12, 1450 0x26, 0x0a, 0x0f, 0x6b, 0x65, 0x65, 0x70, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x5f, 0x72, 0x6f, 1451 0x77, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6b, 0x65, 0x65, 0x70, 0x45, 0x6d, 1452 0x70, 0x74, 0x79, 0x52, 0x6f, 0x77, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x65, 0x74, 0x75, 0x72, 1453 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x61, 1454 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x50, 0x72, 1455 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x22, 0x83, 0x05, 0x0a, 0x11, 1456 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 1457 0x65, 0x12, 0x5a, 0x0a, 0x11, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 1458 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 1459 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 1460 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x44, 0x69, 0x6d, 0x65, 1461 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x10, 0x64, 0x69, 0x6d, 1462 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x51, 0x0a, 1463 0x0e, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 1464 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 1465 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 1466 0x62, 0x65, 0x74, 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x48, 0x65, 0x61, 0x64, 0x65, 1467 0x72, 0x52, 0x0d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 1468 0x12, 0x35, 0x0a, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 1469 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 1470 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x6f, 1471 0x77, 0x52, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x12, 0x39, 0x0a, 0x06, 0x74, 0x6f, 0x74, 0x61, 0x6c, 1472 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1473 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 1474 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x06, 0x74, 0x6f, 0x74, 0x61, 1475 0x6c, 0x73, 0x12, 0x3d, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x73, 0x18, 0x05, 1476 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 1477 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 1478 0x65, 0x74, 0x61, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 1479 0x73, 0x12, 0x3d, 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x73, 0x18, 0x06, 0x20, 1480 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 1481 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 1482 0x74, 0x61, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x73, 1483 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 1484 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x6f, 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x4a, 0x0a, 1485 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 1486 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 1487 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x52, 1488 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x44, 0x61, 0x74, 0x61, 0x52, 1489 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x52, 0x0a, 0x0e, 0x70, 0x72, 0x6f, 1490 0x70, 0x65, 0x72, 0x74, 0x79, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x09, 0x20, 0x01, 0x28, 1491 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 1492 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 1493 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x52, 0x0d, 1494 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x12, 0x12, 0x0a, 1495 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 1496 0x64, 0x22, 0xbf, 0x05, 0x0a, 0x15, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 1497 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 1498 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 1499 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x47, 0x0a, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 1500 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 1501 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 1502 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x44, 0x69, 0x6d, 0x65, 0x6e, 1503 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 1504 0x12, 0x3e, 0x0a, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 1505 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 1506 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 1507 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 1508 0x12, 0x48, 0x0a, 0x0b, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 1509 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 1510 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 1511 0x62, 0x65, 0x74, 0x61, 0x2e, 0x44, 0x61, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x0a, 1512 0x64, 0x61, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x06, 0x70, 0x69, 1513 0x76, 0x6f, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 1514 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 1515 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 1516 0x06, 0x70, 0x69, 0x76, 0x6f, 0x74, 0x73, 0x12, 0x59, 0x0a, 0x10, 0x64, 0x69, 0x6d, 0x65, 0x6e, 1517 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 1518 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 1519 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 1520 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 1521 0x6e, 0x52, 0x0f, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x6c, 0x74, 1522 0x65, 0x72, 0x12, 0x53, 0x0a, 0x0d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x66, 0x69, 0x6c, 1523 0x74, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 1524 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 1525 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x45, 1526 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x6d, 0x65, 0x74, 0x72, 0x69, 1527 0x63, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x75, 0x72, 0x72, 0x65, 1528 0x6e, 0x63, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 1529 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x49, 0x0a, 0x0b, 1530 0x63, 0x6f, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x09, 0x20, 0x01, 0x28, 1531 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 1532 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 1533 0x2e, 0x43, 0x6f, 0x68, 0x6f, 0x72, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x0a, 0x63, 0x6f, 0x68, 1534 0x6f, 0x72, 0x74, 0x53, 0x70, 0x65, 0x63, 0x12, 0x26, 0x0a, 0x0f, 0x6b, 0x65, 0x65, 0x70, 0x5f, 1535 0x65, 0x6d, 0x70, 0x74, 0x79, 0x5f, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 1536 0x52, 0x0d, 0x6b, 0x65, 0x65, 0x70, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x52, 0x6f, 0x77, 0x73, 0x12, 1537 0x32, 0x0a, 0x15, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 1538 0x74, 0x79, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 1539 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x51, 0x75, 1540 0x6f, 0x74, 0x61, 0x22, 0xc5, 0x04, 0x0a, 0x16, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 1541 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, 1542 0x0a, 0x0d, 0x70, 0x69, 0x76, 0x6f, 0x74, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 1543 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 1544 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 1545 0x62, 0x65, 0x74, 0x61, 0x2e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 1546 0x52, 0x0c, 0x70, 0x69, 0x76, 0x6f, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x5a, 1547 0x0a, 0x11, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x65, 0x61, 0x64, 1548 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 1549 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 1550 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x44, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 1551 0x6f, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x10, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 1552 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x51, 0x0a, 0x0e, 0x6d, 0x65, 1553 0x74, 0x72, 0x69, 0x63, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 1554 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 1555 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 1556 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x0d, 1557 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x35, 0x0a, 1558 0x04, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 1559 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 1560 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x04, 1561 0x72, 0x6f, 0x77, 0x73, 0x12, 0x41, 0x0a, 0x0a, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 1562 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1563 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 1564 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x0a, 0x61, 0x67, 0x67, 1565 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x73, 0x12, 0x4a, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 1566 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 1567 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 1568 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 1569 0x65, 0x4d, 0x65, 0x74, 0x61, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 1570 0x61, 0x74, 0x61, 0x12, 0x52, 0x0a, 0x0e, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x5f, 1571 0x71, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 1572 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 1573 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 1574 0x72, 0x74, 0x79, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x52, 0x0d, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 1575 0x74, 0x79, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 1576 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0x80, 0x01, 0x0a, 0x16, 1577 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 1578 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 1579 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 1580 0x74, 0x79, 0x12, 0x4a, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x02, 1581 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 1582 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 1583 0x65, 0x74, 0x61, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 1584 0x75, 0x65, 0x73, 0x74, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x22, 0x78, 1585 0x0a, 0x17, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 1586 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x49, 0x0a, 0x07, 0x72, 0x65, 0x70, 1587 0x6f, 0x72, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 1588 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 1589 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 1590 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x72, 0x65, 0x70, 1591 0x6f, 0x72, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 1592 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0x8a, 0x01, 0x0a, 0x1b, 0x42, 0x61, 0x74, 1593 0x63, 0x68, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 1594 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 1595 0x65, 0x72, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x70, 1596 0x65, 0x72, 0x74, 0x79, 0x12, 0x4f, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 1597 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1598 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 1599 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 1600 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x08, 0x72, 0x65, 0x71, 1601 0x75, 0x65, 0x73, 0x74, 0x73, 0x22, 0x8d, 0x01, 0x0a, 0x1c, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 1602 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 1603 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, 0x0d, 0x70, 0x69, 0x76, 0x6f, 0x74, 0x5f, 1604 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 1605 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 1606 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x75, 0x6e, 1607 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 1608 0x6e, 0x73, 0x65, 0x52, 0x0c, 0x70, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 1609 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 1610 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0x57, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x61, 1611 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x04, 0x6e, 1612 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 1613 0x27, 0x0a, 0x25, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x64, 0x61, 0x74, 0x61, 1614 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 1615 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xaf, 1616 0x05, 0x0a, 0x18, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 1617 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 1618 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 1619 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x47, 0x0a, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 1620 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 1621 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 1622 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x44, 0x69, 0x6d, 0x65, 0x6e, 1623 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 1624 0x12, 0x3e, 0x0a, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 1625 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 1626 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 1627 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 1628 0x12, 0x59, 0x0a, 0x10, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x69, 1629 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 1630 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 1631 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 1632 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x64, 0x69, 0x6d, 0x65, 1633 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x53, 0x0a, 0x0d, 0x6d, 1634 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 1635 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 1636 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 1637 0x61, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 1638 0x6f, 0x6e, 0x52, 0x0c, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 1639 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 1640 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x60, 0x0a, 0x13, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 1641 0x5f, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 1642 0x03, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 1643 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 1644 0x74, 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x41, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 1645 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x41, 0x67, 0x67, 0x72, 1646 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x42, 0x0a, 0x09, 0x6f, 0x72, 0x64, 0x65, 1647 0x72, 0x5f, 0x62, 0x79, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 1648 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 1649 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 1650 0x42, 0x79, 0x52, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x73, 0x12, 0x32, 0x0a, 0x15, 1651 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x5f, 1652 0x71, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x72, 0x65, 0x74, 1653 0x75, 0x72, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x51, 0x75, 0x6f, 0x74, 0x61, 1654 0x12, 0x4e, 0x0a, 0x0d, 0x6d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 1655 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1656 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 1657 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x4d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x52, 0x61, 0x6e, 1658 0x67, 0x65, 0x52, 0x0c, 0x6d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 1659 0x22, 0xbf, 0x04, 0x0a, 0x19, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 1660 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5a, 1661 0x0a, 0x11, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x65, 0x61, 0x64, 1662 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 1663 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 1664 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x44, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 1665 0x6f, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x10, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 1666 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x51, 0x0a, 0x0e, 0x6d, 0x65, 1667 0x74, 0x72, 0x69, 0x63, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 1668 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 1669 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 1670 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x0d, 1671 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x35, 0x0a, 1672 0x04, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 1673 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 1674 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x04, 1675 0x72, 0x6f, 0x77, 0x73, 0x12, 0x39, 0x0a, 0x06, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x73, 0x18, 0x04, 1676 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 1677 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 1678 0x65, 0x74, 0x61, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x06, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x73, 0x12, 1679 0x3d, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 1680 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 1681 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 1682 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x73, 0x12, 0x3d, 1683 0x0a, 0x08, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 1684 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 1685 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 1686 0x52, 0x6f, 0x77, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x73, 0x12, 0x1b, 0x0a, 1687 0x09, 0x72, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 1688 0x52, 0x08, 0x72, 0x6f, 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x52, 0x0a, 0x0e, 0x70, 0x72, 1689 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 1690 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 1691 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 1692 0x61, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x52, 1693 0x0d, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x12, 0x12, 1694 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 1695 0x6e, 0x64, 0x32, 0xe3, 0x09, 0x0a, 0x11, 0x42, 0x65, 0x74, 0x61, 0x41, 0x6e, 0x61, 0x6c, 0x79, 1696 0x74, 0x69, 0x63, 0x73, 0x44, 0x61, 0x74, 0x61, 0x12, 0xa2, 0x01, 0x0a, 0x09, 0x52, 0x75, 0x6e, 1697 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1698 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 1699 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 1700 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1701 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 1702 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 1703 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x34, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2e, 0x22, 1704 0x29, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 1705 0x74, 0x79, 0x3d, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 1706 0x3a, 0x72, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x01, 0x2a, 0x12, 0xb6, 0x01, 1707 0x0a, 0x0e, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 1708 0x12, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 1709 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 1710 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 1711 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 1712 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 1713 0x62, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 1714 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x39, 0x82, 0xd3, 0xe4, 1715 0x93, 0x02, 0x33, 0x22, 0x2e, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2f, 0x7b, 0x70, 0x72, 1716 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x3d, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 1717 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 1718 0x6f, 0x72, 0x74, 0x3a, 0x01, 0x2a, 0x12, 0xba, 0x01, 0x0a, 0x0f, 0x42, 0x61, 0x74, 0x63, 0x68, 1719 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 1720 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 1721 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 1722 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 1723 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 1724 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 1725 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 1726 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x34, 0x22, 1727 0x2f, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 1728 0x74, 0x79, 0x3d, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 1729 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 1730 0x3a, 0x01, 0x2a, 0x12, 0xce, 0x01, 0x0a, 0x14, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6e, 1731 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x39, 0x2e, 0x67, 1732 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 1733 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x42, 0x61, 0x74, 0x63, 1734 0x68, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 1735 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1736 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 1737 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6e, 0x50, 1738 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 1739 0x6e, 0x73, 0x65, 0x22, 0x3f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x39, 0x22, 0x34, 0x2f, 0x76, 0x31, 1740 0x62, 0x65, 0x74, 0x61, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x3d, 0x70, 1741 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x62, 0x61, 0x74, 1742 0x63, 0x68, 0x52, 0x75, 0x6e, 0x50, 0x69, 0x76, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 1743 0x73, 0x3a, 0x01, 0x2a, 0x12, 0x9c, 0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x61, 1744 0x64, 0x61, 0x74, 0x61, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 1745 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 1746 0x65, 0x74, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 1747 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 1748 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 1749 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x33, 1750 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x26, 0x12, 0x24, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2f, 1751 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 1752 0x2f, 0x2a, 0x2f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x7d, 0xda, 0x41, 0x04, 0x6e, 1753 0x61, 0x6d, 0x65, 0x12, 0xc2, 0x01, 0x0a, 0x11, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x61, 0x6c, 0x74, 1754 0x69, 0x6d, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 1755 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 1756 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x61, 0x6c, 1757 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 1758 0x74, 0x1a, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 1759 0x74, 0x69, 0x63, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 1760 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x70, 0x6f, 1761 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3c, 0x82, 0xd3, 0xe4, 0x93, 1762 0x02, 0x36, 0x22, 0x31, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 1763 0x70, 0x65, 0x72, 0x74, 0x79, 0x3d, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 1764 0x2f, 0x2a, 0x7d, 0x3a, 0x72, 0x75, 0x6e, 0x52, 0x65, 0x61, 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x52, 1765 0x65, 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x01, 0x2a, 0x1a, 0x7e, 0xca, 0x41, 0x1c, 0x61, 0x6e, 0x61, 1766 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1767 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x5c, 0x68, 0x74, 0x74, 0x70, 1768 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 1769 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x61, 0x6e, 0x61, 0x6c, 1770 0x79, 0x74, 0x69, 0x63, 0x73, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 1771 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 1772 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2e, 1773 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x42, 0x7d, 0x0a, 0x20, 0x63, 0x6f, 0x6d, 0x2e, 1774 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 1775 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x42, 0x15, 0x41, 0x6e, 1776 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x44, 0x61, 0x74, 0x61, 0x41, 0x70, 0x69, 0x50, 0x72, 1777 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x40, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 1778 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 1779 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x61, 0x6e, 0x61, 1780 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x76, 0x31, 0x62, 0x65, 1781 0x74, 0x61, 0x3b, 0x64, 0x61, 0x74, 0x61, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 1782} 1783 1784var ( 1785 file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescOnce sync.Once 1786 file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescData = file_google_analytics_data_v1beta_analytics_data_api_proto_rawDesc 1787) 1788 1789func file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescGZIP() []byte { 1790 file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescOnce.Do(func() { 1791 file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescData) 1792 }) 1793 return file_google_analytics_data_v1beta_analytics_data_api_proto_rawDescData 1794} 1795 1796var file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes = make([]protoimpl.MessageInfo, 12) 1797var file_google_analytics_data_v1beta_analytics_data_api_proto_goTypes = []interface{}{ 1798 (*Metadata)(nil), // 0: google.analytics.data.v1beta.Metadata 1799 (*RunReportRequest)(nil), // 1: google.analytics.data.v1beta.RunReportRequest 1800 (*RunReportResponse)(nil), // 2: google.analytics.data.v1beta.RunReportResponse 1801 (*RunPivotReportRequest)(nil), // 3: google.analytics.data.v1beta.RunPivotReportRequest 1802 (*RunPivotReportResponse)(nil), // 4: google.analytics.data.v1beta.RunPivotReportResponse 1803 (*BatchRunReportsRequest)(nil), // 5: google.analytics.data.v1beta.BatchRunReportsRequest 1804 (*BatchRunReportsResponse)(nil), // 6: google.analytics.data.v1beta.BatchRunReportsResponse 1805 (*BatchRunPivotReportsRequest)(nil), // 7: google.analytics.data.v1beta.BatchRunPivotReportsRequest 1806 (*BatchRunPivotReportsResponse)(nil), // 8: google.analytics.data.v1beta.BatchRunPivotReportsResponse 1807 (*GetMetadataRequest)(nil), // 9: google.analytics.data.v1beta.GetMetadataRequest 1808 (*RunRealtimeReportRequest)(nil), // 10: google.analytics.data.v1beta.RunRealtimeReportRequest 1809 (*RunRealtimeReportResponse)(nil), // 11: google.analytics.data.v1beta.RunRealtimeReportResponse 1810 (*DimensionMetadata)(nil), // 12: google.analytics.data.v1beta.DimensionMetadata 1811 (*MetricMetadata)(nil), // 13: google.analytics.data.v1beta.MetricMetadata 1812 (*Dimension)(nil), // 14: google.analytics.data.v1beta.Dimension 1813 (*Metric)(nil), // 15: google.analytics.data.v1beta.Metric 1814 (*DateRange)(nil), // 16: google.analytics.data.v1beta.DateRange 1815 (*FilterExpression)(nil), // 17: google.analytics.data.v1beta.FilterExpression 1816 (MetricAggregation)(0), // 18: google.analytics.data.v1beta.MetricAggregation 1817 (*OrderBy)(nil), // 19: google.analytics.data.v1beta.OrderBy 1818 (*CohortSpec)(nil), // 20: google.analytics.data.v1beta.CohortSpec 1819 (*DimensionHeader)(nil), // 21: google.analytics.data.v1beta.DimensionHeader 1820 (*MetricHeader)(nil), // 22: google.analytics.data.v1beta.MetricHeader 1821 (*Row)(nil), // 23: google.analytics.data.v1beta.Row 1822 (*ResponseMetaData)(nil), // 24: google.analytics.data.v1beta.ResponseMetaData 1823 (*PropertyQuota)(nil), // 25: google.analytics.data.v1beta.PropertyQuota 1824 (*Pivot)(nil), // 26: google.analytics.data.v1beta.Pivot 1825 (*PivotHeader)(nil), // 27: google.analytics.data.v1beta.PivotHeader 1826 (*MinuteRange)(nil), // 28: google.analytics.data.v1beta.MinuteRange 1827} 1828var file_google_analytics_data_v1beta_analytics_data_api_proto_depIdxs = []int32{ 1829 12, // 0: google.analytics.data.v1beta.Metadata.dimensions:type_name -> google.analytics.data.v1beta.DimensionMetadata 1830 13, // 1: google.analytics.data.v1beta.Metadata.metrics:type_name -> google.analytics.data.v1beta.MetricMetadata 1831 14, // 2: google.analytics.data.v1beta.RunReportRequest.dimensions:type_name -> google.analytics.data.v1beta.Dimension 1832 15, // 3: google.analytics.data.v1beta.RunReportRequest.metrics:type_name -> google.analytics.data.v1beta.Metric 1833 16, // 4: google.analytics.data.v1beta.RunReportRequest.date_ranges:type_name -> google.analytics.data.v1beta.DateRange 1834 17, // 5: google.analytics.data.v1beta.RunReportRequest.dimension_filter:type_name -> google.analytics.data.v1beta.FilterExpression 1835 17, // 6: google.analytics.data.v1beta.RunReportRequest.metric_filter:type_name -> google.analytics.data.v1beta.FilterExpression 1836 18, // 7: google.analytics.data.v1beta.RunReportRequest.metric_aggregations:type_name -> google.analytics.data.v1beta.MetricAggregation 1837 19, // 8: google.analytics.data.v1beta.RunReportRequest.order_bys:type_name -> google.analytics.data.v1beta.OrderBy 1838 20, // 9: google.analytics.data.v1beta.RunReportRequest.cohort_spec:type_name -> google.analytics.data.v1beta.CohortSpec 1839 21, // 10: google.analytics.data.v1beta.RunReportResponse.dimension_headers:type_name -> google.analytics.data.v1beta.DimensionHeader 1840 22, // 11: google.analytics.data.v1beta.RunReportResponse.metric_headers:type_name -> google.analytics.data.v1beta.MetricHeader 1841 23, // 12: google.analytics.data.v1beta.RunReportResponse.rows:type_name -> google.analytics.data.v1beta.Row 1842 23, // 13: google.analytics.data.v1beta.RunReportResponse.totals:type_name -> google.analytics.data.v1beta.Row 1843 23, // 14: google.analytics.data.v1beta.RunReportResponse.maximums:type_name -> google.analytics.data.v1beta.Row 1844 23, // 15: google.analytics.data.v1beta.RunReportResponse.minimums:type_name -> google.analytics.data.v1beta.Row 1845 24, // 16: google.analytics.data.v1beta.RunReportResponse.metadata:type_name -> google.analytics.data.v1beta.ResponseMetaData 1846 25, // 17: google.analytics.data.v1beta.RunReportResponse.property_quota:type_name -> google.analytics.data.v1beta.PropertyQuota 1847 14, // 18: google.analytics.data.v1beta.RunPivotReportRequest.dimensions:type_name -> google.analytics.data.v1beta.Dimension 1848 15, // 19: google.analytics.data.v1beta.RunPivotReportRequest.metrics:type_name -> google.analytics.data.v1beta.Metric 1849 16, // 20: google.analytics.data.v1beta.RunPivotReportRequest.date_ranges:type_name -> google.analytics.data.v1beta.DateRange 1850 26, // 21: google.analytics.data.v1beta.RunPivotReportRequest.pivots:type_name -> google.analytics.data.v1beta.Pivot 1851 17, // 22: google.analytics.data.v1beta.RunPivotReportRequest.dimension_filter:type_name -> google.analytics.data.v1beta.FilterExpression 1852 17, // 23: google.analytics.data.v1beta.RunPivotReportRequest.metric_filter:type_name -> google.analytics.data.v1beta.FilterExpression 1853 20, // 24: google.analytics.data.v1beta.RunPivotReportRequest.cohort_spec:type_name -> google.analytics.data.v1beta.CohortSpec 1854 27, // 25: google.analytics.data.v1beta.RunPivotReportResponse.pivot_headers:type_name -> google.analytics.data.v1beta.PivotHeader 1855 21, // 26: google.analytics.data.v1beta.RunPivotReportResponse.dimension_headers:type_name -> google.analytics.data.v1beta.DimensionHeader 1856 22, // 27: google.analytics.data.v1beta.RunPivotReportResponse.metric_headers:type_name -> google.analytics.data.v1beta.MetricHeader 1857 23, // 28: google.analytics.data.v1beta.RunPivotReportResponse.rows:type_name -> google.analytics.data.v1beta.Row 1858 23, // 29: google.analytics.data.v1beta.RunPivotReportResponse.aggregates:type_name -> google.analytics.data.v1beta.Row 1859 24, // 30: google.analytics.data.v1beta.RunPivotReportResponse.metadata:type_name -> google.analytics.data.v1beta.ResponseMetaData 1860 25, // 31: google.analytics.data.v1beta.RunPivotReportResponse.property_quota:type_name -> google.analytics.data.v1beta.PropertyQuota 1861 1, // 32: google.analytics.data.v1beta.BatchRunReportsRequest.requests:type_name -> google.analytics.data.v1beta.RunReportRequest 1862 2, // 33: google.analytics.data.v1beta.BatchRunReportsResponse.reports:type_name -> google.analytics.data.v1beta.RunReportResponse 1863 3, // 34: google.analytics.data.v1beta.BatchRunPivotReportsRequest.requests:type_name -> google.analytics.data.v1beta.RunPivotReportRequest 1864 4, // 35: google.analytics.data.v1beta.BatchRunPivotReportsResponse.pivot_reports:type_name -> google.analytics.data.v1beta.RunPivotReportResponse 1865 14, // 36: google.analytics.data.v1beta.RunRealtimeReportRequest.dimensions:type_name -> google.analytics.data.v1beta.Dimension 1866 15, // 37: google.analytics.data.v1beta.RunRealtimeReportRequest.metrics:type_name -> google.analytics.data.v1beta.Metric 1867 17, // 38: google.analytics.data.v1beta.RunRealtimeReportRequest.dimension_filter:type_name -> google.analytics.data.v1beta.FilterExpression 1868 17, // 39: google.analytics.data.v1beta.RunRealtimeReportRequest.metric_filter:type_name -> google.analytics.data.v1beta.FilterExpression 1869 18, // 40: google.analytics.data.v1beta.RunRealtimeReportRequest.metric_aggregations:type_name -> google.analytics.data.v1beta.MetricAggregation 1870 19, // 41: google.analytics.data.v1beta.RunRealtimeReportRequest.order_bys:type_name -> google.analytics.data.v1beta.OrderBy 1871 28, // 42: google.analytics.data.v1beta.RunRealtimeReportRequest.minute_ranges:type_name -> google.analytics.data.v1beta.MinuteRange 1872 21, // 43: google.analytics.data.v1beta.RunRealtimeReportResponse.dimension_headers:type_name -> google.analytics.data.v1beta.DimensionHeader 1873 22, // 44: google.analytics.data.v1beta.RunRealtimeReportResponse.metric_headers:type_name -> google.analytics.data.v1beta.MetricHeader 1874 23, // 45: google.analytics.data.v1beta.RunRealtimeReportResponse.rows:type_name -> google.analytics.data.v1beta.Row 1875 23, // 46: google.analytics.data.v1beta.RunRealtimeReportResponse.totals:type_name -> google.analytics.data.v1beta.Row 1876 23, // 47: google.analytics.data.v1beta.RunRealtimeReportResponse.maximums:type_name -> google.analytics.data.v1beta.Row 1877 23, // 48: google.analytics.data.v1beta.RunRealtimeReportResponse.minimums:type_name -> google.analytics.data.v1beta.Row 1878 25, // 49: google.analytics.data.v1beta.RunRealtimeReportResponse.property_quota:type_name -> google.analytics.data.v1beta.PropertyQuota 1879 1, // 50: google.analytics.data.v1beta.BetaAnalyticsData.RunReport:input_type -> google.analytics.data.v1beta.RunReportRequest 1880 3, // 51: google.analytics.data.v1beta.BetaAnalyticsData.RunPivotReport:input_type -> google.analytics.data.v1beta.RunPivotReportRequest 1881 5, // 52: google.analytics.data.v1beta.BetaAnalyticsData.BatchRunReports:input_type -> google.analytics.data.v1beta.BatchRunReportsRequest 1882 7, // 53: google.analytics.data.v1beta.BetaAnalyticsData.BatchRunPivotReports:input_type -> google.analytics.data.v1beta.BatchRunPivotReportsRequest 1883 9, // 54: google.analytics.data.v1beta.BetaAnalyticsData.GetMetadata:input_type -> google.analytics.data.v1beta.GetMetadataRequest 1884 10, // 55: google.analytics.data.v1beta.BetaAnalyticsData.RunRealtimeReport:input_type -> google.analytics.data.v1beta.RunRealtimeReportRequest 1885 2, // 56: google.analytics.data.v1beta.BetaAnalyticsData.RunReport:output_type -> google.analytics.data.v1beta.RunReportResponse 1886 4, // 57: google.analytics.data.v1beta.BetaAnalyticsData.RunPivotReport:output_type -> google.analytics.data.v1beta.RunPivotReportResponse 1887 6, // 58: google.analytics.data.v1beta.BetaAnalyticsData.BatchRunReports:output_type -> google.analytics.data.v1beta.BatchRunReportsResponse 1888 8, // 59: google.analytics.data.v1beta.BetaAnalyticsData.BatchRunPivotReports:output_type -> google.analytics.data.v1beta.BatchRunPivotReportsResponse 1889 0, // 60: google.analytics.data.v1beta.BetaAnalyticsData.GetMetadata:output_type -> google.analytics.data.v1beta.Metadata 1890 11, // 61: google.analytics.data.v1beta.BetaAnalyticsData.RunRealtimeReport:output_type -> google.analytics.data.v1beta.RunRealtimeReportResponse 1891 56, // [56:62] is the sub-list for method output_type 1892 50, // [50:56] is the sub-list for method input_type 1893 50, // [50:50] is the sub-list for extension type_name 1894 50, // [50:50] is the sub-list for extension extendee 1895 0, // [0:50] is the sub-list for field type_name 1896} 1897 1898func init() { file_google_analytics_data_v1beta_analytics_data_api_proto_init() } 1899func file_google_analytics_data_v1beta_analytics_data_api_proto_init() { 1900 if File_google_analytics_data_v1beta_analytics_data_api_proto != nil { 1901 return 1902 } 1903 file_google_analytics_data_v1beta_data_proto_init() 1904 if !protoimpl.UnsafeEnabled { 1905 file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 1906 switch v := v.(*Metadata); i { 1907 case 0: 1908 return &v.state 1909 case 1: 1910 return &v.sizeCache 1911 case 2: 1912 return &v.unknownFields 1913 default: 1914 return nil 1915 } 1916 } 1917 file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 1918 switch v := v.(*RunReportRequest); i { 1919 case 0: 1920 return &v.state 1921 case 1: 1922 return &v.sizeCache 1923 case 2: 1924 return &v.unknownFields 1925 default: 1926 return nil 1927 } 1928 } 1929 file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 1930 switch v := v.(*RunReportResponse); i { 1931 case 0: 1932 return &v.state 1933 case 1: 1934 return &v.sizeCache 1935 case 2: 1936 return &v.unknownFields 1937 default: 1938 return nil 1939 } 1940 } 1941 file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 1942 switch v := v.(*RunPivotReportRequest); i { 1943 case 0: 1944 return &v.state 1945 case 1: 1946 return &v.sizeCache 1947 case 2: 1948 return &v.unknownFields 1949 default: 1950 return nil 1951 } 1952 } 1953 file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 1954 switch v := v.(*RunPivotReportResponse); i { 1955 case 0: 1956 return &v.state 1957 case 1: 1958 return &v.sizeCache 1959 case 2: 1960 return &v.unknownFields 1961 default: 1962 return nil 1963 } 1964 } 1965 file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 1966 switch v := v.(*BatchRunReportsRequest); i { 1967 case 0: 1968 return &v.state 1969 case 1: 1970 return &v.sizeCache 1971 case 2: 1972 return &v.unknownFields 1973 default: 1974 return nil 1975 } 1976 } 1977 file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 1978 switch v := v.(*BatchRunReportsResponse); i { 1979 case 0: 1980 return &v.state 1981 case 1: 1982 return &v.sizeCache 1983 case 2: 1984 return &v.unknownFields 1985 default: 1986 return nil 1987 } 1988 } 1989 file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 1990 switch v := v.(*BatchRunPivotReportsRequest); i { 1991 case 0: 1992 return &v.state 1993 case 1: 1994 return &v.sizeCache 1995 case 2: 1996 return &v.unknownFields 1997 default: 1998 return nil 1999 } 2000 } 2001 file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 2002 switch v := v.(*BatchRunPivotReportsResponse); i { 2003 case 0: 2004 return &v.state 2005 case 1: 2006 return &v.sizeCache 2007 case 2: 2008 return &v.unknownFields 2009 default: 2010 return nil 2011 } 2012 } 2013 file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 2014 switch v := v.(*GetMetadataRequest); i { 2015 case 0: 2016 return &v.state 2017 case 1: 2018 return &v.sizeCache 2019 case 2: 2020 return &v.unknownFields 2021 default: 2022 return nil 2023 } 2024 } 2025 file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 2026 switch v := v.(*RunRealtimeReportRequest); i { 2027 case 0: 2028 return &v.state 2029 case 1: 2030 return &v.sizeCache 2031 case 2: 2032 return &v.unknownFields 2033 default: 2034 return nil 2035 } 2036 } 2037 file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 2038 switch v := v.(*RunRealtimeReportResponse); i { 2039 case 0: 2040 return &v.state 2041 case 1: 2042 return &v.sizeCache 2043 case 2: 2044 return &v.unknownFields 2045 default: 2046 return nil 2047 } 2048 } 2049 } 2050 type x struct{} 2051 out := protoimpl.TypeBuilder{ 2052 File: protoimpl.DescBuilder{ 2053 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 2054 RawDescriptor: file_google_analytics_data_v1beta_analytics_data_api_proto_rawDesc, 2055 NumEnums: 0, 2056 NumMessages: 12, 2057 NumExtensions: 0, 2058 NumServices: 1, 2059 }, 2060 GoTypes: file_google_analytics_data_v1beta_analytics_data_api_proto_goTypes, 2061 DependencyIndexes: file_google_analytics_data_v1beta_analytics_data_api_proto_depIdxs, 2062 MessageInfos: file_google_analytics_data_v1beta_analytics_data_api_proto_msgTypes, 2063 }.Build() 2064 File_google_analytics_data_v1beta_analytics_data_api_proto = out.File 2065 file_google_analytics_data_v1beta_analytics_data_api_proto_rawDesc = nil 2066 file_google_analytics_data_v1beta_analytics_data_api_proto_goTypes = nil 2067 file_google_analytics_data_v1beta_analytics_data_api_proto_depIdxs = nil 2068} 2069 2070// Reference imports to suppress errors if they are not otherwise used. 2071var _ context.Context 2072var _ grpc.ClientConnInterface 2073 2074// This is a compile-time assertion to ensure that this generated file 2075// is compatible with the grpc package it is being compiled against. 2076const _ = grpc.SupportPackageIsVersion6 2077 2078// BetaAnalyticsDataClient is the client API for BetaAnalyticsData service. 2079// 2080// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. 2081type BetaAnalyticsDataClient interface { 2082 // Returns a customized report of your Google Analytics event data. Reports 2083 // contain statistics derived from data collected by the Google Analytics 2084 // tracking code. The data returned from the API is as a table with columns 2085 // for the requested dimensions and metrics. Metrics are individual 2086 // measurements of user activity on your property, such as active users or 2087 // event count. Dimensions break down metrics across some common criteria, 2088 // such as country or event name. 2089 RunReport(ctx context.Context, in *RunReportRequest, opts ...grpc.CallOption) (*RunReportResponse, error) 2090 // Returns a customized pivot report of your Google Analytics event data. 2091 // Pivot reports are more advanced and expressive formats than regular 2092 // reports. In a pivot report, dimensions are only visible if they are 2093 // included in a pivot. Multiple pivots can be specified to further dissect 2094 // your data. 2095 RunPivotReport(ctx context.Context, in *RunPivotReportRequest, opts ...grpc.CallOption) (*RunPivotReportResponse, error) 2096 // Returns multiple reports in a batch. All reports must be for the same 2097 // GA4 Property. 2098 BatchRunReports(ctx context.Context, in *BatchRunReportsRequest, opts ...grpc.CallOption) (*BatchRunReportsResponse, error) 2099 // Returns multiple pivot reports in a batch. All reports must be for the same 2100 // GA4 Property. 2101 BatchRunPivotReports(ctx context.Context, in *BatchRunPivotReportsRequest, opts ...grpc.CallOption) (*BatchRunPivotReportsResponse, error) 2102 // Returns metadata for dimensions and metrics available in reporting methods. 2103 // Used to explore the dimensions and metrics. In this method, a Google 2104 // Analytics GA4 Property Identifier is specified in the request, and 2105 // the metadata response includes Custom dimensions and metrics as well as 2106 // Universal metadata. 2107 // 2108 // For example if a custom metric with parameter name `levels_unlocked` is 2109 // registered to a property, the Metadata response will contain 2110 // `customEvent:levels_unlocked`. Universal metadata are dimensions and 2111 // metrics applicable to any property such as `country` and `totalUsers`. 2112 GetMetadata(ctx context.Context, in *GetMetadataRequest, opts ...grpc.CallOption) (*Metadata, error) 2113 // The Google Analytics Realtime API returns a customized report of realtime 2114 // event data for your property. These reports show events and usage from the 2115 // last 30 minutes. 2116 RunRealtimeReport(ctx context.Context, in *RunRealtimeReportRequest, opts ...grpc.CallOption) (*RunRealtimeReportResponse, error) 2117} 2118 2119type betaAnalyticsDataClient struct { 2120 cc grpc.ClientConnInterface 2121} 2122 2123func NewBetaAnalyticsDataClient(cc grpc.ClientConnInterface) BetaAnalyticsDataClient { 2124 return &betaAnalyticsDataClient{cc} 2125} 2126 2127func (c *betaAnalyticsDataClient) RunReport(ctx context.Context, in *RunReportRequest, opts ...grpc.CallOption) (*RunReportResponse, error) { 2128 out := new(RunReportResponse) 2129 err := c.cc.Invoke(ctx, "/google.analytics.data.v1beta.BetaAnalyticsData/RunReport", in, out, opts...) 2130 if err != nil { 2131 return nil, err 2132 } 2133 return out, nil 2134} 2135 2136func (c *betaAnalyticsDataClient) RunPivotReport(ctx context.Context, in *RunPivotReportRequest, opts ...grpc.CallOption) (*RunPivotReportResponse, error) { 2137 out := new(RunPivotReportResponse) 2138 err := c.cc.Invoke(ctx, "/google.analytics.data.v1beta.BetaAnalyticsData/RunPivotReport", in, out, opts...) 2139 if err != nil { 2140 return nil, err 2141 } 2142 return out, nil 2143} 2144 2145func (c *betaAnalyticsDataClient) BatchRunReports(ctx context.Context, in *BatchRunReportsRequest, opts ...grpc.CallOption) (*BatchRunReportsResponse, error) { 2146 out := new(BatchRunReportsResponse) 2147 err := c.cc.Invoke(ctx, "/google.analytics.data.v1beta.BetaAnalyticsData/BatchRunReports", in, out, opts...) 2148 if err != nil { 2149 return nil, err 2150 } 2151 return out, nil 2152} 2153 2154func (c *betaAnalyticsDataClient) BatchRunPivotReports(ctx context.Context, in *BatchRunPivotReportsRequest, opts ...grpc.CallOption) (*BatchRunPivotReportsResponse, error) { 2155 out := new(BatchRunPivotReportsResponse) 2156 err := c.cc.Invoke(ctx, "/google.analytics.data.v1beta.BetaAnalyticsData/BatchRunPivotReports", in, out, opts...) 2157 if err != nil { 2158 return nil, err 2159 } 2160 return out, nil 2161} 2162 2163func (c *betaAnalyticsDataClient) GetMetadata(ctx context.Context, in *GetMetadataRequest, opts ...grpc.CallOption) (*Metadata, error) { 2164 out := new(Metadata) 2165 err := c.cc.Invoke(ctx, "/google.analytics.data.v1beta.BetaAnalyticsData/GetMetadata", in, out, opts...) 2166 if err != nil { 2167 return nil, err 2168 } 2169 return out, nil 2170} 2171 2172func (c *betaAnalyticsDataClient) RunRealtimeReport(ctx context.Context, in *RunRealtimeReportRequest, opts ...grpc.CallOption) (*RunRealtimeReportResponse, error) { 2173 out := new(RunRealtimeReportResponse) 2174 err := c.cc.Invoke(ctx, "/google.analytics.data.v1beta.BetaAnalyticsData/RunRealtimeReport", in, out, opts...) 2175 if err != nil { 2176 return nil, err 2177 } 2178 return out, nil 2179} 2180 2181// BetaAnalyticsDataServer is the server API for BetaAnalyticsData service. 2182type BetaAnalyticsDataServer interface { 2183 // Returns a customized report of your Google Analytics event data. Reports 2184 // contain statistics derived from data collected by the Google Analytics 2185 // tracking code. The data returned from the API is as a table with columns 2186 // for the requested dimensions and metrics. Metrics are individual 2187 // measurements of user activity on your property, such as active users or 2188 // event count. Dimensions break down metrics across some common criteria, 2189 // such as country or event name. 2190 RunReport(context.Context, *RunReportRequest) (*RunReportResponse, error) 2191 // Returns a customized pivot report of your Google Analytics event data. 2192 // Pivot reports are more advanced and expressive formats than regular 2193 // reports. In a pivot report, dimensions are only visible if they are 2194 // included in a pivot. Multiple pivots can be specified to further dissect 2195 // your data. 2196 RunPivotReport(context.Context, *RunPivotReportRequest) (*RunPivotReportResponse, error) 2197 // Returns multiple reports in a batch. All reports must be for the same 2198 // GA4 Property. 2199 BatchRunReports(context.Context, *BatchRunReportsRequest) (*BatchRunReportsResponse, error) 2200 // Returns multiple pivot reports in a batch. All reports must be for the same 2201 // GA4 Property. 2202 BatchRunPivotReports(context.Context, *BatchRunPivotReportsRequest) (*BatchRunPivotReportsResponse, error) 2203 // Returns metadata for dimensions and metrics available in reporting methods. 2204 // Used to explore the dimensions and metrics. In this method, a Google 2205 // Analytics GA4 Property Identifier is specified in the request, and 2206 // the metadata response includes Custom dimensions and metrics as well as 2207 // Universal metadata. 2208 // 2209 // For example if a custom metric with parameter name `levels_unlocked` is 2210 // registered to a property, the Metadata response will contain 2211 // `customEvent:levels_unlocked`. Universal metadata are dimensions and 2212 // metrics applicable to any property such as `country` and `totalUsers`. 2213 GetMetadata(context.Context, *GetMetadataRequest) (*Metadata, error) 2214 // The Google Analytics Realtime API returns a customized report of realtime 2215 // event data for your property. These reports show events and usage from the 2216 // last 30 minutes. 2217 RunRealtimeReport(context.Context, *RunRealtimeReportRequest) (*RunRealtimeReportResponse, error) 2218} 2219 2220// UnimplementedBetaAnalyticsDataServer can be embedded to have forward compatible implementations. 2221type UnimplementedBetaAnalyticsDataServer struct { 2222} 2223 2224func (*UnimplementedBetaAnalyticsDataServer) RunReport(context.Context, *RunReportRequest) (*RunReportResponse, error) { 2225 return nil, status.Errorf(codes.Unimplemented, "method RunReport not implemented") 2226} 2227func (*UnimplementedBetaAnalyticsDataServer) RunPivotReport(context.Context, *RunPivotReportRequest) (*RunPivotReportResponse, error) { 2228 return nil, status.Errorf(codes.Unimplemented, "method RunPivotReport not implemented") 2229} 2230func (*UnimplementedBetaAnalyticsDataServer) BatchRunReports(context.Context, *BatchRunReportsRequest) (*BatchRunReportsResponse, error) { 2231 return nil, status.Errorf(codes.Unimplemented, "method BatchRunReports not implemented") 2232} 2233func (*UnimplementedBetaAnalyticsDataServer) BatchRunPivotReports(context.Context, *BatchRunPivotReportsRequest) (*BatchRunPivotReportsResponse, error) { 2234 return nil, status.Errorf(codes.Unimplemented, "method BatchRunPivotReports not implemented") 2235} 2236func (*UnimplementedBetaAnalyticsDataServer) GetMetadata(context.Context, *GetMetadataRequest) (*Metadata, error) { 2237 return nil, status.Errorf(codes.Unimplemented, "method GetMetadata not implemented") 2238} 2239func (*UnimplementedBetaAnalyticsDataServer) RunRealtimeReport(context.Context, *RunRealtimeReportRequest) (*RunRealtimeReportResponse, error) { 2240 return nil, status.Errorf(codes.Unimplemented, "method RunRealtimeReport not implemented") 2241} 2242 2243func RegisterBetaAnalyticsDataServer(s *grpc.Server, srv BetaAnalyticsDataServer) { 2244 s.RegisterService(&_BetaAnalyticsData_serviceDesc, srv) 2245} 2246 2247func _BetaAnalyticsData_RunReport_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2248 in := new(RunReportRequest) 2249 if err := dec(in); err != nil { 2250 return nil, err 2251 } 2252 if interceptor == nil { 2253 return srv.(BetaAnalyticsDataServer).RunReport(ctx, in) 2254 } 2255 info := &grpc.UnaryServerInfo{ 2256 Server: srv, 2257 FullMethod: "/google.analytics.data.v1beta.BetaAnalyticsData/RunReport", 2258 } 2259 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2260 return srv.(BetaAnalyticsDataServer).RunReport(ctx, req.(*RunReportRequest)) 2261 } 2262 return interceptor(ctx, in, info, handler) 2263} 2264 2265func _BetaAnalyticsData_RunPivotReport_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2266 in := new(RunPivotReportRequest) 2267 if err := dec(in); err != nil { 2268 return nil, err 2269 } 2270 if interceptor == nil { 2271 return srv.(BetaAnalyticsDataServer).RunPivotReport(ctx, in) 2272 } 2273 info := &grpc.UnaryServerInfo{ 2274 Server: srv, 2275 FullMethod: "/google.analytics.data.v1beta.BetaAnalyticsData/RunPivotReport", 2276 } 2277 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2278 return srv.(BetaAnalyticsDataServer).RunPivotReport(ctx, req.(*RunPivotReportRequest)) 2279 } 2280 return interceptor(ctx, in, info, handler) 2281} 2282 2283func _BetaAnalyticsData_BatchRunReports_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2284 in := new(BatchRunReportsRequest) 2285 if err := dec(in); err != nil { 2286 return nil, err 2287 } 2288 if interceptor == nil { 2289 return srv.(BetaAnalyticsDataServer).BatchRunReports(ctx, in) 2290 } 2291 info := &grpc.UnaryServerInfo{ 2292 Server: srv, 2293 FullMethod: "/google.analytics.data.v1beta.BetaAnalyticsData/BatchRunReports", 2294 } 2295 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2296 return srv.(BetaAnalyticsDataServer).BatchRunReports(ctx, req.(*BatchRunReportsRequest)) 2297 } 2298 return interceptor(ctx, in, info, handler) 2299} 2300 2301func _BetaAnalyticsData_BatchRunPivotReports_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2302 in := new(BatchRunPivotReportsRequest) 2303 if err := dec(in); err != nil { 2304 return nil, err 2305 } 2306 if interceptor == nil { 2307 return srv.(BetaAnalyticsDataServer).BatchRunPivotReports(ctx, in) 2308 } 2309 info := &grpc.UnaryServerInfo{ 2310 Server: srv, 2311 FullMethod: "/google.analytics.data.v1beta.BetaAnalyticsData/BatchRunPivotReports", 2312 } 2313 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2314 return srv.(BetaAnalyticsDataServer).BatchRunPivotReports(ctx, req.(*BatchRunPivotReportsRequest)) 2315 } 2316 return interceptor(ctx, in, info, handler) 2317} 2318 2319func _BetaAnalyticsData_GetMetadata_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2320 in := new(GetMetadataRequest) 2321 if err := dec(in); err != nil { 2322 return nil, err 2323 } 2324 if interceptor == nil { 2325 return srv.(BetaAnalyticsDataServer).GetMetadata(ctx, in) 2326 } 2327 info := &grpc.UnaryServerInfo{ 2328 Server: srv, 2329 FullMethod: "/google.analytics.data.v1beta.BetaAnalyticsData/GetMetadata", 2330 } 2331 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2332 return srv.(BetaAnalyticsDataServer).GetMetadata(ctx, req.(*GetMetadataRequest)) 2333 } 2334 return interceptor(ctx, in, info, handler) 2335} 2336 2337func _BetaAnalyticsData_RunRealtimeReport_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2338 in := new(RunRealtimeReportRequest) 2339 if err := dec(in); err != nil { 2340 return nil, err 2341 } 2342 if interceptor == nil { 2343 return srv.(BetaAnalyticsDataServer).RunRealtimeReport(ctx, in) 2344 } 2345 info := &grpc.UnaryServerInfo{ 2346 Server: srv, 2347 FullMethod: "/google.analytics.data.v1beta.BetaAnalyticsData/RunRealtimeReport", 2348 } 2349 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2350 return srv.(BetaAnalyticsDataServer).RunRealtimeReport(ctx, req.(*RunRealtimeReportRequest)) 2351 } 2352 return interceptor(ctx, in, info, handler) 2353} 2354 2355var _BetaAnalyticsData_serviceDesc = grpc.ServiceDesc{ 2356 ServiceName: "google.analytics.data.v1beta.BetaAnalyticsData", 2357 HandlerType: (*BetaAnalyticsDataServer)(nil), 2358 Methods: []grpc.MethodDesc{ 2359 { 2360 MethodName: "RunReport", 2361 Handler: _BetaAnalyticsData_RunReport_Handler, 2362 }, 2363 { 2364 MethodName: "RunPivotReport", 2365 Handler: _BetaAnalyticsData_RunPivotReport_Handler, 2366 }, 2367 { 2368 MethodName: "BatchRunReports", 2369 Handler: _BetaAnalyticsData_BatchRunReports_Handler, 2370 }, 2371 { 2372 MethodName: "BatchRunPivotReports", 2373 Handler: _BetaAnalyticsData_BatchRunPivotReports_Handler, 2374 }, 2375 { 2376 MethodName: "GetMetadata", 2377 Handler: _BetaAnalyticsData_GetMetadata_Handler, 2378 }, 2379 { 2380 MethodName: "RunRealtimeReport", 2381 Handler: _BetaAnalyticsData_RunRealtimeReport_Handler, 2382 }, 2383 }, 2384 Streams: []grpc.StreamDesc{}, 2385 Metadata: "google/analytics/data/v1beta/analytics_data_api.proto", 2386} 2387