| // Copyright 2026 Google LLC. |
| // Use of this source code is governed by a BSD-style |
| // license that can be found in the LICENSE file. |
| |
| // Code generated file. DO NOT EDIT. |
| |
| // Package analyticsdata provides access to the Google Analytics Data API. |
| // |
| // For product documentation, see: https://developers.google.com/analytics/devguides/reporting/data/v1/ |
| // |
| // # Library status |
| // |
| // These client libraries are officially supported by Google. However, this |
| // library is considered complete and is in maintenance mode. This means |
| // that we will address critical bugs and security issues but will not add |
| // any new features. |
| // |
| // When possible, we recommend using our newer |
| // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go) |
| // that are still actively being worked and iterated on. |
| // |
| // # Creating a client |
| // |
| // Usage example: |
| // |
| // import "google.golang.org/api/analyticsdata/v1beta" |
| // ... |
| // ctx := context.Background() |
| // analyticsdataService, err := analyticsdata.NewService(ctx) |
| // |
| // In this example, Google Application Default Credentials are used for |
| // authentication. For information on how to create and obtain Application |
| // Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. |
| // |
| // # Other authentication options |
| // |
| // By default, all available scopes (see "Constants") are used to authenticate. |
| // To restrict scopes, use [google.golang.org/api/option.WithScopes]: |
| // |
| // analyticsdataService, err := analyticsdata.NewService(ctx, option.WithScopes(analyticsdata.AnalyticsReadonlyScope)) |
| // |
| // To use an API key for authentication (note: some APIs do not support API |
| // keys), use [google.golang.org/api/option.WithAPIKey]: |
| // |
| // analyticsdataService, err := analyticsdata.NewService(ctx, option.WithAPIKey("AIza...")) |
| // |
| // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth |
| // flow, use [google.golang.org/api/option.WithTokenSource]: |
| // |
| // config := &oauth2.Config{...} |
| // // ... |
| // token, err := config.Exchange(ctx, ...) |
| // analyticsdataService, err := analyticsdata.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) |
| // |
| // See [google.golang.org/api/option.ClientOption] for details on options. |
| package analyticsdata // import "google.golang.org/api/analyticsdata/v1beta" |
| |
| import ( |
| "bytes" |
| "context" |
| "encoding/json" |
| "errors" |
| "fmt" |
| "io" |
| "log/slog" |
| "net/http" |
| "net/url" |
| "strconv" |
| "strings" |
| |
| "github.com/googleapis/gax-go/v2/internallog" |
| googleapi "google.golang.org/api/googleapi" |
| internal "google.golang.org/api/internal" |
| gensupport "google.golang.org/api/internal/gensupport" |
| option "google.golang.org/api/option" |
| internaloption "google.golang.org/api/option/internaloption" |
| htransport "google.golang.org/api/transport/http" |
| ) |
| |
| // Always reference these packages, just in case the auto-generated code |
| // below doesn't. |
| var _ = bytes.NewBuffer |
| var _ = strconv.Itoa |
| var _ = fmt.Sprintf |
| var _ = json.NewDecoder |
| var _ = io.Copy |
| var _ = url.Parse |
| var _ = gensupport.MarshalJSON |
| var _ = googleapi.Version |
| var _ = errors.New |
| var _ = strings.Replace |
| var _ = context.Canceled |
| var _ = internaloption.WithDefaultEndpoint |
| var _ = internal.Version |
| var _ = internallog.New |
| |
| const apiId = "analyticsdata:v1beta" |
| const apiName = "analyticsdata" |
| const apiVersion = "v1beta" |
| const basePath = "https://analyticsdata.googleapis.com/" |
| const basePathTemplate = "https://analyticsdata.UNIVERSE_DOMAIN/" |
| const mtlsBasePath = "https://analyticsdata.mtls.googleapis.com/" |
| |
| // OAuth2 scopes used by this API. |
| const ( |
| // View and manage your Google Analytics data |
| AnalyticsScope = "https://www.googleapis.com/auth/analytics" |
| |
| // See and download your Google Analytics data |
| AnalyticsReadonlyScope = "https://www.googleapis.com/auth/analytics.readonly" |
| ) |
| |
| // NewService creates a new Service. |
| func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { |
| scopesOption := internaloption.WithDefaultScopes( |
| "https://www.googleapis.com/auth/analytics", |
| "https://www.googleapis.com/auth/analytics.readonly", |
| ) |
| // NOTE: prepend, so we don't override user-specified scopes. |
| opts = append([]option.ClientOption{scopesOption}, opts...) |
| opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) |
| opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate)) |
| opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) |
| opts = append(opts, internaloption.EnableNewAuthLibrary()) |
| client, endpoint, err := htransport.NewClient(ctx, opts...) |
| if err != nil { |
| return nil, err |
| } |
| s := &Service{client: client, BasePath: basePath, logger: internaloption.GetLogger(opts)} |
| s.Properties = NewPropertiesService(s) |
| if endpoint != "" { |
| s.BasePath = endpoint |
| } |
| return s, nil |
| } |
| |
| // New creates a new Service. It uses the provided http.Client for requests. |
| // |
| // Deprecated: please use NewService instead. |
| // To provide a custom HTTP client, use option.WithHTTPClient. |
| // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. |
| func New(client *http.Client) (*Service, error) { |
| if client == nil { |
| return nil, errors.New("client is nil") |
| } |
| return NewService(context.TODO(), option.WithHTTPClient(client)) |
| } |
| |
| type Service struct { |
| client *http.Client |
| logger *slog.Logger |
| BasePath string // API endpoint base URL |
| UserAgent string // optional additional User-Agent fragment |
| |
| Properties *PropertiesService |
| } |
| |
| func (s *Service) userAgent() string { |
| if s.UserAgent == "" { |
| return googleapi.UserAgent |
| } |
| return googleapi.UserAgent + " " + s.UserAgent |
| } |
| |
| func NewPropertiesService(s *Service) *PropertiesService { |
| rs := &PropertiesService{s: s} |
| rs.AudienceExports = NewPropertiesAudienceExportsService(s) |
| return rs |
| } |
| |
| type PropertiesService struct { |
| s *Service |
| |
| AudienceExports *PropertiesAudienceExportsService |
| } |
| |
| func NewPropertiesAudienceExportsService(s *Service) *PropertiesAudienceExportsService { |
| rs := &PropertiesAudienceExportsService{s: s} |
| return rs |
| } |
| |
| type PropertiesAudienceExportsService struct { |
| s *Service |
| } |
| |
| // ActiveMetricRestriction: A metric actively restricted in creating the |
| // report. |
| type ActiveMetricRestriction struct { |
| // MetricName: The name of the restricted metric. |
| MetricName string `json:"metricName,omitempty"` |
| // RestrictedMetricTypes: The reason for this metric's restriction. |
| // |
| // Possible values: |
| // "RESTRICTED_METRIC_TYPE_UNSPECIFIED" - Unspecified type. |
| // "COST_DATA" - Cost metrics such as `adCost`. |
| // "REVENUE_DATA" - Revenue metrics such as `purchaseRevenue`. |
| RestrictedMetricTypes []string `json:"restrictedMetricTypes,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "MetricName") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "MetricName") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s ActiveMetricRestriction) MarshalJSON() ([]byte, error) { |
| type NoMethod ActiveMetricRestriction |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // AudienceExport: An audience export is a list of users in an audience at the |
| // time of the list's creation. One audience may have multiple audience exports |
| // created for different days. |
| type AudienceExport struct { |
| // Audience: Required. The audience resource name. This resource name |
| // identifies the audience being listed and is shared between the Analytics |
| // Data & Admin APIs. Format: `properties/{property}/audiences/{audience}` |
| Audience string `json:"audience,omitempty"` |
| // AudienceDisplayName: Output only. The descriptive display name for this |
| // audience. For example, "Purchasers". |
| AudienceDisplayName string `json:"audienceDisplayName,omitempty"` |
| // BeginCreatingTime: Output only. The time when CreateAudienceExport was |
| // called and the AudienceExport began the `CREATING` state. |
| BeginCreatingTime string `json:"beginCreatingTime,omitempty"` |
| // CreationQuotaTokensCharged: Output only. The total quota tokens charged |
| // during creation of the AudienceExport. Because this token count is based on |
| // activity from the `CREATING` state, this tokens charged will be fixed once |
| // an AudienceExport enters the `ACTIVE` or `FAILED` states. |
| CreationQuotaTokensCharged int64 `json:"creationQuotaTokensCharged,omitempty"` |
| // Dimensions: Required. The dimensions requested and displayed in the query |
| // response. |
| Dimensions []*V1betaAudienceDimension `json:"dimensions,omitempty"` |
| // ErrorMessage: Output only. Error message is populated when an audience |
| // export fails during creation. A common reason for such a failure is quota |
| // exhaustion. |
| ErrorMessage string `json:"errorMessage,omitempty"` |
| // Name: Output only. Identifier. The audience export resource name assigned |
| // during creation. This resource name identifies this `AudienceExport`. |
| // Format: `properties/{property}/audienceExports/{audience_export}` |
| Name string `json:"name,omitempty"` |
| // PercentageCompleted: Output only. The percentage completed for this audience |
| // export ranging between 0 to 100. |
| PercentageCompleted float64 `json:"percentageCompleted,omitempty"` |
| // RowCount: Output only. The total number of rows in the AudienceExport |
| // result. |
| RowCount int64 `json:"rowCount,omitempty"` |
| // State: Output only. The current state for this AudienceExport. |
| // |
| // Possible values: |
| // "STATE_UNSPECIFIED" - Unspecified state will never be used. |
| // "CREATING" - The AudienceExport is currently creating and will be |
| // available in the future. Creating occurs immediately after the |
| // CreateAudienceExport call. |
| // "ACTIVE" - The AudienceExport is fully created and ready for querying. An |
| // AudienceExport is updated to active asynchronously from a request; this |
| // occurs some time (for example 15 minutes) after the initial create call. |
| // "FAILED" - The AudienceExport failed to be created. It is possible that |
| // re-requesting this audience export will succeed. |
| State string `json:"state,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Audience") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Audience") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s AudienceExport) MarshalJSON() ([]byte, error) { |
| type NoMethod AudienceExport |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| func (s *AudienceExport) UnmarshalJSON(data []byte) error { |
| type NoMethod AudienceExport |
| var s1 struct { |
| PercentageCompleted gensupport.JSONFloat64 `json:"percentageCompleted"` |
| *NoMethod |
| } |
| s1.NoMethod = (*NoMethod)(s) |
| if err := json.Unmarshal(data, &s1); err != nil { |
| return err |
| } |
| s.PercentageCompleted = float64(s1.PercentageCompleted) |
| return nil |
| } |
| |
| // AudienceListMetadata: This metadata is currently blank. |
| type AudienceListMetadata struct { |
| } |
| |
| // BatchRunPivotReportsRequest: The batch request containing multiple pivot |
| // report requests. |
| type BatchRunPivotReportsRequest struct { |
| // Requests: Individual requests. Each request has a separate pivot report |
| // response. Each batch request is allowed up to 5 requests. |
| Requests []*RunPivotReportRequest `json:"requests,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Requests") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Requests") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s BatchRunPivotReportsRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod BatchRunPivotReportsRequest |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // BatchRunPivotReportsResponse: The batch response containing multiple pivot |
| // reports. |
| type BatchRunPivotReportsResponse struct { |
| // Kind: Identifies what kind of resource this message is. This `kind` is |
| // always the fixed string "analyticsData#batchRunPivotReports". Useful to |
| // distinguish between response types in JSON. |
| Kind string `json:"kind,omitempty"` |
| // PivotReports: Individual responses. Each response has a separate pivot |
| // report request. |
| PivotReports []*RunPivotReportResponse `json:"pivotReports,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Kind") to include in API requests |
| // with the JSON null value. By default, fields with empty values are omitted |
| // from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s BatchRunPivotReportsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod BatchRunPivotReportsResponse |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // BatchRunReportsRequest: The batch request containing multiple report |
| // requests. |
| type BatchRunReportsRequest struct { |
| // Requests: Individual requests. Each request has a separate report response. |
| // Each batch request is allowed up to 5 requests. |
| Requests []*RunReportRequest `json:"requests,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Requests") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Requests") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s BatchRunReportsRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod BatchRunReportsRequest |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // BatchRunReportsResponse: The batch response containing multiple reports. |
| type BatchRunReportsResponse struct { |
| // Kind: Identifies what kind of resource this message is. This `kind` is |
| // always the fixed string "analyticsData#batchRunReports". Useful to |
| // distinguish between response types in JSON. |
| Kind string `json:"kind,omitempty"` |
| // Reports: Individual responses. Each response has a separate report request. |
| Reports []*RunReportResponse `json:"reports,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Kind") to include in API requests |
| // with the JSON null value. By default, fields with empty values are omitted |
| // from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s BatchRunReportsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod BatchRunReportsResponse |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // BetweenFilter: To express that the result needs to be between two numbers |
| // (inclusive). |
| type BetweenFilter struct { |
| // FromValue: Begins with this number. |
| FromValue *NumericValue `json:"fromValue,omitempty"` |
| // ToValue: Ends with this number. |
| ToValue *NumericValue `json:"toValue,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "FromValue") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "FromValue") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s BetweenFilter) MarshalJSON() ([]byte, error) { |
| type NoMethod BetweenFilter |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // CaseExpression: Used to convert a dimension value to a single case. |
| type CaseExpression struct { |
| // DimensionName: Name of a dimension. The name must refer back to a name in |
| // dimensions field of the request. |
| DimensionName string `json:"dimensionName,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DimensionName") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DimensionName") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s CaseExpression) MarshalJSON() ([]byte, error) { |
| type NoMethod CaseExpression |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // CheckCompatibilityRequest: The request for compatibility information for a |
| // report's dimensions and metrics. Check compatibility provides a preview of |
| // the compatibility of a report; fields shared with the `runReport` request |
| // should be the same values as in your `runReport` request. |
| type CheckCompatibilityRequest struct { |
| // CompatibilityFilter: Filters the dimensions and metrics in the response to |
| // just this compatibility. Commonly used as `”compatibilityFilter”: |
| // “COMPATIBLE”` to only return compatible dimensions & metrics. |
| // |
| // Possible values: |
| // "COMPATIBILITY_UNSPECIFIED" - Unspecified compatibility. |
| // "COMPATIBLE" - The dimension or metric is compatible. This dimension or |
| // metric can be successfully added to a report. |
| // "INCOMPATIBLE" - The dimension or metric is incompatible. This dimension |
| // or metric cannot be successfully added to a report. |
| CompatibilityFilter string `json:"compatibilityFilter,omitempty"` |
| // DimensionFilter: The filter clause of dimensions. `dimensionFilter` should |
| // be the same value as in your `runReport` request. |
| DimensionFilter *FilterExpression `json:"dimensionFilter,omitempty"` |
| // Dimensions: The dimensions in this report. `dimensions` should be the same |
| // value as in your `runReport` request. |
| Dimensions []*Dimension `json:"dimensions,omitempty"` |
| // MetricFilter: The filter clause of metrics. `metricFilter` should be the |
| // same value as in your `runReport` request |
| MetricFilter *FilterExpression `json:"metricFilter,omitempty"` |
| // Metrics: The metrics in this report. `metrics` should be the same value as |
| // in your `runReport` request. |
| Metrics []*Metric `json:"metrics,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "CompatibilityFilter") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CompatibilityFilter") to include |
| // in API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s CheckCompatibilityRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod CheckCompatibilityRequest |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // CheckCompatibilityResponse: The compatibility response with the |
| // compatibility of each dimension & metric. |
| type CheckCompatibilityResponse struct { |
| // DimensionCompatibilities: The compatibility of each dimension. |
| DimensionCompatibilities []*DimensionCompatibility `json:"dimensionCompatibilities,omitempty"` |
| // MetricCompatibilities: The compatibility of each metric. |
| MetricCompatibilities []*MetricCompatibility `json:"metricCompatibilities,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "DimensionCompatibilities") |
| // to unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DimensionCompatibilities") to |
| // include in API requests with the JSON null value. By default, fields with |
| // empty values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s CheckCompatibilityResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod CheckCompatibilityResponse |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Cohort: Defines a cohort selection criteria. A cohort is a group of users |
| // who share a common characteristic. For example, users with the same |
| // `firstSessionDate` belong to the same cohort. |
| type Cohort struct { |
| // DateRange: The cohort selects users whose first touch date is between start |
| // date and end date defined in the `dateRange`. This `dateRange` does not |
| // specify the full date range of event data that is present in a cohort |
| // report. In a cohort report, this `dateRange` is extended by the granularity |
| // and offset present in the `cohortsRange`; event data for the extended |
| // reporting date range is present in a cohort report. In a cohort request, |
| // this `dateRange` is required and the `dateRanges` in the `RunReportRequest` |
| // or `RunPivotReportRequest` must be unspecified. This `dateRange` should |
| // generally be aligned with the cohort's granularity. If `CohortsRange` uses |
| // daily granularity, this `dateRange` can be a single day. If `CohortsRange` |
| // uses weekly granularity, this `dateRange` can be aligned to a week boundary, |
| // starting at Sunday and ending Saturday. If `CohortsRange` uses monthly |
| // granularity, this `dateRange` can be aligned to a month, starting at the |
| // first and ending on the last day of the month. |
| DateRange *DateRange `json:"dateRange,omitempty"` |
| // Dimension: Dimension used by the cohort. Required and only supports |
| // `firstSessionDate`. |
| Dimension string `json:"dimension,omitempty"` |
| // Name: Assigns a name to this cohort. The dimension `cohort` is valued to |
| // this name in a report response. If set, cannot begin with `cohort_` or |
| // `RESERVED_`. If not set, cohorts are named by their zero based index |
| // `cohort_0`, `cohort_1`, etc. |
| Name string `json:"name,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DateRange") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DateRange") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s Cohort) MarshalJSON() ([]byte, error) { |
| type NoMethod Cohort |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // CohortReportSettings: Optional settings of a cohort report. |
| type CohortReportSettings struct { |
| // Accumulate: If true, accumulates the result from first touch day to the end |
| // day. Not supported in `RunReportRequest`. |
| Accumulate bool `json:"accumulate,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Accumulate") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Accumulate") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s CohortReportSettings) MarshalJSON() ([]byte, error) { |
| type NoMethod CohortReportSettings |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // CohortSpec: The specification of cohorts for a cohort report. Cohort reports |
| // create a time series of user retention for the cohort. For example, you |
| // could select the cohort of users that were acquired in the first week of |
| // September and follow that cohort for the next six weeks. Selecting the users |
| // acquired in the first week of September cohort is specified in the `cohort` |
| // object. Following that cohort for the next six weeks is specified in the |
| // `cohortsRange` object. For examples, see Cohort Report Examples |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/advanced#cohort_report_examples). |
| // The report response could show a weekly time series where say your app has |
| // retained 60% of this cohort after three weeks and 25% of this cohort after |
| // six weeks. These two percentages can be calculated by the metric |
| // `cohortActiveUsers/cohortTotalUsers` and will be separate rows in the |
| // report. |
| type CohortSpec struct { |
| // CohortReportSettings: Optional settings for a cohort report. |
| CohortReportSettings *CohortReportSettings `json:"cohortReportSettings,omitempty"` |
| // Cohorts: Defines the selection criteria to group users into cohorts. Most |
| // cohort reports define only a single cohort. If multiple cohorts are |
| // specified, each cohort can be recognized in the report by their name. |
| Cohorts []*Cohort `json:"cohorts,omitempty"` |
| // CohortsRange: Cohort reports follow cohorts over an extended reporting date |
| // range. This range specifies an offset duration to follow the cohorts over. |
| CohortsRange *CohortsRange `json:"cohortsRange,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "CohortReportSettings") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CohortReportSettings") to include |
| // in API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s CohortSpec) MarshalJSON() ([]byte, error) { |
| type NoMethod CohortSpec |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // CohortsRange: Configures the extended reporting date range for a cohort |
| // report. Specifies an offset duration to follow the cohorts over. |
| type CohortsRange struct { |
| // EndOffset: Required. `endOffset` specifies the end date of the extended |
| // reporting date range for a cohort report. `endOffset` can be any positive |
| // integer but is commonly set to 5 to 10 so that reports contain data on the |
| // cohort for the next several granularity time periods. If `granularity` is |
| // `DAILY`, the `endDate` of the extended reporting date range is `endDate` of |
| // the cohort plus `endOffset` days. If `granularity` is `WEEKLY`, the |
| // `endDate` of the extended reporting date range is `endDate` of the cohort |
| // plus `endOffset * 7` days. If `granularity` is `MONTHLY`, the `endDate` of |
| // the extended reporting date range is `endDate` of the cohort plus `endOffset |
| // * 30` days. |
| EndOffset int64 `json:"endOffset,omitempty"` |
| // Granularity: Required. The granularity used to interpret the `startOffset` |
| // and `endOffset` for the extended reporting date range for a cohort report. |
| // |
| // Possible values: |
| // "GRANULARITY_UNSPECIFIED" - Should never be specified. |
| // "DAILY" - Daily granularity. Commonly used if the cohort's `dateRange` is |
| // a single day and the request contains `cohortNthDay`. |
| // "WEEKLY" - Weekly granularity. Commonly used if the cohort's `dateRange` |
| // is a week in duration (starting on Sunday and ending on Saturday) and the |
| // request contains `cohortNthWeek`. |
| // "MONTHLY" - Monthly granularity. Commonly used if the cohort's `dateRange` |
| // is a month in duration and the request contains `cohortNthMonth`. |
| Granularity string `json:"granularity,omitempty"` |
| // StartOffset: `startOffset` specifies the start date of the extended |
| // reporting date range for a cohort report. `startOffset` is commonly set to 0 |
| // so that reports contain data from the acquisition of the cohort forward. If |
| // `granularity` is `DAILY`, the `startDate` of the extended reporting date |
| // range is `startDate` of the cohort plus `startOffset` days. If `granularity` |
| // is `WEEKLY`, the `startDate` of the extended reporting date range is |
| // `startDate` of the cohort plus `startOffset * 7` days. If `granularity` is |
| // `MONTHLY`, the `startDate` of the extended reporting date range is |
| // `startDate` of the cohort plus `startOffset * 30` days. |
| StartOffset int64 `json:"startOffset,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "EndOffset") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "EndOffset") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s CohortsRange) MarshalJSON() ([]byte, error) { |
| type NoMethod CohortsRange |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Comparison: Defines an individual comparison. Most requests will include |
| // multiple comparisons so that the report compares between the comparisons. |
| type Comparison struct { |
| // Comparison: A saved comparison identified by the comparison's resource name. |
| // For example, 'comparisons/1234'. |
| Comparison string `json:"comparison,omitempty"` |
| // DimensionFilter: A basic comparison. |
| DimensionFilter *FilterExpression `json:"dimensionFilter,omitempty"` |
| // Name: Each comparison produces separate rows in the response. In the |
| // response, this comparison is identified by this name. If name is |
| // unspecified, we will use the saved comparisons display name. |
| Name string `json:"name,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Comparison") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Comparison") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s Comparison) MarshalJSON() ([]byte, error) { |
| type NoMethod Comparison |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ComparisonMetadata: The metadata for a single comparison. |
| type ComparisonMetadata struct { |
| // ApiName: This comparison's resource name. Useable in Comparison |
| // (#Comparison)'s `comparison` field. For example, 'comparisons/1234'. |
| ApiName string `json:"apiName,omitempty"` |
| // Description: This comparison's description. |
| Description string `json:"description,omitempty"` |
| // UiName: This comparison's name within the Google Analytics user interface. |
| UiName string `json:"uiName,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "ApiName") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "ApiName") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s ComparisonMetadata) MarshalJSON() ([]byte, error) { |
| type NoMethod ComparisonMetadata |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ConcatenateExpression: Used to combine dimension values to a single |
| // dimension. |
| type ConcatenateExpression struct { |
| // Delimiter: The delimiter placed between dimension names. Delimiters are |
| // often single characters such as "|" or "," but can be longer strings. If a |
| // dimension value contains the delimiter, both will be present in response |
| // with no distinction. For example if dimension 1 value = "US,FR", dimension 2 |
| // value = "JP", and delimiter = ",", then the response will contain |
| // "US,FR,JP". |
| Delimiter string `json:"delimiter,omitempty"` |
| // DimensionNames: Names of dimensions. The names must refer back to names in |
| // the dimensions field of the request. |
| DimensionNames []string `json:"dimensionNames,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Delimiter") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Delimiter") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s ConcatenateExpression) MarshalJSON() ([]byte, error) { |
| type NoMethod ConcatenateExpression |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // DateRange: A contiguous set of days: `startDate`, `startDate + 1`, ..., |
| // `endDate`. Requests are allowed up to 4 date ranges. |
| type DateRange struct { |
| // EndDate: The inclusive end date for the query in the format `YYYY-MM-DD`. |
| // Cannot be before `start_date`. The format `NdaysAgo`, `yesterday`, or |
| // `today` is also accepted, and in that case, the date is inferred based on |
| // the property's reporting time zone. |
| EndDate string `json:"endDate,omitempty"` |
| // Name: Assigns a name to this date range. The dimension `dateRange` is valued |
| // to this name in a report response. If set, cannot begin with `date_range_` |
| // or `RESERVED_`. If not set, date ranges are named by their zero based index |
| // in the request: `date_range_0`, `date_range_1`, etc. |
| Name string `json:"name,omitempty"` |
| // StartDate: The inclusive start date for the query in the format |
| // `YYYY-MM-DD`. Cannot be after `end_date`. The format `NdaysAgo`, |
| // `yesterday`, or `today` is also accepted, and in that case, the date is |
| // inferred based on the property's reporting time zone. |
| StartDate string `json:"startDate,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "EndDate") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "EndDate") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s DateRange) MarshalJSON() ([]byte, error) { |
| type NoMethod DateRange |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Dimension: Dimensions are attributes of your data. For example, the |
| // dimension city indicates the city from which an event originates. Dimension |
| // values in report responses are strings; for example, the city could be |
| // "Paris" or "New York". Requests are allowed up to 9 dimensions. |
| type Dimension struct { |
| // DimensionExpression: One dimension can be the result of an expression of |
| // multiple dimensions. For example, dimension "country, city": |
| // concatenate(country, ", ", city). |
| DimensionExpression *DimensionExpression `json:"dimensionExpression,omitempty"` |
| // Name: The name of the dimension. See the API Dimensions |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/api-schema#dimensions) |
| // for the list of dimension names supported by core reporting methods such as |
| // `runReport` and `batchRunReports`. See Realtime Dimensions |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/realtime-api-schema#dimensions) |
| // for the list of dimension names supported by the `runRealtimeReport` method. |
| // See Funnel Dimensions |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/exploration-api-schema#dimensions) |
| // for the list of dimension names supported by the `runFunnelReport` method. |
| // If `dimensionExpression` is specified, `name` can be any string that you |
| // would like within the allowed character set. For example if a |
| // `dimensionExpression` concatenates `country` and `city`, you could call that |
| // dimension `countryAndCity`. Dimension names that you choose must match the |
| // regular expression `^[a-zA-Z0-9_]$`. Dimensions are referenced by `name` in |
| // `dimensionFilter`, `orderBys`, `dimensionExpression`, and `pivots`. |
| Name string `json:"name,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DimensionExpression") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DimensionExpression") to include |
| // in API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s Dimension) MarshalJSON() ([]byte, error) { |
| type NoMethod Dimension |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // DimensionCompatibility: The compatibility for a single dimension. |
| type DimensionCompatibility struct { |
| // Compatibility: The compatibility of this dimension. If the compatibility is |
| // COMPATIBLE, this dimension can be successfully added to the report. |
| // |
| // Possible values: |
| // "COMPATIBILITY_UNSPECIFIED" - Unspecified compatibility. |
| // "COMPATIBLE" - The dimension or metric is compatible. This dimension or |
| // metric can be successfully added to a report. |
| // "INCOMPATIBLE" - The dimension or metric is incompatible. This dimension |
| // or metric cannot be successfully added to a report. |
| Compatibility string `json:"compatibility,omitempty"` |
| // DimensionMetadata: The dimension metadata contains the API name for this |
| // compatibility information. The dimension metadata also contains other |
| // helpful information like the UI name and description. |
| DimensionMetadata *DimensionMetadata `json:"dimensionMetadata,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Compatibility") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Compatibility") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s DimensionCompatibility) MarshalJSON() ([]byte, error) { |
| type NoMethod DimensionCompatibility |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // DimensionExpression: Used to express a dimension which is the result of a |
| // formula of multiple dimensions. Example usages: 1) lower_case(dimension) 2) |
| // concatenate(dimension1, symbol, dimension2). |
| type DimensionExpression struct { |
| // Concatenate: Used to combine dimension values to a single dimension. For |
| // example, dimension "country, city": concatenate(country, ", ", city). |
| Concatenate *ConcatenateExpression `json:"concatenate,omitempty"` |
| // LowerCase: Used to convert a dimension value to lower case. |
| LowerCase *CaseExpression `json:"lowerCase,omitempty"` |
| // UpperCase: Used to convert a dimension value to upper case. |
| UpperCase *CaseExpression `json:"upperCase,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Concatenate") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Concatenate") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s DimensionExpression) MarshalJSON() ([]byte, error) { |
| type NoMethod DimensionExpression |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // DimensionHeader: Describes a dimension column in the report. Dimensions |
| // requested in a report produce column entries within rows and |
| // DimensionHeaders. However, dimensions used exclusively within filters or |
| // expressions do not produce columns in a report; correspondingly, those |
| // dimensions do not produce headers. |
| type DimensionHeader struct { |
| // Name: The dimension's name. |
| Name string `json:"name,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Name") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Name") to include in API requests |
| // with the JSON null value. By default, fields with empty values are omitted |
| // from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s DimensionHeader) MarshalJSON() ([]byte, error) { |
| type NoMethod DimensionHeader |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // DimensionMetadata: Explains a dimension. |
| type DimensionMetadata struct { |
| // ApiName: This dimension's name. Useable in Dimension (#Dimension)'s `name`. |
| // For example, `eventName`. |
| ApiName string `json:"apiName,omitempty"` |
| // Category: The display name of the category that this dimension belongs to. |
| // Similar dimensions and metrics are categorized together. |
| Category string `json:"category,omitempty"` |
| // CustomDefinition: True if the dimension is custom to this property. This |
| // includes user, event, & item scoped custom dimensions; to learn more about |
| // custom dimensions, see https://support.google.com/analytics/answer/14240153. |
| // This also include custom channel groups; to learn more about custom channel |
| // groups, see https://support.google.com/analytics/answer/13051316. |
| CustomDefinition bool `json:"customDefinition,omitempty"` |
| // DeprecatedApiNames: Still usable but deprecated names for this dimension. If |
| // populated, this dimension is available by either `apiName` or one of |
| // `deprecatedApiNames` for a period of time. After the deprecation period, the |
| // dimension will be available only by `apiName`. |
| DeprecatedApiNames []string `json:"deprecatedApiNames,omitempty"` |
| // Description: Description of how this dimension is used and calculated. |
| Description string `json:"description,omitempty"` |
| // UiName: This dimension's name within the Google Analytics user interface. |
| // For example, `Event name`. |
| UiName string `json:"uiName,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "ApiName") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "ApiName") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s DimensionMetadata) MarshalJSON() ([]byte, error) { |
| type NoMethod DimensionMetadata |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // DimensionOrderBy: Sorts by dimension values. |
| type DimensionOrderBy struct { |
| // DimensionName: A dimension name in the request to order by. |
| DimensionName string `json:"dimensionName,omitempty"` |
| // OrderType: Controls the rule for dimension value ordering. |
| // |
| // Possible values: |
| // "ORDER_TYPE_UNSPECIFIED" - Unspecified. |
| // "ALPHANUMERIC" - Alphanumeric sort by Unicode code point. For example, "2" |
| // < "A" < "X" < "b" < "z". |
| // "CASE_INSENSITIVE_ALPHANUMERIC" - Case insensitive alphanumeric sort by |
| // lower case Unicode code point. For example, "2" < "A" < "b" < "X" < "z". |
| // "NUMERIC" - Dimension values are converted to numbers before sorting. For |
| // example in NUMERIC sort, "25" < "100", and in `ALPHANUMERIC` sort, "100" < |
| // "25". Non-numeric dimension values all have equal ordering value below all |
| // numeric values. |
| OrderType string `json:"orderType,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DimensionName") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DimensionName") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s DimensionOrderBy) MarshalJSON() ([]byte, error) { |
| type NoMethod DimensionOrderBy |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // DimensionValue: The value of a dimension. |
| type DimensionValue struct { |
| // Value: Value as a string if the dimension type is a string. |
| Value string `json:"value,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Value") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Value") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s DimensionValue) MarshalJSON() ([]byte, error) { |
| type NoMethod DimensionValue |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // EmptyFilter: Filter for empty values. |
| type EmptyFilter struct { |
| } |
| |
| // Filter: An expression to filter dimension or metric values. |
| type Filter struct { |
| // BetweenFilter: A filter for two values. |
| BetweenFilter *BetweenFilter `json:"betweenFilter,omitempty"` |
| // EmptyFilter: A filter for empty values such as "(not set)" and "" values. |
| EmptyFilter *EmptyFilter `json:"emptyFilter,omitempty"` |
| // FieldName: The dimension name or metric name. In most methods, dimensions & |
| // metrics can be used for the first time in this field. However in a |
| // RunPivotReportRequest, this field must be additionally specified by name in |
| // the RunPivotReportRequest's dimensions or metrics. |
| FieldName string `json:"fieldName,omitempty"` |
| // InListFilter: A filter for in list values. |
| InListFilter *InListFilter `json:"inListFilter,omitempty"` |
| // NumericFilter: A filter for numeric or date values. |
| NumericFilter *NumericFilter `json:"numericFilter,omitempty"` |
| // StringFilter: Strings related filter. |
| StringFilter *StringFilter `json:"stringFilter,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "BetweenFilter") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "BetweenFilter") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s Filter) MarshalJSON() ([]byte, error) { |
| type NoMethod Filter |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // FilterExpression: To express dimension or metric filters. The fields in the |
| // same FilterExpression need to be either all dimensions or all metrics. |
| type FilterExpression struct { |
| // AndGroup: The FilterExpressions in and_group have an AND relationship. |
| AndGroup *FilterExpressionList `json:"andGroup,omitempty"` |
| // Filter: A primitive filter. In the same FilterExpression, all of the |
| // filter's field names need to be either all dimensions or all metrics. |
| Filter *Filter `json:"filter,omitempty"` |
| // NotExpression: The FilterExpression is NOT of not_expression. |
| NotExpression *FilterExpression `json:"notExpression,omitempty"` |
| // OrGroup: The FilterExpressions in or_group have an OR relationship. |
| OrGroup *FilterExpressionList `json:"orGroup,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "AndGroup") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AndGroup") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s FilterExpression) MarshalJSON() ([]byte, error) { |
| type NoMethod FilterExpression |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // FilterExpressionList: A list of filter expressions. |
| type FilterExpressionList struct { |
| // Expressions: A list of filter expressions. |
| Expressions []*FilterExpression `json:"expressions,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Expressions") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Expressions") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s FilterExpressionList) MarshalJSON() ([]byte, error) { |
| type NoMethod FilterExpressionList |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // InListFilter: The result needs to be in a list of string values. |
| type InListFilter struct { |
| // CaseSensitive: If true, the string value is case sensitive. |
| CaseSensitive bool `json:"caseSensitive,omitempty"` |
| // Values: The list of string values. Must be non-empty. |
| Values []string `json:"values,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "CaseSensitive") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CaseSensitive") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s InListFilter) MarshalJSON() ([]byte, error) { |
| type NoMethod InListFilter |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListAudienceExportsResponse: A list of all audience exports for a property. |
| type ListAudienceExportsResponse struct { |
| // AudienceExports: Each audience export for a property. |
| AudienceExports []*AudienceExport `json:"audienceExports,omitempty"` |
| // NextPageToken: A token, which can be sent as `page_token` to retrieve the |
| // next page. If this field is omitted, there are no subsequent pages. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "AudienceExports") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AudienceExports") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s ListAudienceExportsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListAudienceExportsResponse |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Metadata: The dimensions, metrics and comparisons currently accepted in |
| // reporting methods. |
| type Metadata struct { |
| // Comparisons: The comparison descriptions. |
| Comparisons []*ComparisonMetadata `json:"comparisons,omitempty"` |
| // Dimensions: The dimension descriptions. |
| Dimensions []*DimensionMetadata `json:"dimensions,omitempty"` |
| // Metrics: The metric descriptions. |
| Metrics []*MetricMetadata `json:"metrics,omitempty"` |
| // Name: Resource name of this metadata. |
| Name string `json:"name,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Comparisons") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Comparisons") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s Metadata) MarshalJSON() ([]byte, error) { |
| type NoMethod Metadata |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Metric: The quantitative measurements of a report. For example, the metric |
| // `eventCount` is the total number of events. Requests are allowed up to 10 |
| // metrics. |
| type Metric struct { |
| // Expression: A mathematical expression for derived metrics. For example, the |
| // metric Event count per user is `eventCount/totalUsers`. |
| Expression string `json:"expression,omitempty"` |
| // Invisible: Indicates if a metric is invisible in the report response. If a |
| // metric is invisible, the metric will not produce a column in the response, |
| // but can be used in `metricFilter`, `orderBys`, or a metric `expression`. |
| Invisible bool `json:"invisible,omitempty"` |
| // Name: The name of the metric. See the API Metrics |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/api-schema#metrics) |
| // for the list of metric names supported by core reporting methods such as |
| // `runReport` and `batchRunReports`. See Realtime Metrics |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/realtime-api-schema#metrics) |
| // for the list of metric names supported by the `runRealtimeReport` method. |
| // See Funnel Metrics |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/exploration-api-schema#metrics) |
| // for the list of metric names supported by the `runFunnelReport` method. If |
| // `expression` is specified, `name` can be any string that you would like |
| // within the allowed character set. For example if `expression` is |
| // `screenPageViews/sessions`, you could call that metric's name = |
| // `viewsPerSession`. Metric names that you choose must match the regular |
| // expression `^[a-zA-Z0-9_]$`. Metrics are referenced by `name` in |
| // `metricFilter`, `orderBys`, and metric `expression`. |
| Name string `json:"name,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Expression") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Expression") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s Metric) MarshalJSON() ([]byte, error) { |
| type NoMethod Metric |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // MetricCompatibility: The compatibility for a single metric. |
| type MetricCompatibility struct { |
| // Compatibility: The compatibility of this metric. If the compatibility is |
| // COMPATIBLE, this metric can be successfully added to the report. |
| // |
| // Possible values: |
| // "COMPATIBILITY_UNSPECIFIED" - Unspecified compatibility. |
| // "COMPATIBLE" - The dimension or metric is compatible. This dimension or |
| // metric can be successfully added to a report. |
| // "INCOMPATIBLE" - The dimension or metric is incompatible. This dimension |
| // or metric cannot be successfully added to a report. |
| Compatibility string `json:"compatibility,omitempty"` |
| // MetricMetadata: The metric metadata contains the API name for this |
| // compatibility information. The metric metadata also contains other helpful |
| // information like the UI name and description. |
| MetricMetadata *MetricMetadata `json:"metricMetadata,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Compatibility") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Compatibility") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s MetricCompatibility) MarshalJSON() ([]byte, error) { |
| type NoMethod MetricCompatibility |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // MetricHeader: Describes a metric column in the report. Visible metrics |
| // requested in a report produce column entries within rows and MetricHeaders. |
| // However, metrics used exclusively within filters or expressions do not |
| // produce columns in a report; correspondingly, those metrics do not produce |
| // headers. |
| type MetricHeader struct { |
| // Name: The metric's name. |
| Name string `json:"name,omitempty"` |
| // Type: The metric's data type. |
| // |
| // Possible values: |
| // "METRIC_TYPE_UNSPECIFIED" - Unspecified type. |
| // "TYPE_INTEGER" - Integer type. |
| // "TYPE_FLOAT" - Floating point type. |
| // "TYPE_SECONDS" - A duration of seconds; a special floating point type. |
| // "TYPE_MILLISECONDS" - A duration in milliseconds; a special floating point |
| // type. |
| // "TYPE_MINUTES" - A duration in minutes; a special floating point type. |
| // "TYPE_HOURS" - A duration in hours; a special floating point type. |
| // "TYPE_STANDARD" - A custom metric of standard type; a special floating |
| // point type. |
| // "TYPE_CURRENCY" - An amount of money; a special floating point type. |
| // "TYPE_FEET" - A length in feet; a special floating point type. |
| // "TYPE_MILES" - A length in miles; a special floating point type. |
| // "TYPE_METERS" - A length in meters; a special floating point type. |
| // "TYPE_KILOMETERS" - A length in kilometers; a special floating point type. |
| Type string `json:"type,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Name") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Name") to include in API requests |
| // with the JSON null value. By default, fields with empty values are omitted |
| // from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s MetricHeader) MarshalJSON() ([]byte, error) { |
| type NoMethod MetricHeader |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // MetricMetadata: Explains a metric. |
| type MetricMetadata struct { |
| // ApiName: A metric name. Useable in Metric (#Metric)'s `name`. For example, |
| // `eventCount`. |
| ApiName string `json:"apiName,omitempty"` |
| // BlockedReasons: If reasons are specified, your access is blocked to this |
| // metric for this property. API requests from you to this property for this |
| // metric will succeed; however, the report will contain only zeros for this |
| // metric. API requests with metric filters on blocked metrics will fail. If |
| // reasons are empty, you have access to this metric. To learn more, see Access |
| // and data-restriction management |
| // (https://support.google.com/analytics/answer/10851388). |
| // |
| // Possible values: |
| // "BLOCKED_REASON_UNSPECIFIED" - Will never be specified in API response. |
| // "NO_REVENUE_METRICS" - If present, your access is blocked to revenue |
| // related metrics for this property, and this metric is revenue related. |
| // "NO_COST_METRICS" - If present, your access is blocked to cost related |
| // metrics for this property, and this metric is cost related. |
| BlockedReasons []string `json:"blockedReasons,omitempty"` |
| // Category: The display name of the category that this metrics belongs to. |
| // Similar dimensions and metrics are categorized together. |
| Category string `json:"category,omitempty"` |
| // CustomDefinition: True if the metric is a custom metric for this property. |
| CustomDefinition bool `json:"customDefinition,omitempty"` |
| // DeprecatedApiNames: Still usable but deprecated names for this metric. If |
| // populated, this metric is available by either `apiName` or one of |
| // `deprecatedApiNames` for a period of time. After the deprecation period, the |
| // metric will be available only by `apiName`. |
| DeprecatedApiNames []string `json:"deprecatedApiNames,omitempty"` |
| // Description: Description of how this metric is used and calculated. |
| Description string `json:"description,omitempty"` |
| // Expression: The mathematical expression for this derived metric. Can be used |
| // in Metric (#Metric)'s `expression` field for equivalent reports. Most |
| // metrics are not expressions, and for non-expressions, this field is empty. |
| Expression string `json:"expression,omitempty"` |
| // Type: The type of this metric. |
| // |
| // Possible values: |
| // "METRIC_TYPE_UNSPECIFIED" - Unspecified type. |
| // "TYPE_INTEGER" - Integer type. |
| // "TYPE_FLOAT" - Floating point type. |
| // "TYPE_SECONDS" - A duration of seconds; a special floating point type. |
| // "TYPE_MILLISECONDS" - A duration in milliseconds; a special floating point |
| // type. |
| // "TYPE_MINUTES" - A duration in minutes; a special floating point type. |
| // "TYPE_HOURS" - A duration in hours; a special floating point type. |
| // "TYPE_STANDARD" - A custom metric of standard type; a special floating |
| // point type. |
| // "TYPE_CURRENCY" - An amount of money; a special floating point type. |
| // "TYPE_FEET" - A length in feet; a special floating point type. |
| // "TYPE_MILES" - A length in miles; a special floating point type. |
| // "TYPE_METERS" - A length in meters; a special floating point type. |
| // "TYPE_KILOMETERS" - A length in kilometers; a special floating point type. |
| Type string `json:"type,omitempty"` |
| // UiName: This metric's name within the Google Analytics user interface. For |
| // example, `Event count`. |
| UiName string `json:"uiName,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "ApiName") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "ApiName") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s MetricMetadata) MarshalJSON() ([]byte, error) { |
| type NoMethod MetricMetadata |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // MetricOrderBy: Sorts by metric values. |
| type MetricOrderBy struct { |
| // MetricName: A metric name in the request to order by. |
| MetricName string `json:"metricName,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "MetricName") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "MetricName") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s MetricOrderBy) MarshalJSON() ([]byte, error) { |
| type NoMethod MetricOrderBy |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // MetricValue: The value of a metric. |
| type MetricValue struct { |
| // Value: Measurement value. See MetricHeader for type. |
| Value string `json:"value,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Value") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Value") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s MetricValue) MarshalJSON() ([]byte, error) { |
| type NoMethod MetricValue |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // MinuteRange: A contiguous set of minutes: `startMinutesAgo`, |
| // `startMinutesAgo + 1`, ..., `endMinutesAgo`. Requests are allowed up to 2 |
| // minute ranges. |
| type MinuteRange struct { |
| // EndMinutesAgo: The inclusive end minute for the query as a number of minutes |
| // before now. Cannot be before `startMinutesAgo`. For example, |
| // "endMinutesAgo": 15` specifies the report should include event data from |
| // prior to 15 minutes ago. If unspecified, `endMinutesAgo` is defaulted to 0. |
| // Standard Analytics properties can request any minute in the last 30 minutes |
| // of event data (`endMinutesAgo <= 29`), and 360 Analytics properties can |
| // request any minute in the last 60 minutes of event data (`endMinutesAgo <= |
| // 59`). |
| EndMinutesAgo int64 `json:"endMinutesAgo,omitempty"` |
| // Name: Assigns a name to this minute range. The dimension `dateRange` is |
| // valued to this name in a report response. If set, cannot begin with |
| // `date_range_` or `RESERVED_`. If not set, minute ranges are named by their |
| // zero based index in the request: `date_range_0`, `date_range_1`, etc. |
| Name string `json:"name,omitempty"` |
| // StartMinutesAgo: The inclusive start minute for the query as a number of |
| // minutes before now. For example, "startMinutesAgo": 29` specifies the |
| // report should include event data from 29 minutes ago and after. Cannot be |
| // after `endMinutesAgo`. If unspecified, `startMinutesAgo` is defaulted to 29. |
| // Standard Analytics properties can request up to the last 30 minutes of event |
| // data (`startMinutesAgo <= 29`), and 360 Analytics properties can request up |
| // to the last 60 minutes of event data (`startMinutesAgo <= 59`). |
| StartMinutesAgo int64 `json:"startMinutesAgo,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "EndMinutesAgo") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "EndMinutesAgo") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s MinuteRange) MarshalJSON() ([]byte, error) { |
| type NoMethod MinuteRange |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // NumericFilter: Filters for numeric or date values. |
| type NumericFilter struct { |
| // Operation: The operation type for this filter. |
| // |
| // Possible values: |
| // "OPERATION_UNSPECIFIED" - Unspecified. |
| // "EQUAL" - Equal |
| // "LESS_THAN" - Less than |
| // "LESS_THAN_OR_EQUAL" - Less than or equal |
| // "GREATER_THAN" - Greater than |
| // "GREATER_THAN_OR_EQUAL" - Greater than or equal |
| Operation string `json:"operation,omitempty"` |
| // Value: A numeric value or a date value. |
| Value *NumericValue `json:"value,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Operation") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Operation") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s NumericFilter) MarshalJSON() ([]byte, error) { |
| type NoMethod NumericFilter |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // NumericValue: To represent a number. |
| type NumericValue struct { |
| // DoubleValue: Double value |
| DoubleValue float64 `json:"doubleValue,omitempty"` |
| // Int64Value: Integer value |
| Int64Value int64 `json:"int64Value,omitempty,string"` |
| // ForceSendFields is a list of field names (e.g. "DoubleValue") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DoubleValue") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s NumericValue) MarshalJSON() ([]byte, error) { |
| type NoMethod NumericValue |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| func (s *NumericValue) UnmarshalJSON(data []byte) error { |
| type NoMethod NumericValue |
| var s1 struct { |
| DoubleValue gensupport.JSONFloat64 `json:"doubleValue"` |
| *NoMethod |
| } |
| s1.NoMethod = (*NoMethod)(s) |
| if err := json.Unmarshal(data, &s1); err != nil { |
| return err |
| } |
| s.DoubleValue = float64(s1.DoubleValue) |
| return nil |
| } |
| |
| // Operation: This resource represents a long-running operation that is the |
| // result of a network API call. |
| type Operation struct { |
| // Done: If the value is `false`, it means the operation is still in progress. |
| // If `true`, the operation is completed, and either `error` or `response` is |
| // available. |
| Done bool `json:"done,omitempty"` |
| // Error: The error result of the operation in case of failure or cancellation. |
| Error *Status `json:"error,omitempty"` |
| // Metadata: Service-specific metadata associated with the operation. It |
| // typically contains progress information and common metadata such as create |
| // time. Some services might not provide such metadata. Any method that returns |
| // a long-running operation should document the metadata type, if any. |
| Metadata googleapi.RawMessage `json:"metadata,omitempty"` |
| // Name: The server-assigned name, which is only unique within the same service |
| // that originally returns it. If you use the default HTTP mapping, the `name` |
| // should be a resource name ending with `operations/{unique_id}`. |
| Name string `json:"name,omitempty"` |
| // Response: The normal, successful response of the operation. If the original |
| // method returns no data on success, such as `Delete`, the response is |
| // `google.protobuf.Empty`. If the original method is standard |
| // `Get`/`Create`/`Update`, the response should be the resource. For other |
| // methods, the response should have the type `XxxResponse`, where `Xxx` is the |
| // original method name. For example, if the original method name is |
| // `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. |
| Response googleapi.RawMessage `json:"response,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Done") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Done") to include in API requests |
| // with the JSON null value. By default, fields with empty values are omitted |
| // from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s Operation) MarshalJSON() ([]byte, error) { |
| type NoMethod Operation |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // OrderBy: Order bys define how rows will be sorted in the response. For |
| // example, ordering rows by descending event count is one ordering, and |
| // ordering rows by the event name string is a different ordering. |
| type OrderBy struct { |
| // Desc: If true, sorts by descending order. |
| Desc bool `json:"desc,omitempty"` |
| // Dimension: Sorts results by a dimension's values. |
| Dimension *DimensionOrderBy `json:"dimension,omitempty"` |
| // Metric: Sorts results by a metric's values. |
| Metric *MetricOrderBy `json:"metric,omitempty"` |
| // Pivot: Sorts results by a metric's values within a pivot column group. |
| Pivot *PivotOrderBy `json:"pivot,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Desc") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Desc") to include in API requests |
| // with the JSON null value. By default, fields with empty values are omitted |
| // from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s OrderBy) MarshalJSON() ([]byte, error) { |
| type NoMethod OrderBy |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Pivot: Describes the visible dimension columns and rows in the report |
| // response. |
| type Pivot struct { |
| // FieldNames: Dimension names for visible columns in the report response. |
| // Including "dateRange" produces a date range column; for each row in the |
| // response, dimension values in the date range column will indicate the |
| // corresponding date range from the request. |
| FieldNames []string `json:"fieldNames,omitempty"` |
| // Limit: The number of unique combinations of dimension values to return in |
| // this pivot. The `limit` parameter is required. A `limit` of 10,000 is common |
| // for single pivot requests. The product of the `limit` for each `pivot` in a |
| // `RunPivotReportRequest` must not exceed 250,000. For example, a two pivot |
| // request with `limit: 1000` in each pivot will fail because the product is |
| // `1,000,000`. |
| Limit int64 `json:"limit,omitempty,string"` |
| // MetricAggregations: Aggregate the metrics by dimensions in this pivot using |
| // the specified metric_aggregations. |
| // |
| // Possible values: |
| // "METRIC_AGGREGATION_UNSPECIFIED" - Unspecified operator. |
| // "TOTAL" - SUM operator. |
| // "MINIMUM" - Minimum operator. |
| // "MAXIMUM" - Maximum operator. |
| // "COUNT" - Count operator. |
| MetricAggregations []string `json:"metricAggregations,omitempty"` |
| // Offset: The row count of the start row. The first row is counted as row 0. |
| Offset int64 `json:"offset,omitempty,string"` |
| // OrderBys: Specifies how dimensions are ordered in the pivot. In the first |
| // Pivot, the OrderBys determine Row and PivotDimensionHeader ordering; in |
| // subsequent Pivots, the OrderBys determine only PivotDimensionHeader |
| // ordering. Dimensions specified in these OrderBys must be a subset of |
| // Pivot.field_names. |
| OrderBys []*OrderBy `json:"orderBys,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "FieldNames") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "FieldNames") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s Pivot) MarshalJSON() ([]byte, error) { |
| type NoMethod Pivot |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // PivotDimensionHeader: Summarizes dimension values from a row for this pivot. |
| type PivotDimensionHeader struct { |
| // DimensionValues: Values of multiple dimensions in a pivot. |
| DimensionValues []*DimensionValue `json:"dimensionValues,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DimensionValues") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DimensionValues") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s PivotDimensionHeader) MarshalJSON() ([]byte, error) { |
| type NoMethod PivotDimensionHeader |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // PivotHeader: Dimensions' values in a single pivot. |
| type PivotHeader struct { |
| // PivotDimensionHeaders: The size is the same as the cardinality of the |
| // corresponding dimension combinations. |
| PivotDimensionHeaders []*PivotDimensionHeader `json:"pivotDimensionHeaders,omitempty"` |
| // RowCount: The cardinality of the pivot. The total number of rows for this |
| // pivot's fields regardless of how the parameters `offset` and `limit` are |
| // specified in the request. |
| RowCount int64 `json:"rowCount,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "PivotDimensionHeaders") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "PivotDimensionHeaders") to |
| // include in API requests with the JSON null value. By default, fields with |
| // empty values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s PivotHeader) MarshalJSON() ([]byte, error) { |
| type NoMethod PivotHeader |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // PivotOrderBy: Sorts by a pivot column group. |
| type PivotOrderBy struct { |
| // MetricName: In the response to order by, order rows by this column. Must be |
| // a metric name from the request. |
| MetricName string `json:"metricName,omitempty"` |
| // PivotSelections: Used to select a dimension name and value pivot. If |
| // multiple pivot selections are given, the sort occurs on rows where all pivot |
| // selection dimension name and value pairs match the row's dimension name and |
| // value pair. |
| PivotSelections []*PivotSelection `json:"pivotSelections,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "MetricName") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "MetricName") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s PivotOrderBy) MarshalJSON() ([]byte, error) { |
| type NoMethod PivotOrderBy |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // PivotSelection: A pair of dimension names and values. Rows with this |
| // dimension pivot pair are ordered by the metric's value. For example if |
| // pivots = {{"browser", "Chrome"}} and metric_name = "Sessions", then the rows |
| // will be sorted based on Sessions in Chrome. |
| // ---------|----------|----------------|----------|---------------- | Chrome | |
| // Chrome | Safari | Safari |
| // ---------|----------|----------------|----------|---------------- Country | |
| // Sessions | Pages/Sessions | Sessions | Pages/Sessions |
| // ---------|----------|----------------|----------|---------------- US | 2 | 2 |
| // | 3 | 1 ---------|----------|----------------|----------|---------------- |
| // Canada | 3 | 1 | 4 | 1 |
| // ---------|----------|----------------|----------|---------------- |
| type PivotSelection struct { |
| // DimensionName: Must be a dimension name from the request. |
| DimensionName string `json:"dimensionName,omitempty"` |
| // DimensionValue: Order by only when the named dimension is this value. |
| DimensionValue string `json:"dimensionValue,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DimensionName") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DimensionName") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s PivotSelection) MarshalJSON() ([]byte, error) { |
| type NoMethod PivotSelection |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // PropertyQuota: Current state of all quotas for this Analytics Property. If |
| // any quota for a property is exhausted, all requests to that property will |
| // return Resource Exhausted errors. |
| type PropertyQuota struct { |
| // ConcurrentRequests: Standard Analytics Properties can send up to 10 |
| // concurrent requests; Analytics 360 Properties can use up to 50 concurrent |
| // requests. |
| ConcurrentRequests *QuotaStatus `json:"concurrentRequests,omitempty"` |
| // PotentiallyThresholdedRequestsPerHour: Analytics Properties can send up to |
| // 120 requests with potentially thresholded dimensions per hour. In a batch |
| // request, each report request is individually counted for this quota if the |
| // request contains potentially thresholded dimensions. |
| PotentiallyThresholdedRequestsPerHour *QuotaStatus `json:"potentiallyThresholdedRequestsPerHour,omitempty"` |
| // ServerErrorsPerProjectPerHour: Standard Analytics Properties and cloud |
| // project pairs can have up to 10 server errors per hour; Analytics 360 |
| // Properties and cloud project pairs can have up to 50 server errors per hour. |
| ServerErrorsPerProjectPerHour *QuotaStatus `json:"serverErrorsPerProjectPerHour,omitempty"` |
| // TokensPerDay: Standard Analytics Properties can use up to 200,000 tokens per |
| // day; Analytics 360 Properties can use 2,000,000 tokens per day. Most |
| // requests consume fewer than 10 tokens. |
| TokensPerDay *QuotaStatus `json:"tokensPerDay,omitempty"` |
| // TokensPerHour: Standard Analytics Properties can use up to 40,000 tokens per |
| // hour; Analytics 360 Properties can use 400,000 tokens per hour. An API |
| // request consumes a single number of tokens, and that number is deducted from |
| // all of the hourly, daily, and per project hourly quotas. |
| TokensPerHour *QuotaStatus `json:"tokensPerHour,omitempty"` |
| // TokensPerProjectPerHour: Analytics Properties can use up to 35% of their |
| // tokens per project per hour. This amounts to standard Analytics Properties |
| // can use up to 14,000 tokens per project per hour, and Analytics 360 |
| // Properties can use 140,000 tokens per project per hour. An API request |
| // consumes a single number of tokens, and that number is deducted from all of |
| // the hourly, daily, and per project hourly quotas. |
| TokensPerProjectPerHour *QuotaStatus `json:"tokensPerProjectPerHour,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "ConcurrentRequests") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "ConcurrentRequests") to include |
| // in API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s PropertyQuota) MarshalJSON() ([]byte, error) { |
| type NoMethod PropertyQuota |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // QueryAudienceExportRequest: A request to list users in an audience export. |
| type QueryAudienceExportRequest struct { |
| // Limit: Optional. The number of rows to return. If unspecified, 10,000 rows |
| // are returned. The API returns a maximum of 250,000 rows per request, no |
| // matter how many you ask for. `limit` must be positive. The API can also |
| // return fewer rows than the requested `limit`, if there aren't as many |
| // dimension values as the `limit`. To learn more about this pagination |
| // parameter, see Pagination |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). |
| Limit int64 `json:"limit,omitempty,string"` |
| // Offset: Optional. The row count of the start row. The first row is counted |
| // as row 0. When paging, the first request does not specify offset; or |
| // equivalently, sets offset to 0; the first request returns the first `limit` |
| // of rows. The second request sets offset to the `limit` of the first request; |
| // the second request returns the second `limit` of rows. To learn more about |
| // this pagination parameter, see Pagination |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). |
| Offset int64 `json:"offset,omitempty,string"` |
| // ForceSendFields is a list of field names (e.g. "Limit") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Limit") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s QueryAudienceExportRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod QueryAudienceExportRequest |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // QueryAudienceExportResponse: A list of users in an audience export. |
| type QueryAudienceExportResponse struct { |
| // AudienceExport: Configuration data about AudienceExport being queried. |
| // Returned to help interpret the audience rows in this response. For example, |
| // the dimensions in this AudienceExport correspond to the columns in the |
| // AudienceRows. |
| AudienceExport *AudienceExport `json:"audienceExport,omitempty"` |
| // AudienceRows: Rows for each user in an audience export. The number of rows |
| // in this response will be less than or equal to request's page size. |
| AudienceRows []*V1betaAudienceRow `json:"audienceRows,omitempty"` |
| // RowCount: The total number of rows in the AudienceExport result. `rowCount` |
| // is independent of the number of rows returned in the response, the `limit` |
| // request parameter, and the `offset` request parameter. For example if a |
| // query returns 175 rows and includes `limit` of 50 in the API request, the |
| // response will contain `rowCount` of 175 but only 50 rows. To learn more |
| // about this pagination parameter, see Pagination |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). |
| RowCount int64 `json:"rowCount,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "AudienceExport") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AudienceExport") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s QueryAudienceExportResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod QueryAudienceExportResponse |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // QuotaStatus: Current state for a particular quota group. |
| type QuotaStatus struct { |
| // Consumed: Quota consumed by this request. |
| Consumed int64 `json:"consumed,omitempty"` |
| // Remaining: Quota remaining after this request. |
| Remaining int64 `json:"remaining,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Consumed") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Consumed") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s QuotaStatus) MarshalJSON() ([]byte, error) { |
| type NoMethod QuotaStatus |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ResponseMetaData: Response's metadata carrying additional information about |
| // the report content. |
| type ResponseMetaData struct { |
| // CurrencyCode: The currency code used in this report. Intended to be used in |
| // formatting currency metrics like `purchaseRevenue` for visualization. If |
| // currency_code was specified in the request, this response parameter will |
| // echo the request parameter; otherwise, this response parameter is the |
| // property's current currency_code. Currency codes are string encodings of |
| // currency types from the ISO 4217 standard |
| // (https://en.wikipedia.org/wiki/ISO_4217); for example "USD", "EUR", "JPY". |
| // To learn more, see https://support.google.com/analytics/answer/9796179. |
| CurrencyCode string `json:"currencyCode,omitempty"` |
| // DataLossFromOtherRow: If true, indicates some buckets of dimension |
| // combinations are rolled into "(other)" row. This can happen for high |
| // cardinality reports. The metadata parameter dataLossFromOtherRow is |
| // populated based on the aggregated data table used in the report. The |
| // parameter will be accurately populated regardless of the filters and limits |
| // in the report. For example, the (other) row could be dropped from the report |
| // because the request contains a filter on sessionSource = google. This |
| // parameter will still be populated if data loss from other row was present in |
| // the input aggregate data used to generate this report. To learn more, see |
| // About the (other) row and data sampling |
| // (https://support.google.com/analytics/answer/13208658#reports). |
| DataLossFromOtherRow bool `json:"dataLossFromOtherRow,omitempty"` |
| // EmptyReason: If empty reason is specified, the report is empty for this |
| // reason. |
| EmptyReason string `json:"emptyReason,omitempty"` |
| // SamplingMetadatas: If this report results is sampled |
| // (https://support.google.com/analytics/answer/13331292), this describes the |
| // percentage of events used in this report. One `samplingMetadatas` is |
| // populated for each date range. Each `samplingMetadatas` corresponds to a |
| // date range in order that date ranges were specified in the request. However |
| // if the results are not sampled, this field will not be defined. |
| SamplingMetadatas []*SamplingMetadata `json:"samplingMetadatas,omitempty"` |
| // SchemaRestrictionResponse: Describes the schema restrictions actively |
| // enforced in creating this report. To learn more, see Access and |
| // data-restriction management |
| // (https://support.google.com/analytics/answer/10851388). |
| SchemaRestrictionResponse *SchemaRestrictionResponse `json:"schemaRestrictionResponse,omitempty"` |
| // SubjectToThresholding: If `subjectToThresholding` is true, this report is |
| // subject to thresholding and only returns data that meets the minimum |
| // aggregation thresholds. It is possible for a request to be subject to |
| // thresholding thresholding and no data is absent from the report, and this |
| // happens when all data is above the thresholds. To learn more, see Data |
| // thresholds (https://support.google.com/analytics/answer/9383630). |
| SubjectToThresholding bool `json:"subjectToThresholding,omitempty"` |
| // TimeZone: The property's current timezone. Intended to be used to interpret |
| // time-based dimensions like `hour` and `minute`. Formatted as strings from |
| // the IANA Time Zone database (https://www.iana.org/time-zones); for example |
| // "America/New_York" or "Asia/Tokyo". |
| TimeZone string `json:"timeZone,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "CurrencyCode") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CurrencyCode") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s ResponseMetaData) MarshalJSON() ([]byte, error) { |
| type NoMethod ResponseMetaData |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Row: Report data for each row. For example if RunReportRequest contains: |
| // ```none "dimensions": [ { "name": "eventName" }, { "name": "countryId" } ], |
| // "metrics": [ { "name": "eventCount" } ] ``` One row with 'in_app_purchase' |
| // as the eventName, 'JP' as the countryId, and 15 as the eventCount, would be: |
| // ```none "dimensionValues": [ { "value": "in_app_purchase" }, { "value": "JP" |
| // } ], "metricValues": [ { "value": "15" } ] ``` |
| type Row struct { |
| // DimensionValues: List of requested dimension values. In a PivotReport, |
| // dimension_values are only listed for dimensions included in a pivot. |
| DimensionValues []*DimensionValue `json:"dimensionValues,omitempty"` |
| // MetricValues: List of requested visible metric values. |
| MetricValues []*MetricValue `json:"metricValues,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DimensionValues") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DimensionValues") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s Row) MarshalJSON() ([]byte, error) { |
| type NoMethod Row |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // RunPivotReportRequest: The request to generate a pivot report. |
| type RunPivotReportRequest struct { |
| // CohortSpec: Cohort group associated with this request. If there is a cohort |
| // group in the request the 'cohort' dimension must be present. |
| CohortSpec *CohortSpec `json:"cohortSpec,omitempty"` |
| // Comparisons: Optional. The configuration of comparisons requested and |
| // displayed. The request requires both a comparisons field and a comparisons |
| // dimension to receive a comparison column in the response. |
| Comparisons []*Comparison `json:"comparisons,omitempty"` |
| // CurrencyCode: A currency code in ISO4217 format, such as "AED", "USD", |
| // "JPY". If the field is empty, the report uses the property's default |
| // currency. |
| CurrencyCode string `json:"currencyCode,omitempty"` |
| // DateRanges: The date range to retrieve event data for the report. If |
| // multiple date ranges are specified, event data from each date range is used |
| // in the report. A special dimension with field name "dateRange" can be |
| // included in a Pivot's field names; if included, the report compares between |
| // date ranges. In a cohort request, this `dateRanges` must be unspecified. |
| DateRanges []*DateRange `json:"dateRanges,omitempty"` |
| // DimensionFilter: The filter clause of dimensions. Dimensions must be |
| // requested to be used in this filter. Metrics cannot be used in this filter. |
| DimensionFilter *FilterExpression `json:"dimensionFilter,omitempty"` |
| // Dimensions: The dimensions requested. All defined dimensions must be used by |
| // one of the following: dimension_expression, dimension_filter, pivots, |
| // order_bys. |
| Dimensions []*Dimension `json:"dimensions,omitempty"` |
| // KeepEmptyRows: If false or unspecified, each row with all metrics equal to 0 |
| // will not be returned. If true, these rows will be returned if they are not |
| // separately removed by a filter. Regardless of this `keep_empty_rows` |
| // setting, only data recorded by the Google Analytics property can be |
| // displayed in a report. For example if a property never logs a `purchase` |
| // event, then a query for the `eventName` dimension and `eventCount` metric |
| // will not have a row eventName: "purchase" and eventCount: 0. |
| KeepEmptyRows bool `json:"keepEmptyRows,omitempty"` |
| // MetricFilter: The filter clause of metrics. Applied at post aggregation |
| // phase, similar to SQL having-clause. Metrics must be requested to be used in |
| // this filter. Dimensions cannot be used in this filter. |
| MetricFilter *FilterExpression `json:"metricFilter,omitempty"` |
| // Metrics: The metrics requested, at least one metric needs to be specified. |
| // All defined metrics must be used by one of the following: metric_expression, |
| // metric_filter, order_bys. |
| Metrics []*Metric `json:"metrics,omitempty"` |
| // Pivots: Describes the visual format of the report's dimensions in columns or |
| // rows. The union of the fieldNames (dimension names) in all pivots must be a |
| // subset of dimension names defined in Dimensions. No two pivots can share a |
| // dimension. A dimension is only visible if it appears in a pivot. |
| Pivots []*Pivot `json:"pivots,omitempty"` |
| // Property: A Google Analytics property identifier whose events are tracked. |
| // Specified in the URL path and not the body. To learn more, see where to find |
| // your Property ID |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). |
| // Within a batch request, this property should either be unspecified or |
| // consistent with the batch-level property. Example: properties/1234 |
| Property string `json:"property,omitempty"` |
| // ReturnPropertyQuota: Toggles whether to return the current state of this |
| // Google Analytics property's quota. Quota is returned in PropertyQuota |
| // (#PropertyQuota). |
| ReturnPropertyQuota bool `json:"returnPropertyQuota,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "CohortSpec") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CohortSpec") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s RunPivotReportRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod RunPivotReportRequest |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // RunPivotReportResponse: The response pivot report table corresponding to a |
| // pivot request. |
| type RunPivotReportResponse struct { |
| // Aggregates: Aggregation of metric values. Can be totals, minimums, or |
| // maximums. The returned aggregations are controlled by the |
| // metric_aggregations in the pivot. The type of aggregation returned in each |
| // row is shown by the dimension_values which are set to "RESERVED_". |
| Aggregates []*Row `json:"aggregates,omitempty"` |
| // DimensionHeaders: Describes dimension columns. The number of |
| // DimensionHeaders and ordering of DimensionHeaders matches the dimensions |
| // present in rows. |
| DimensionHeaders []*DimensionHeader `json:"dimensionHeaders,omitempty"` |
| // Kind: Identifies what kind of resource this message is. This `kind` is |
| // always the fixed string "analyticsData#runPivotReport". Useful to |
| // distinguish between response types in JSON. |
| Kind string `json:"kind,omitempty"` |
| // Metadata: Metadata for the report. |
| Metadata *ResponseMetaData `json:"metadata,omitempty"` |
| // MetricHeaders: Describes metric columns. The number of MetricHeaders and |
| // ordering of MetricHeaders matches the metrics present in rows. |
| MetricHeaders []*MetricHeader `json:"metricHeaders,omitempty"` |
| // PivotHeaders: Summarizes the columns and rows created by a pivot. Each pivot |
| // in the request produces one header in the response. If we have a request |
| // like this: "pivots": [{ "fieldNames": ["country", "city"] }, { "fieldNames": |
| // "eventName" }] We will have the following `pivotHeaders` in the response: |
| // "pivotHeaders" : [{ "dimensionHeaders": [{ "dimensionValues": [ { "value": |
| // "United Kingdom" }, { "value": "London" } ] }, { "dimensionValues": [ { |
| // "value": "Japan" }, { "value": "Osaka" } ] }] }, { "dimensionHeaders": [{ |
| // "dimensionValues": [{ "value": "session_start" }] }, { "dimensionValues": [{ |
| // "value": "scroll" }] }] }] |
| PivotHeaders []*PivotHeader `json:"pivotHeaders,omitempty"` |
| // PropertyQuota: This Google Analytics property's quota state including this |
| // request. |
| PropertyQuota *PropertyQuota `json:"propertyQuota,omitempty"` |
| // Rows: Rows of dimension value combinations and metric values in the report. |
| Rows []*Row `json:"rows,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Aggregates") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Aggregates") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s RunPivotReportResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod RunPivotReportResponse |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // RunRealtimeReportRequest: The request to generate a realtime report. |
| type RunRealtimeReportRequest struct { |
| // DimensionFilter: The filter clause of dimensions. Metrics cannot be used in |
| // this filter. |
| DimensionFilter *FilterExpression `json:"dimensionFilter,omitempty"` |
| // Dimensions: The dimensions requested and displayed. |
| Dimensions []*Dimension `json:"dimensions,omitempty"` |
| // Limit: The number of rows to return. If unspecified, 10,000 rows are |
| // returned. The API returns a maximum of 250,000 rows per request, no matter |
| // how many you ask for. `limit` must be positive. The API can also return |
| // fewer rows than the requested `limit`, if there aren't as many dimension |
| // values as the `limit`. For instance, there are fewer than 300 possible |
| // values for the dimension `country`, so when reporting on only `country`, you |
| // can't get more than 300 rows, even if you set `limit` to a higher value. |
| Limit int64 `json:"limit,omitempty,string"` |
| // MetricAggregations: Aggregation of metrics. Aggregated metric values will be |
| // shown in rows where the dimension_values are set to |
| // "RESERVED_(MetricAggregation)". |
| // |
| // Possible values: |
| // "METRIC_AGGREGATION_UNSPECIFIED" - Unspecified operator. |
| // "TOTAL" - SUM operator. |
| // "MINIMUM" - Minimum operator. |
| // "MAXIMUM" - Maximum operator. |
| // "COUNT" - Count operator. |
| MetricAggregations []string `json:"metricAggregations,omitempty"` |
| // MetricFilter: The filter clause of metrics. Applied at post aggregation |
| // phase, similar to SQL having-clause. Dimensions cannot be used in this |
| // filter. |
| MetricFilter *FilterExpression `json:"metricFilter,omitempty"` |
| // Metrics: The metrics requested and displayed. |
| Metrics []*Metric `json:"metrics,omitempty"` |
| // MinuteRanges: The minute ranges of event data to read. If unspecified, one |
| // minute range for the last 30 minutes will be used. If multiple minute ranges |
| // are requested, each response row will contain a zero based minute range |
| // index. If two minute ranges overlap, the event data for the overlapping |
| // minutes is included in the response rows for both minute ranges. |
| MinuteRanges []*MinuteRange `json:"minuteRanges,omitempty"` |
| // OrderBys: Specifies how rows are ordered in the response. |
| OrderBys []*OrderBy `json:"orderBys,omitempty"` |
| // ReturnPropertyQuota: Toggles whether to return the current state of this |
| // Google Analytics property's Realtime quota. Quota is returned in |
| // PropertyQuota (#PropertyQuota). |
| ReturnPropertyQuota bool `json:"returnPropertyQuota,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DimensionFilter") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DimensionFilter") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s RunRealtimeReportRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod RunRealtimeReportRequest |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // RunRealtimeReportResponse: The response realtime report table corresponding |
| // to a request. |
| type RunRealtimeReportResponse struct { |
| // DimensionHeaders: Describes dimension columns. The number of |
| // DimensionHeaders and ordering of DimensionHeaders matches the dimensions |
| // present in rows. |
| DimensionHeaders []*DimensionHeader `json:"dimensionHeaders,omitempty"` |
| // Kind: Identifies what kind of resource this message is. This `kind` is |
| // always the fixed string "analyticsData#runRealtimeReport". Useful to |
| // distinguish between response types in JSON. |
| Kind string `json:"kind,omitempty"` |
| // Maximums: If requested, the maximum values of metrics. |
| Maximums []*Row `json:"maximums,omitempty"` |
| // MetricHeaders: Describes metric columns. The number of MetricHeaders and |
| // ordering of MetricHeaders matches the metrics present in rows. |
| MetricHeaders []*MetricHeader `json:"metricHeaders,omitempty"` |
| // Minimums: If requested, the minimum values of metrics. |
| Minimums []*Row `json:"minimums,omitempty"` |
| // PropertyQuota: This Google Analytics property's Realtime quota state |
| // including this request. |
| PropertyQuota *PropertyQuota `json:"propertyQuota,omitempty"` |
| // RowCount: The total number of rows in the query result. `rowCount` is |
| // independent of the number of rows returned in the response and the `limit` |
| // request parameter. For example if a query returns 175 rows and includes |
| // `limit` of 50 in the API request, the response will contain `rowCount` of |
| // 175 but only 50 rows. |
| RowCount int64 `json:"rowCount,omitempty"` |
| // Rows: Rows of dimension value combinations and metric values in the report. |
| Rows []*Row `json:"rows,omitempty"` |
| // Totals: If requested, the totaled values of metrics. |
| Totals []*Row `json:"totals,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "DimensionHeaders") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DimensionHeaders") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s RunRealtimeReportResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod RunRealtimeReportResponse |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // RunReportRequest: The request to generate a report. |
| type RunReportRequest struct { |
| // CohortSpec: Cohort group associated with this request. If there is a cohort |
| // group in the request the 'cohort' dimension must be present. |
| CohortSpec *CohortSpec `json:"cohortSpec,omitempty"` |
| // Comparisons: Optional. The configuration of comparisons requested and |
| // displayed. The request only requires a comparisons field in order to receive |
| // a comparison column in the response. |
| Comparisons []*Comparison `json:"comparisons,omitempty"` |
| // CurrencyCode: A currency code in ISO4217 format, such as "AED", "USD", |
| // "JPY". If the field is empty, the report uses the property's default |
| // currency. |
| CurrencyCode string `json:"currencyCode,omitempty"` |
| // DateRanges: Date ranges of data to read. If multiple date ranges are |
| // requested, each response row will contain a zero based date range index. If |
| // two date ranges overlap, the event data for the overlapping days is included |
| // in the response rows for both date ranges. In a cohort request, this |
| // `dateRanges` must be unspecified. |
| DateRanges []*DateRange `json:"dateRanges,omitempty"` |
| // DimensionFilter: Dimension filters let you ask for only specific dimension |
| // values in the report. To learn more, see Fundamentals of Dimension Filters |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/basics#dimension_filters) |
| // for examples. Metrics cannot be used in this filter. |
| DimensionFilter *FilterExpression `json:"dimensionFilter,omitempty"` |
| // Dimensions: The dimensions requested and displayed. |
| Dimensions []*Dimension `json:"dimensions,omitempty"` |
| // KeepEmptyRows: If false or unspecified, each row with all metrics equal to 0 |
| // will not be returned. If true, these rows will be returned if they are not |
| // separately removed by a filter. Regardless of this `keep_empty_rows` |
| // setting, only data recorded by the Google Analytics property can be |
| // displayed in a report. For example if a property never logs a `purchase` |
| // event, then a query for the `eventName` dimension and `eventCount` metric |
| // will not have a row eventName: "purchase" and eventCount: 0. |
| KeepEmptyRows bool `json:"keepEmptyRows,omitempty"` |
| // Limit: The number of rows to return. If unspecified, 10,000 rows are |
| // returned. The API returns a maximum of 250,000 rows per request, no matter |
| // how many you ask for. `limit` must be positive. The API can also return |
| // fewer rows than the requested `limit`, if there aren't as many dimension |
| // values as the `limit`. For instance, there are fewer than 300 possible |
| // values for the dimension `country`, so when reporting on only `country`, you |
| // can't get more than 300 rows, even if you set `limit` to a higher value. To |
| // learn more about this pagination parameter, see Pagination |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). |
| Limit int64 `json:"limit,omitempty,string"` |
| // MetricAggregations: Aggregation of metrics. Aggregated metric values will be |
| // shown in rows where the dimension_values are set to |
| // "RESERVED_(MetricAggregation)". Aggregates including both comparisons and |
| // multiple date ranges will be aggregated based on the date ranges. |
| // |
| // Possible values: |
| // "METRIC_AGGREGATION_UNSPECIFIED" - Unspecified operator. |
| // "TOTAL" - SUM operator. |
| // "MINIMUM" - Minimum operator. |
| // "MAXIMUM" - Maximum operator. |
| // "COUNT" - Count operator. |
| MetricAggregations []string `json:"metricAggregations,omitempty"` |
| // MetricFilter: The filter clause of metrics. Applied after aggregating the |
| // report's rows, similar to SQL having-clause. Dimensions cannot be used in |
| // this filter. |
| MetricFilter *FilterExpression `json:"metricFilter,omitempty"` |
| // Metrics: The metrics requested and displayed. |
| Metrics []*Metric `json:"metrics,omitempty"` |
| // Offset: The row count of the start row. The first row is counted as row 0. |
| // When paging, the first request does not specify offset; or equivalently, |
| // sets offset to 0; the first request returns the first `limit` of rows. The |
| // second request sets offset to the `limit` of the first request; the second |
| // request returns the second `limit` of rows. To learn more about this |
| // pagination parameter, see Pagination |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). |
| Offset int64 `json:"offset,omitempty,string"` |
| // OrderBys: Specifies how rows are ordered in the response. Requests including |
| // both comparisons and multiple date ranges will have order bys applied on the |
| // comparisons. |
| OrderBys []*OrderBy `json:"orderBys,omitempty"` |
| // Property: A Google Analytics property identifier whose events are tracked. |
| // Specified in the URL path and not the body. To learn more, see where to find |
| // your Property ID |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). |
| // Within a batch request, this property should either be unspecified or |
| // consistent with the batch-level property. Example: properties/1234 |
| Property string `json:"property,omitempty"` |
| // ReturnPropertyQuota: Toggles whether to return the current state of this |
| // Google Analytics property's quota. Quota is returned in PropertyQuota |
| // (#PropertyQuota). |
| ReturnPropertyQuota bool `json:"returnPropertyQuota,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "CohortSpec") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CohortSpec") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s RunReportRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod RunReportRequest |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // RunReportResponse: The response report table corresponding to a request. |
| type RunReportResponse struct { |
| // DimensionHeaders: Describes dimension columns. The number of |
| // DimensionHeaders and ordering of DimensionHeaders matches the dimensions |
| // present in rows. |
| DimensionHeaders []*DimensionHeader `json:"dimensionHeaders,omitempty"` |
| // Kind: Identifies what kind of resource this message is. This `kind` is |
| // always the fixed string "analyticsData#runReport". Useful to distinguish |
| // between response types in JSON. |
| Kind string `json:"kind,omitempty"` |
| // Maximums: If requested, the maximum values of metrics. |
| Maximums []*Row `json:"maximums,omitempty"` |
| // Metadata: Metadata for the report. |
| Metadata *ResponseMetaData `json:"metadata,omitempty"` |
| // MetricHeaders: Describes metric columns. The number of MetricHeaders and |
| // ordering of MetricHeaders matches the metrics present in rows. |
| MetricHeaders []*MetricHeader `json:"metricHeaders,omitempty"` |
| // Minimums: If requested, the minimum values of metrics. |
| Minimums []*Row `json:"minimums,omitempty"` |
| // PropertyQuota: This Google Analytics property's quota state including this |
| // request. |
| PropertyQuota *PropertyQuota `json:"propertyQuota,omitempty"` |
| // RowCount: The total number of rows in the query result. `rowCount` is |
| // independent of the number of rows returned in the response, the `limit` |
| // request parameter, and the `offset` request parameter. For example if a |
| // query returns 175 rows and includes `limit` of 50 in the API request, the |
| // response will contain `rowCount` of 175 but only 50 rows. To learn more |
| // about this pagination parameter, see Pagination |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). |
| RowCount int64 `json:"rowCount,omitempty"` |
| // Rows: Rows of dimension value combinations and metric values in the report. |
| Rows []*Row `json:"rows,omitempty"` |
| // Totals: If requested, the totaled values of metrics. |
| Totals []*Row `json:"totals,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "DimensionHeaders") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DimensionHeaders") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s RunReportResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod RunReportResponse |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // SamplingMetadata: If this report results is sampled |
| // (https://support.google.com/analytics/answer/13331292), this describes the |
| // percentage of events used in this report. Sampling is the practice of |
| // analyzing a subset of all data in order to uncover the meaningful |
| // information in the larger data set. |
| type SamplingMetadata struct { |
| // SamplesReadCount: The total number of events read in this sampled report for |
| // a date range. This is the size of the subset this property's data that was |
| // analyzed in this report. |
| SamplesReadCount int64 `json:"samplesReadCount,omitempty,string"` |
| // SamplingSpaceSize: The total number of events present in this property's |
| // data that could have been analyzed in this report for a date range. Sampling |
| // uncovers the meaningful information about the larger data set, and this is |
| // the size of the larger data set. To calculate the percentage of available |
| // data that was used in this report, compute |
| // `samplesReadCount/samplingSpaceSize`. |
| SamplingSpaceSize int64 `json:"samplingSpaceSize,omitempty,string"` |
| // ForceSendFields is a list of field names (e.g. "SamplesReadCount") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "SamplesReadCount") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s SamplingMetadata) MarshalJSON() ([]byte, error) { |
| type NoMethod SamplingMetadata |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // SchemaRestrictionResponse: The schema restrictions actively enforced in |
| // creating this report. To learn more, see Access and data-restriction |
| // management (https://support.google.com/analytics/answer/10851388). |
| type SchemaRestrictionResponse struct { |
| // ActiveMetricRestrictions: All restrictions actively enforced in creating the |
| // report. For example, `purchaseRevenue` always has the restriction type |
| // `REVENUE_DATA`. However, this active response restriction is only populated |
| // if the user's custom role disallows access to `REVENUE_DATA`. |
| ActiveMetricRestrictions []*ActiveMetricRestriction `json:"activeMetricRestrictions,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "ActiveMetricRestrictions") |
| // to unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "ActiveMetricRestrictions") to |
| // include in API requests with the JSON null value. By default, fields with |
| // empty values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s SchemaRestrictionResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod SchemaRestrictionResponse |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Status: The `Status` type defines a logical error model that is suitable for |
| // different programming environments, including REST APIs and RPC APIs. It is |
| // used by gRPC (https://github.com/grpc). Each `Status` message contains three |
| // pieces of data: error code, error message, and error details. You can find |
| // out more about this error model and how to work with it in the API Design |
| // Guide (https://cloud.google.com/apis/design/errors). |
| type Status struct { |
| // Code: The status code, which should be an enum value of google.rpc.Code. |
| Code int64 `json:"code,omitempty"` |
| // Details: A list of messages that carry the error details. There is a common |
| // set of message types for APIs to use. |
| Details []googleapi.RawMessage `json:"details,omitempty"` |
| // Message: A developer-facing error message, which should be in English. Any |
| // user-facing error message should be localized and sent in the |
| // google.rpc.Status.details field, or localized by the client. |
| Message string `json:"message,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Code") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Code") to include in API requests |
| // with the JSON null value. By default, fields with empty values are omitted |
| // from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s Status) MarshalJSON() ([]byte, error) { |
| type NoMethod Status |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // StringFilter: The filter for string |
| type StringFilter struct { |
| // CaseSensitive: If true, the string value is case sensitive. |
| CaseSensitive bool `json:"caseSensitive,omitempty"` |
| // MatchType: The match type for this filter. |
| // |
| // Possible values: |
| // "MATCH_TYPE_UNSPECIFIED" - Unspecified |
| // "EXACT" - Exact match of the string value. |
| // "BEGINS_WITH" - Begins with the string value. |
| // "ENDS_WITH" - Ends with the string value. |
| // "CONTAINS" - Contains the string value. |
| // "FULL_REGEXP" - Full match for the regular expression with the string |
| // value. |
| // "PARTIAL_REGEXP" - Partial match for the regular expression with the |
| // string value. |
| MatchType string `json:"matchType,omitempty"` |
| // Value: The string value used for the matching. |
| Value string `json:"value,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "CaseSensitive") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CaseSensitive") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s StringFilter) MarshalJSON() ([]byte, error) { |
| type NoMethod StringFilter |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // V1betaAudienceDimension: An audience dimension is a user attribute. Specific |
| // user attributed are requested and then later returned in the |
| // `QueryAudienceExportResponse`. |
| type V1betaAudienceDimension struct { |
| // DimensionName: Optional. The API name of the dimension. See the API |
| // Dimensions |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/audience-list-api-schema#dimensions) |
| // for the list of dimension names. |
| DimensionName string `json:"dimensionName,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DimensionName") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DimensionName") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s V1betaAudienceDimension) MarshalJSON() ([]byte, error) { |
| type NoMethod V1betaAudienceDimension |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // V1betaAudienceDimensionValue: The value of a dimension. |
| type V1betaAudienceDimensionValue struct { |
| // Value: Value as a string if the dimension type is a string. |
| Value string `json:"value,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Value") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Value") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s V1betaAudienceDimensionValue) MarshalJSON() ([]byte, error) { |
| type NoMethod V1betaAudienceDimensionValue |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // V1betaAudienceRow: Dimension value attributes for the audience user row. |
| type V1betaAudienceRow struct { |
| // DimensionValues: Each dimension value attribute for an audience user. One |
| // dimension value will be added for each dimension column requested. |
| DimensionValues []*V1betaAudienceDimensionValue `json:"dimensionValues,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DimensionValues") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DimensionValues") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s V1betaAudienceRow) MarshalJSON() ([]byte, error) { |
| type NoMethod V1betaAudienceRow |
| return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) |
| } |
| |
| type PropertiesBatchRunPivotReportsCall struct { |
| s *Service |
| propertyid string |
| batchrunpivotreportsrequest *BatchRunPivotReportsRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // BatchRunPivotReports: Returns multiple pivot reports in a batch. All reports |
| // must be for the same Google Analytics property. |
| // |
| // - property: A Google Analytics property identifier whose events are tracked. |
| // Specified in the URL path and not the body. To learn more, see where to |
| // find your Property ID |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). |
| // This property must be specified for the batch. The property within |
| // RunPivotReportRequest may either be unspecified or consistent with this |
| // property. Example: properties/1234. |
| func (r *PropertiesService) BatchRunPivotReports(propertyid string, batchrunpivotreportsrequest *BatchRunPivotReportsRequest) *PropertiesBatchRunPivotReportsCall { |
| c := &PropertiesBatchRunPivotReportsCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.propertyid = propertyid |
| c.batchrunpivotreportsrequest = batchrunpivotreportsrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *PropertiesBatchRunPivotReportsCall) Fields(s ...googleapi.Field) *PropertiesBatchRunPivotReportsCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *PropertiesBatchRunPivotReportsCall) Context(ctx context.Context) *PropertiesBatchRunPivotReportsCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *PropertiesBatchRunPivotReportsCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *PropertiesBatchRunPivotReportsCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.batchrunpivotreportsrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+property}:batchRunPivotReports") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "property": c.propertyid, |
| }) |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "analyticsdata.properties.batchRunPivotReports", "request", internallog.HTTPRequest(req, body.Bytes())) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "analyticsdata.properties.batchRunPivotReports" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *BatchRunPivotReportsResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *PropertiesBatchRunPivotReportsCall) Do(opts ...googleapi.CallOption) (*BatchRunPivotReportsResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &BatchRunPivotReportsResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| b, err := gensupport.DecodeResponseBytes(target, res) |
| if err != nil { |
| return nil, err |
| } |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "analyticsdata.properties.batchRunPivotReports", "response", internallog.HTTPResponse(res, b)) |
| return ret, nil |
| } |
| |
| type PropertiesBatchRunReportsCall struct { |
| s *Service |
| propertyid string |
| batchrunreportsrequest *BatchRunReportsRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // BatchRunReports: Returns multiple reports in a batch. All reports must be |
| // for the same Google Analytics property. |
| // |
| // - property: A Google Analytics property identifier whose events are tracked. |
| // Specified in the URL path and not the body. To learn more, see where to |
| // find your Property ID |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). |
| // This property must be specified for the batch. The property within |
| // RunReportRequest may either be unspecified or consistent with this |
| // property. Example: properties/1234. |
| func (r *PropertiesService) BatchRunReports(propertyid string, batchrunreportsrequest *BatchRunReportsRequest) *PropertiesBatchRunReportsCall { |
| c := &PropertiesBatchRunReportsCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.propertyid = propertyid |
| c.batchrunreportsrequest = batchrunreportsrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *PropertiesBatchRunReportsCall) Fields(s ...googleapi.Field) *PropertiesBatchRunReportsCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *PropertiesBatchRunReportsCall) Context(ctx context.Context) *PropertiesBatchRunReportsCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *PropertiesBatchRunReportsCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *PropertiesBatchRunReportsCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.batchrunreportsrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+property}:batchRunReports") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "property": c.propertyid, |
| }) |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "analyticsdata.properties.batchRunReports", "request", internallog.HTTPRequest(req, body.Bytes())) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "analyticsdata.properties.batchRunReports" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *BatchRunReportsResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *PropertiesBatchRunReportsCall) Do(opts ...googleapi.CallOption) (*BatchRunReportsResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &BatchRunReportsResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| b, err := gensupport.DecodeResponseBytes(target, res) |
| if err != nil { |
| return nil, err |
| } |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "analyticsdata.properties.batchRunReports", "response", internallog.HTTPResponse(res, b)) |
| return ret, nil |
| } |
| |
| type PropertiesCheckCompatibilityCall struct { |
| s *Service |
| propertyid string |
| checkcompatibilityrequest *CheckCompatibilityRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // CheckCompatibility: This compatibility method lists dimensions and metrics |
| // that can be added to a report request and maintain compatibility. This |
| // method fails if the request's dimensions and metrics are incompatible. In |
| // Google Analytics, reports fail if they request incompatible dimensions |
| // and/or metrics; in that case, you will need to remove dimensions and/or |
| // metrics from the incompatible report until the report is compatible. The |
| // Realtime and Core reports have different compatibility rules. This method |
| // checks compatibility for Core reports. |
| // |
| // - property: A Google Analytics property identifier whose events are tracked. |
| // To learn more, see where to find your Property ID |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). |
| // `property` should be the same value as in your `runReport` request. |
| // Example: properties/1234. |
| func (r *PropertiesService) CheckCompatibility(propertyid string, checkcompatibilityrequest *CheckCompatibilityRequest) *PropertiesCheckCompatibilityCall { |
| c := &PropertiesCheckCompatibilityCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.propertyid = propertyid |
| c.checkcompatibilityrequest = checkcompatibilityrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *PropertiesCheckCompatibilityCall) Fields(s ...googleapi.Field) *PropertiesCheckCompatibilityCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *PropertiesCheckCompatibilityCall) Context(ctx context.Context) *PropertiesCheckCompatibilityCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *PropertiesCheckCompatibilityCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *PropertiesCheckCompatibilityCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.checkcompatibilityrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+property}:checkCompatibility") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "property": c.propertyid, |
| }) |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "analyticsdata.properties.checkCompatibility", "request", internallog.HTTPRequest(req, body.Bytes())) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "analyticsdata.properties.checkCompatibility" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *CheckCompatibilityResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *PropertiesCheckCompatibilityCall) Do(opts ...googleapi.CallOption) (*CheckCompatibilityResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &CheckCompatibilityResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| b, err := gensupport.DecodeResponseBytes(target, res) |
| if err != nil { |
| return nil, err |
| } |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "analyticsdata.properties.checkCompatibility", "response", internallog.HTTPResponse(res, b)) |
| return ret, nil |
| } |
| |
| type PropertiesGetMetadataCall struct { |
| s *Service |
| nameid string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // GetMetadata: Returns metadata for dimensions and metrics available in |
| // reporting methods. Used to explore the dimensions and metrics. In this |
| // method, a Google Analytics property identifier is specified in the request, |
| // and the metadata response includes Custom dimensions and metrics as well as |
| // Universal metadata. For example if a custom metric with parameter name |
| // `levels_unlocked` is registered to a property, the Metadata response will |
| // contain `customEvent:levels_unlocked`. Universal metadata are dimensions and |
| // metrics applicable to any property such as `country` and `totalUsers`. |
| // |
| // - name: The resource name of the metadata to retrieve. This name field is |
| // specified in the URL path and not URL parameters. Property is a numeric |
| // Google Analytics property identifier. To learn more, see where to find |
| // your Property ID |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). |
| // Example: properties/1234/metadata Set the Property ID to 0 for dimensions |
| // and metrics common to all properties. In this special mode, this method |
| // will not return custom dimensions and metrics. |
| func (r *PropertiesService) GetMetadata(nameid string) *PropertiesGetMetadataCall { |
| c := &PropertiesGetMetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.nameid = nameid |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *PropertiesGetMetadataCall) Fields(s ...googleapi.Field) *PropertiesGetMetadataCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *PropertiesGetMetadataCall) IfNoneMatch(entityTag string) *PropertiesGetMetadataCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *PropertiesGetMetadataCall) Context(ctx context.Context) *PropertiesGetMetadataCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *PropertiesGetMetadataCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *PropertiesGetMetadataCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, nil) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.nameid, |
| }) |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "analyticsdata.properties.getMetadata", "request", internallog.HTTPRequest(req, nil)) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "analyticsdata.properties.getMetadata" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Metadata.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *PropertiesGetMetadataCall) Do(opts ...googleapi.CallOption) (*Metadata, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Metadata{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| b, err := gensupport.DecodeResponseBytes(target, res) |
| if err != nil { |
| return nil, err |
| } |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "analyticsdata.properties.getMetadata", "response", internallog.HTTPResponse(res, b)) |
| return ret, nil |
| } |
| |
| type PropertiesRunPivotReportCall struct { |
| s *Service |
| propertyid string |
| runpivotreportrequest *RunPivotReportRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // RunPivotReport: Returns a customized pivot report of your Google Analytics |
| // event data. Pivot reports are more advanced and expressive formats than |
| // regular reports. In a pivot report, dimensions are only visible if they are |
| // included in a pivot. Multiple pivots can be specified to further dissect |
| // your data. |
| // |
| // - property: A Google Analytics property identifier whose events are tracked. |
| // Specified in the URL path and not the body. To learn more, see where to |
| // find your Property ID |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). |
| // Within a batch request, this property should either be unspecified or |
| // consistent with the batch-level property. Example: properties/1234. |
| func (r *PropertiesService) RunPivotReport(propertyid string, runpivotreportrequest *RunPivotReportRequest) *PropertiesRunPivotReportCall { |
| c := &PropertiesRunPivotReportCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.propertyid = propertyid |
| c.runpivotreportrequest = runpivotreportrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *PropertiesRunPivotReportCall) Fields(s ...googleapi.Field) *PropertiesRunPivotReportCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *PropertiesRunPivotReportCall) Context(ctx context.Context) *PropertiesRunPivotReportCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *PropertiesRunPivotReportCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *PropertiesRunPivotReportCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.runpivotreportrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+property}:runPivotReport") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "property": c.propertyid, |
| }) |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "analyticsdata.properties.runPivotReport", "request", internallog.HTTPRequest(req, body.Bytes())) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "analyticsdata.properties.runPivotReport" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *RunPivotReportResponse.ServerResponse.Header or (if a response was returned |
| // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *PropertiesRunPivotReportCall) Do(opts ...googleapi.CallOption) (*RunPivotReportResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &RunPivotReportResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| b, err := gensupport.DecodeResponseBytes(target, res) |
| if err != nil { |
| return nil, err |
| } |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "analyticsdata.properties.runPivotReport", "response", internallog.HTTPResponse(res, b)) |
| return ret, nil |
| } |
| |
| type PropertiesRunRealtimeReportCall struct { |
| s *Service |
| propertyid string |
| runrealtimereportrequest *RunRealtimeReportRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // RunRealtimeReport: Returns a customized report of realtime event data for |
| // your property. Events appear in realtime reports seconds after they have |
| // been sent to the Google Analytics. Realtime reports show events and usage |
| // data for the periods of time ranging from the present moment to 30 minutes |
| // ago (up to 60 minutes for Google Analytics 360 properties). For a guide to |
| // constructing realtime requests & understanding responses, see Creating a |
| // Realtime Report |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/realtime-basics). |
| // |
| // - property: A Google Analytics property identifier whose events are tracked. |
| // Specified in the URL path and not the body. To learn more, see where to |
| // find your Property ID |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). |
| // Example: properties/1234. |
| func (r *PropertiesService) RunRealtimeReport(propertyid string, runrealtimereportrequest *RunRealtimeReportRequest) *PropertiesRunRealtimeReportCall { |
| c := &PropertiesRunRealtimeReportCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.propertyid = propertyid |
| c.runrealtimereportrequest = runrealtimereportrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *PropertiesRunRealtimeReportCall) Fields(s ...googleapi.Field) *PropertiesRunRealtimeReportCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *PropertiesRunRealtimeReportCall) Context(ctx context.Context) *PropertiesRunRealtimeReportCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *PropertiesRunRealtimeReportCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *PropertiesRunRealtimeReportCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.runrealtimereportrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+property}:runRealtimeReport") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "property": c.propertyid, |
| }) |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "analyticsdata.properties.runRealtimeReport", "request", internallog.HTTPRequest(req, body.Bytes())) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "analyticsdata.properties.runRealtimeReport" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *RunRealtimeReportResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *PropertiesRunRealtimeReportCall) Do(opts ...googleapi.CallOption) (*RunRealtimeReportResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &RunRealtimeReportResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| b, err := gensupport.DecodeResponseBytes(target, res) |
| if err != nil { |
| return nil, err |
| } |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "analyticsdata.properties.runRealtimeReport", "response", internallog.HTTPResponse(res, b)) |
| return ret, nil |
| } |
| |
| type PropertiesRunReportCall struct { |
| s *Service |
| propertyid string |
| runreportrequest *RunReportRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // RunReport: Returns a customized report of your Google Analytics event data. |
| // Reports contain statistics derived from data collected by the Google |
| // Analytics tracking code. The data returned from the API is as a table with |
| // columns for the requested dimensions and metrics. Metrics are individual |
| // measurements of user activity on your property, such as active users or |
| // event count. Dimensions break down metrics across some common criteria, such |
| // as country or event name. For a guide to constructing requests & |
| // understanding responses, see Creating a Report |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/basics). |
| // |
| // - property: A Google Analytics property identifier whose events are tracked. |
| // Specified in the URL path and not the body. To learn more, see where to |
| // find your Property ID |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). |
| // Within a batch request, this property should either be unspecified or |
| // consistent with the batch-level property. Example: properties/1234. |
| func (r *PropertiesService) RunReport(propertyid string, runreportrequest *RunReportRequest) *PropertiesRunReportCall { |
| c := &PropertiesRunReportCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.propertyid = propertyid |
| c.runreportrequest = runreportrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *PropertiesRunReportCall) Fields(s ...googleapi.Field) *PropertiesRunReportCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *PropertiesRunReportCall) Context(ctx context.Context) *PropertiesRunReportCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *PropertiesRunReportCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *PropertiesRunReportCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.runreportrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+property}:runReport") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "property": c.propertyid, |
| }) |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "analyticsdata.properties.runReport", "request", internallog.HTTPRequest(req, body.Bytes())) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "analyticsdata.properties.runReport" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *RunReportResponse.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *PropertiesRunReportCall) Do(opts ...googleapi.CallOption) (*RunReportResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &RunReportResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| b, err := gensupport.DecodeResponseBytes(target, res) |
| if err != nil { |
| return nil, err |
| } |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "analyticsdata.properties.runReport", "response", internallog.HTTPResponse(res, b)) |
| return ret, nil |
| } |
| |
| type PropertiesAudienceExportsCreateCall struct { |
| s *Service |
| parent string |
| audienceexport *AudienceExport |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Create: Creates an audience export for later retrieval. This method quickly |
| // returns the audience export's resource name and initiates a long running |
| // asynchronous request to form an audience export. To export the users in an |
| // audience export, first create the audience export through this method and |
| // then send the audience resource name to the `QueryAudienceExport` method. |
| // See Creating an Audience Export |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/audience-list-basics) |
| // for an introduction to Audience Exports with examples. An audience export is |
| // a snapshot of the users currently in the audience at the time of audience |
| // export creation. Creating audience exports for one audience on different |
| // days will return different results as users enter and exit the audience. |
| // Audiences in Google Analytics 4 allow you to segment your users in the ways |
| // that are important to your business. To learn more, see |
| // https://support.google.com/analytics/answer/9267572. Audience exports |
| // contain the users in each audience. Audience Export APIs have some methods |
| // at alpha and other methods at beta stability. The intention is to advance |
| // methods to beta stability after some feedback and adoption. To give your |
| // feedback on this API, complete the Google Analytics Audience Export API |
| // Feedback (https://forms.gle/EeA5u5LW6PEggtCEA) form. |
| // |
| // - parent: The parent resource where this audience export will be created. |
| // Format: `properties/{property}`. |
| func (r *PropertiesAudienceExportsService) Create(parent string, audienceexport *AudienceExport) *PropertiesAudienceExportsCreateCall { |
| c := &PropertiesAudienceExportsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.parent = parent |
| c.audienceexport = audienceexport |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *PropertiesAudienceExportsCreateCall) Fields(s ...googleapi.Field) *PropertiesAudienceExportsCreateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *PropertiesAudienceExportsCreateCall) Context(ctx context.Context) *PropertiesAudienceExportsCreateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *PropertiesAudienceExportsCreateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *PropertiesAudienceExportsCreateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.audienceexport) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/audienceExports") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "parent": c.parent, |
| }) |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "analyticsdata.properties.audienceExports.create", "request", internallog.HTTPRequest(req, body.Bytes())) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "analyticsdata.properties.audienceExports.create" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *PropertiesAudienceExportsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Operation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| b, err := gensupport.DecodeResponseBytes(target, res) |
| if err != nil { |
| return nil, err |
| } |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "analyticsdata.properties.audienceExports.create", "response", internallog.HTTPResponse(res, b)) |
| return ret, nil |
| } |
| |
| type PropertiesAudienceExportsGetCall struct { |
| s *Service |
| name string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Gets configuration metadata about a specific audience export. This |
| // method can be used to understand an audience export after it has been |
| // created. See Creating an Audience Export |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/audience-list-basics) |
| // for an introduction to Audience Exports with examples. Audience Export APIs |
| // have some methods at alpha and other methods at beta stability. The |
| // intention is to advance methods to beta stability after some feedback and |
| // adoption. To give your feedback on this API, complete the Google Analytics |
| // Audience Export API Feedback (https://forms.gle/EeA5u5LW6PEggtCEA) form. |
| // |
| // - name: The audience export resource name. Format: |
| // `properties/{property}/audienceExports/{audience_export}`. |
| func (r *PropertiesAudienceExportsService) Get(name string) *PropertiesAudienceExportsGetCall { |
| c := &PropertiesAudienceExportsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *PropertiesAudienceExportsGetCall) Fields(s ...googleapi.Field) *PropertiesAudienceExportsGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *PropertiesAudienceExportsGetCall) IfNoneMatch(entityTag string) *PropertiesAudienceExportsGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *PropertiesAudienceExportsGetCall) Context(ctx context.Context) *PropertiesAudienceExportsGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *PropertiesAudienceExportsGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *PropertiesAudienceExportsGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, nil) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "analyticsdata.properties.audienceExports.get", "request", internallog.HTTPRequest(req, nil)) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "analyticsdata.properties.audienceExports.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *AudienceExport.ServerResponse.Header or (if a response was returned at all) |
| // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *PropertiesAudienceExportsGetCall) Do(opts ...googleapi.CallOption) (*AudienceExport, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &AudienceExport{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| b, err := gensupport.DecodeResponseBytes(target, res) |
| if err != nil { |
| return nil, err |
| } |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "analyticsdata.properties.audienceExports.get", "response", internallog.HTTPResponse(res, b)) |
| return ret, nil |
| } |
| |
| type PropertiesAudienceExportsListCall struct { |
| s *Service |
| parent string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Lists all audience exports for a property. This method can be used for |
| // you to find and reuse existing audience exports rather than creating |
| // unnecessary new audience exports. The same audience can have multiple |
| // audience exports that represent the export of users that were in an audience |
| // on different days. See Creating an Audience Export |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/audience-list-basics) |
| // for an introduction to Audience Exports with examples. Audience Export APIs |
| // have some methods at alpha and other methods at beta stability. The |
| // intention is to advance methods to beta stability after some feedback and |
| // adoption. To give your feedback on this API, complete the Google Analytics |
| // Audience Export API Feedback (https://forms.gle/EeA5u5LW6PEggtCEA) form. |
| // |
| // - parent: All audience exports for this property will be listed in the |
| // response. Format: `properties/{property}`. |
| func (r *PropertiesAudienceExportsService) List(parent string) *PropertiesAudienceExportsListCall { |
| c := &PropertiesAudienceExportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.parent = parent |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": The maximum number of |
| // audience exports to return. The service may return fewer than this value. If |
| // unspecified, at most 200 audience exports will be returned. The maximum |
| // value is 1000 (higher values will be coerced to the maximum). |
| func (c *PropertiesAudienceExportsListCall) PageSize(pageSize int64) *PropertiesAudienceExportsListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": A page token, received |
| // from a previous `ListAudienceExports` call. Provide this to retrieve the |
| // subsequent page. When paginating, all other parameters provided to |
| // `ListAudienceExports` must match the call that provided the page token. |
| func (c *PropertiesAudienceExportsListCall) PageToken(pageToken string) *PropertiesAudienceExportsListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *PropertiesAudienceExportsListCall) Fields(s ...googleapi.Field) *PropertiesAudienceExportsListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *PropertiesAudienceExportsListCall) IfNoneMatch(entityTag string) *PropertiesAudienceExportsListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *PropertiesAudienceExportsListCall) Context(ctx context.Context) *PropertiesAudienceExportsListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *PropertiesAudienceExportsListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *PropertiesAudienceExportsListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/audienceExports") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, nil) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "parent": c.parent, |
| }) |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "analyticsdata.properties.audienceExports.list", "request", internallog.HTTPRequest(req, nil)) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "analyticsdata.properties.audienceExports.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListAudienceExportsResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *PropertiesAudienceExportsListCall) Do(opts ...googleapi.CallOption) (*ListAudienceExportsResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListAudienceExportsResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| b, err := gensupport.DecodeResponseBytes(target, res) |
| if err != nil { |
| return nil, err |
| } |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "analyticsdata.properties.audienceExports.list", "response", internallog.HTTPResponse(res, b)) |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *PropertiesAudienceExportsListCall) Pages(ctx context.Context, f func(*ListAudienceExportsResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type PropertiesAudienceExportsQueryCall struct { |
| s *Service |
| name string |
| queryaudienceexportrequest *QueryAudienceExportRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Query: Retrieves an audience export of users. After creating an audience, |
| // the users are not immediately available for exporting. First, a request to |
| // `CreateAudienceExport` is necessary to create an audience export of users, |
| // and then second, this method is used to retrieve the users in the audience |
| // export. See Creating an Audience Export |
| // (https://developers.google.com/analytics/devguides/reporting/data/v1/audience-list-basics) |
| // for an introduction to Audience Exports with examples. Audiences in Google |
| // Analytics 4 allow you to segment your users in the ways that are important |
| // to your business. To learn more, see |
| // https://support.google.com/analytics/answer/9267572. Audience Export APIs |
| // have some methods at alpha and other methods at beta stability. The |
| // intention is to advance methods to beta stability after some feedback and |
| // adoption. To give your feedback on this API, complete the Google Analytics |
| // Audience Export API Feedback (https://forms.gle/EeA5u5LW6PEggtCEA) form. |
| // |
| // - name: The name of the audience export to retrieve users from. Format: |
| // `properties/{property}/audienceExports/{audience_export}`. |
| func (r *PropertiesAudienceExportsService) Query(name string, queryaudienceexportrequest *QueryAudienceExportRequest) *PropertiesAudienceExportsQueryCall { |
| c := &PropertiesAudienceExportsQueryCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| c.queryaudienceexportrequest = queryaudienceexportrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *PropertiesAudienceExportsQueryCall) Fields(s ...googleapi.Field) *PropertiesAudienceExportsQueryCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *PropertiesAudienceExportsQueryCall) Context(ctx context.Context) *PropertiesAudienceExportsQueryCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *PropertiesAudienceExportsQueryCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *PropertiesAudienceExportsQueryCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| body, err := googleapi.WithoutDataWrapper.JSONBuffer(c.queryaudienceexportrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}:query") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "analyticsdata.properties.audienceExports.query", "request", internallog.HTTPRequest(req, body.Bytes())) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "analyticsdata.properties.audienceExports.query" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *QueryAudienceExportResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *PropertiesAudienceExportsQueryCall) Do(opts ...googleapi.CallOption) (*QueryAudienceExportResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &QueryAudienceExportResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| b, err := gensupport.DecodeResponseBytes(target, res) |
| if err != nil { |
| return nil, err |
| } |
| c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "analyticsdata.properties.audienceExports.query", "response", internallog.HTTPResponse(res, b)) |
| return ret, nil |
| } |