Google Analytics Data API (GA4)

The Google Analytics Data API provides programmatic access to Google Analytics 4 (GA4) report data including standard reports, pivot reports, real-time reports, funnel reports, and audience exports.

Documentation

Specifications

Code Examples

Other Resources

🔗
SDKs
Python SDK
🔗
SDKs
Node.js SDK
🔗
SDKs
Java SDK
🔗
SDKs
.NET SDK
🔗
SDKs
PHP SDK
🔗
GraphQL
https://raw.githubusercontent.com/api-evangelist/google-analytics/refs/heads/main/graphql/google-analytics-graphql.md
🔗
APIsJSON
https://raw.githubusercontent.com/api-evangelist/google-analytics/refs/heads/main/apis.yml
🔗
Arazzo
https://raw.githubusercontent.com/api-evangelist/google-analytics/refs/heads/main/arazzo/google-analytics-account-change-history-audit-workflow.yml
🔗
Arazzo
https://raw.githubusercontent.com/api-evangelist/google-analytics/refs/heads/main/arazzo/google-analytics-audience-export-create-or-reuse-workflow.yml
🔗
Arazzo
https://raw.githubusercontent.com/api-evangelist/google-analytics/refs/heads/main/arazzo/google-analytics-audit-custom-definitions-workflow.yml
🔗
Arazzo
https://raw.githubusercontent.com/api-evangelist/google-analytics/refs/heads/main/arazzo/google-analytics-batch-run-reports-workflow.yml
🔗
Arazzo
https://raw.githubusercontent.com/api-evangelist/google-analytics/refs/heads/main/arazzo/google-analytics-check-compatibility-run-report-workflow.yml
🔗
Arazzo
https://raw.githubusercontent.com/api-evangelist/google-analytics/refs/heads/main/arazzo/google-analytics-create-custom-dimension-run-report-workflow.yml
🔗
Arazzo
https://raw.githubusercontent.com/api-evangelist/google-analytics/refs/heads/main/arazzo/google-analytics-create-custom-metric-run-report-workflow.yml
🔗
Arazzo
https://raw.githubusercontent.com/api-evangelist/google-analytics/refs/heads/main/arazzo/google-analytics-create-property-data-stream-workflow.yml
🔗
Arazzo
https://raw.githubusercontent.com/api-evangelist/google-analytics/refs/heads/main/arazzo/google-analytics-discover-and-run-report-workflow.yml
🔗
Arazzo
https://raw.githubusercontent.com/api-evangelist/google-analytics/refs/heads/main/arazzo/google-analytics-inventory-property-data-streams-workflow.yml
🔗
Arazzo
https://raw.githubusercontent.com/api-evangelist/google-analytics/refs/heads/main/arazzo/google-analytics-list-properties-run-realtime-workflow.yml
🔗
Arazzo
https://raw.githubusercontent.com/api-evangelist/google-analytics/refs/heads/main/arazzo/google-analytics-query-audience-export-users-workflow.yml

OpenAPI Specification

google-analytics-data-api.yaml Raw ↑
openapi: 3.0.0
servers:
- url: https://analyticsdata.googleapis.com/
info:
  contact:
    name: Google
    url: https://google.com
    x-twitter: youtube
  description: "Accesses report data in Google Analytics. Warning: Creating multiple Customer Applications, Accounts, or Projects to simulate or act as a single Customer Application, Account, or Project
    (respectively) or to circumvent Service-specific usage limits or quotas is a direct violation of Google Cloud Platform Terms of Service as well as Google APIs Terms of Service. These actions can result
    in immediate termination of your GCP project(s) without any warning. "
  license:
    name: Creative Commons Attribution 3.0
    url: http://creativecommons.org/licenses/by/3.0/
  termsOfService: https://developers.google.com/terms/
  title: Google Analytics Data API
  version: v1beta
  x-apisguru-categories:
  - analytics
  - media
  x-logo:
    url: https://upload.wikimedia.org/wikipedia/commons/e/e1/YouTube_play_buttom_icon_%282013-2017%29.svg
  x-origin:
  - format: google
    url: https://analyticsdata.googleapis.com/$discovery/rest?version=v1beta
    version: v1
  x-providerName: googleapis.com
  x-serviceName: analyticsdata
externalDocs:
  url: https://developers.google.com/analytics/devguides/reporting/data/v1/
tags:
- name: properties
paths:
  /v1beta/{name}:
    get:
      description: 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.
      operationId: analyticsdata.properties.audienceExports.get
      parameters:
      - description: "Required. The audience export resource name. Format: `properties/{property}/audienceExports/{audience_export}`"
        in: path
        name: name
        required: true
        schema:
          type: string
        example: Example Name
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AudienceExport"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics
        Oauth2c:
        - https://www.googleapis.com/auth/analytics
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.readonly
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.readonly
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    parameters:
    - $ref: "#/components/parameters/_.xgafv"
    - $ref: "#/components/parameters/access_token"
    - $ref: "#/components/parameters/alt"
    - $ref: "#/components/parameters/callback"
    - $ref: "#/components/parameters/fields"
    - $ref: "#/components/parameters/key"
    - $ref: "#/components/parameters/oauth_token"
    - $ref: "#/components/parameters/prettyPrint"
    - $ref: "#/components/parameters/quotaUser"
    - $ref: "#/components/parameters/upload_protocol"
    - $ref: "#/components/parameters/uploadType"
  /v1beta/{name}:query:
    parameters:
    - $ref: "#/components/parameters/_.xgafv"
    - $ref: "#/components/parameters/access_token"
    - $ref: "#/components/parameters/alt"
    - $ref: "#/components/parameters/callback"
    - $ref: "#/components/parameters/fields"
    - $ref: "#/components/parameters/key"
    - $ref: "#/components/parameters/oauth_token"
    - $ref: "#/components/parameters/prettyPrint"
    - $ref: "#/components/parameters/quotaUser"
    - $ref: "#/components/parameters/upload_protocol"
    - $ref: "#/components/parameters/uploadType"
    post:
      description: 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.
      operationId: analyticsdata.properties.audienceExports.query
      parameters:
      - description: "Required. The name of the audience export to retrieve users from. Format: `properties/{property}/audienceExports/{audience_export}`"
        in: path
        name: name
        required: true
        schema:
          type: string
        example: Example Name
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/QueryAudienceExportRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/QueryAudienceExportResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics
        Oauth2c:
        - https://www.googleapis.com/auth/analytics
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.readonly
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.readonly
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /v1beta/{parent}/audienceExports:
    get:
      description: 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.
      operationId: analyticsdata.properties.audienceExports.list
      parameters:
      - description: "Required. All audience exports for this property will be listed in the response. Format: `properties/{property}`"
        in: path
        name: parent
        required: true
        schema:
          type: string
        example: example_value
      - description: Optional. 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).
        in: query
        name: pageSize
        schema:
          type: integer
        example: 10
      - description: Optional. 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.
        in: query
        name: pageToken
        schema:
          type: string
        example: abc123token
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListAudienceExportsResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics
        Oauth2c:
        - https://www.googleapis.com/auth/analytics
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.readonly
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.readonly
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    parameters:
    - $ref: "#/components/parameters/_.xgafv"
    - $ref: "#/components/parameters/access_token"
    - $ref: "#/components/parameters/alt"
    - $ref: "#/components/parameters/callback"
    - $ref: "#/components/parameters/fields"
    - $ref: "#/components/parameters/key"
    - $ref: "#/components/parameters/oauth_token"
    - $ref: "#/components/parameters/prettyPrint"
    - $ref: "#/components/parameters/quotaUser"
    - $ref: "#/components/parameters/upload_protocol"
    - $ref: "#/components/parameters/uploadType"
    post:
      description: 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.
      operationId: analyticsdata.properties.audienceExports.create
      parameters:
      - description: "Required. The parent resource where this audience export will be created. Format: `properties/{property}`"
        in: path
        name: parent
        required: true
        schema:
          type: string
        example: example_value
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AudienceExport"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Operation"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics
        Oauth2c:
        - https://www.googleapis.com/auth/analytics
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.readonly
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.readonly
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /v1beta/{property}:batchRunPivotReports:
    parameters:
    - $ref: "#/components/parameters/_.xgafv"
    - $ref: "#/components/parameters/access_token"
    - $ref: "#/components/parameters/alt"
    - $ref: "#/components/parameters/callback"
    - $ref: "#/components/parameters/fields"
    - $ref: "#/components/parameters/key"
    - $ref: "#/components/parameters/oauth_token"
    - $ref: "#/components/parameters/prettyPrint"
    - $ref: "#/components/parameters/quotaUser"
    - $ref: "#/components/parameters/upload_protocol"
    - $ref: "#/components/parameters/uploadType"
    post:
      description: Returns multiple pivot reports in a batch. All reports must be for the same GA4 Property.
      operationId: analyticsdata.properties.batchRunPivotReports
      parameters:
      - description: "A Google Analytics GA4 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"
        in: path
        name: property
        required: true
        schema:
          type: string
        example: example_value
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/BatchRunPivotReportsRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BatchRunPivotReportsResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics
        Oauth2c:
        - https://www.googleapis.com/auth/analytics
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.readonly
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.readonly
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /v1beta/{property}:batchRunReports:
    parameters:
    - $ref: "#/components/parameters/_.xgafv"
    - $ref: "#/components/parameters/access_token"
    - $ref: "#/components/parameters/alt"
    - $ref: "#/components/parameters/callback"
    - $ref: "#/components/parameters/fields"
    - $ref: "#/components/parameters/key"
    - $ref: "#/components/parameters/oauth_token"
    - $ref: "#/components/parameters/prettyPrint"
    - $ref: "#/components/parameters/quotaUser"
    - $ref: "#/components/parameters/upload_protocol"
    - $ref: "#/components/parameters/uploadType"
    post:
      description: Returns multiple reports in a batch. All reports must be for the same GA4 Property.
      operationId: analyticsdata.properties.batchRunReports
      parameters:
      - description: "A Google Analytics GA4 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"
        in: path
        name: property
        required: true
        schema:
          type: string
        example: example_value
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/BatchRunReportsRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BatchRunReportsResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics
        Oauth2c:
        - https://www.googleapis.com/auth/analytics
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.readonly
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.readonly
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /v1beta/{property}:checkCompatibility:
    parameters:
    - $ref: "#/components/parameters/_.xgafv"
    - $ref: "#/components/parameters/access_token"
    - $ref: "#/components/parameters/alt"
    - $ref: "#/components/parameters/callback"
    - $ref: "#/components/parameters/fields"
    - $ref: "#/components/parameters/key"
    - $ref: "#/components/parameters/oauth_token"
    - $ref: "#/components/parameters/prettyPrint"
    - $ref: "#/components/parameters/quotaUser"
    - $ref: "#/components/parameters/upload_protocol"
    - $ref: "#/components/parameters/uploadType"
    post:
      description: 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.
      operationId: analyticsdata.properties.checkCompatibility
      parameters:
      - description: "A Google Analytics GA4 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"
        in: path
        name: property
        required: true
        schema:
          type: string
        example: example_value
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CheckCompatibilityRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CheckCompatibilityResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics
        Oauth2c:
        - https://www.googleapis.com/auth/analytics
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.readonly
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.readonly
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /v1beta/{property}:runPivotReport:
    parameters:
    - $ref: "#/components/parameters/_.xgafv"
    - $ref: "#/components/parameters/access_token"
    - $ref: "#/components/parameters/alt"
    - $ref: "#/components/parameters/callback"
    - $ref: "#/components/parameters/fields"
    - $ref: "#/components/parameters/key"
    - $ref: "#/components/parameters/oauth_token"
    - $ref: "#/components/parameters/prettyPrint"
    - $ref: "#/components/parameters/quotaUser"
    - $ref: "#/components/parameters/upload_protocol"
    - $ref: "#/components/parameters/uploadType"
    post:
      description: 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.
      operationId: analyticsdata.properties.runPivotReport
      parameters:
      - description: "A Google Analytics GA4 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"
        in: path
        name: property
        required: true
        schema:
          type: string
        example: example_value
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RunPivotReportRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RunPivotReportResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics
        Oauth2c:
        - https://www.googleapis.com/auth/analytics
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.readonly
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.readonly
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /v1beta/{property}:runRealtimeReport:
    parameters:
    - $ref: "#/components/parameters/_.xgafv"
    - $ref: "#/components/parameters/access_token"
    - $ref: "#/components/parameters/alt"
    - $ref: "#/components/parameters/callback"
    - $ref: "#/components/parameters/fields"
    - $ref: "#/components/parameters/key"
    - $ref: "#/components/parameters/oauth_token"
    - $ref: "#/components/parameters/prettyPrint"
    - $ref: "#/components/parameters/quotaUser"
    - $ref: "#/components/parameters/upload_protocol"
    - $ref: "#/components/parameters/uploadType"
    post:
      description: 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).
      operationId: analyticsdata.properties.runRealtimeReport
      parameters:
      - description: "A Google Analytics GA4 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"
        in: path
        name: property
        required: true
        schema:
          type: string
        example: example_value
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RunRealtimeReportRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RunRealtimeReportResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics
        Oauth2c:
        - https://www.googleapis.com/auth/analytics
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.readonly
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.readonly
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /v1beta/{property}:runReport:
    parameters:
    - $ref: "#/components/parameters/_.xgafv"
    - $ref: "#/components/parameters/access_token"
    - $ref: "#/components/parameters/alt"
    - $ref: "#/components/parameters/callback"
    - $ref: "#/components/parameters/fields"
    - $ref: "#/components/parameters/key"
    - $ref: "#/components/parameters/oauth_token"
    - $ref: "#/components/parameters/prettyPrint"
    - $ref: "#/components/parameters/quotaUser"
    - $ref: "#/components/parameters/upload_protocol"
    - $ref: "#/components/parameters/uploadType"
    post:
      description: 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).
      operationId: analyticsdata.properties.runReport
      parameters:
      - description: "A Google Analytics GA4 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"
        in: path
        name: property
        required: true
        schema:
          type: string
        example: example_value
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RunReportRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RunReportResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics
        Oauth2c:
        - https://www.googleapis.com/auth/analytics
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.readonly
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.readonly
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  parameters:
    _.xgafv:
      description: V1 error format.
      in: query
      name: $.xgafv
      schema:
        enum:
        - "1"
        - "2"
        type: string
    access_token:
      description: OAuth access token.
      in: query
      name: access_token
      schema:
        type: string
    alt:
      description: Data format for response.
      in: query
      name: alt
      schema:
        enum:
        - json
        - media
        - proto
        type: string
    callback:
      description: JSONP
      in: query
      name: callback
      schema:
        type: string
    fields:
      description: Selector specifying which fields to include in a partial response.
      in: query
      name: fields
      schema:
        type: string
    key:
      description: API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
      in: query
      name: key
      schema:
        type: string
    oauth_token:
      description: OAuth 2.0 token for the current user.
      in: query
      name: oauth_token
      schema:
        type: string
    prettyPrint:
      description: Returns response with indentations and line breaks.
      in: query
      name: prettyPrint
      schema:
        type: boolean
    quotaUser:
      description: Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
      in: query
      name: quotaUser
      schema:
        type: string
    uploadType:
      description: Legacy upload protocol for media (e.g. "media", "multipart").
      in: query
      name: uploadType
      schema:
        type: string
    upload_protocol:
      description: Upload protocol for media (e.g. "raw", "multipart").
      in: query
      name: upload_protocol
      schema:
        type: string
  schemas:
    ActiveMetricRestriction:
      description: A metric actively restricted in creating the report.
      properties:
        metricName:
          description: The name of the restricted metric.
          type: string
          example: Example Name
        restrictedMetricTypes:
          description: The reason for this metric's restriction.
          items:
            enum:
            - RESTRICTED_METRIC_TYPE_UNSPECIFIED
            - COST_DATA
            - REVENUE_DATA
            type: string
          type: array
      type: object
    AudienceExport:
      description: 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.
      properties:
        audience:
          description: "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}`"
          type: string
          example: example_value
        audienceDisplayName:
          description: Output only. The descriptive display name for this audience. For example, "Purchasers".
          readOnly: true
          type: string
          example: Example Name
        beginCreatingTime:
          description: Output only. The time when CreateAudienceExport was called and the AudienceExport began the `CREATING` state.
          format: google-datetime
          readOnly: true
          type: string
          example: '2026-04-17T12:00:00Z'
        creationQuotaTokensCharged:
          description: 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.
          format: int32
          readOnly: true
          type: integer
          example: 42
        dimensions:
          description: Required. The dimensions requested and displayed in the query response.
          items:
            $ref: "#/components/schemas/V1betaAudienceDimension"
          type: array
        errorMessage:
          description: Output only. Error message is populated when an audience export fails during creation. A common reason for such a failure is quota exhaustion.
          readOnly: true
          type: string
          example: example_value
        name:
          description: "Output only. Identifier. The audience export resource name assigned during creation. This resource name identifies this `AudienceExport`. Format: `properties/{property}/audienceExports/{audience_export}`"
          readOnly: true
          type: string
          example: Example Name
        percentageCompleted:
          description: Output only. The percentage completed for this audience export ranging between 0 to 100.
          format: double
          readOnly: true
          type: number
          example: 75.5
        rowCount:
          description: Output only. The total number of rows in the AudienceExport result.
          format: int32
          readOnly: true
          type: integer
          example: 10
        state:
          description: Output only. The current state for this AudienceExport.
          enum:
          - STATE_UNSPECIFIED
          - CREATING
          - ACTIVE
          - FAILED
          readOnly: true
          type: string
          example: STATE_UNSPECIFIED
      type: object
    AudienceListMetadata:
      description: This metadata is currently blank.
      properties: {}
      type: object
    BatchRunPivotReportsRequest:
      description: The batch request containing multiple pivot report requests.
      properties:
        requests:
          description: Individual requests. Each request has a separate pivot report response. Each batch request is allowed up to 5 requests.
          items:
            $ref: "#/components/schemas/RunPivotReportRequest"
          type: array
      type: object
    BatchRunPivotReportsResponse:
      description: The batch response containing multiple pivot reports.
      properties:
        kind:
          description: 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.
          type: string
          example: example_value
        pivotReports:
          description: Individual responses. Each response has a separate pivot report request.
          ite

# --- truncated at 32 KB (103 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/google-analytics/refs/heads/main/openapi/google-analytics-data-api.yaml