Google Analytics Admin API

The Analytics Admin API allows programmatic access to configuration data for Google Analytics 4 properties including account management, data streams, custom dimensions, key events, user permissions, and integration linking.

OpenAPI Specification

google-analytics-admin-api.yaml Raw ↑
openapi: 3.0.0
servers:
- url: https://analyticsadmin.googleapis.com/
info:
  contact:
    name: Google
    url: https://google.com
    x-twitter: youtube
  description: "Manage properties 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 Admin 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://analyticsadmin.googleapis.com/$discovery/rest?version=v1beta
    version: v1
  x-preferred: true
  x-providerName: googleapis.com
  x-serviceName: analyticsadmin
externalDocs:
  url: http://code.google.com/apis/analytics/docs/mgmt/home.html
tags:
- name: accounts
- name: accountSummaries
- name: properties
paths:
  /v1beta/accountSummaries:
    get:
      description: Returns summaries of all accounts accessible by the caller.
      operationId: analyticsadmin.accountSummaries.list
      parameters:
      - description: The maximum number of AccountSummary resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources 
          will be returned. The maximum value is 200; (higher values will be coerced to the maximum)
        in: query
        name: pageSize
        schema:
          type: integer
        example: 10
      - description: A page token, received from a previous `ListAccountSummaries` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to 
          `ListAccountSummaries` 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/GoogleAnalyticsAdminV1betaListAccountSummariesResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.readonly
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.readonly
      tags:
      - accountSummaries
      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/accounts:
    get:
      description: 'Returns all accounts accessible by the caller. Note that these accounts might not currently have GA4 properties. Soft-deleted (ie: "trashed") accounts are excluded by default. Returns
        an empty list if no relevant accounts are found.'
      operationId: analyticsadmin.accounts.list
      parameters:
      - description: The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned.
          The maximum value is 200; (higher values will be coerced to the maximum)
        in: query
        name: pageSize
        schema:
          type: integer
        example: 10
      - description: A page token, received from a previous `ListAccounts` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAccounts` must 
          match the call that provided the page token.
        in: query
        name: pageToken
        schema:
          type: string
        example: abc123token
      - description: 'Whether to include soft-deleted (ie: "trashed") Accounts in the results. Accounts can be inspected to determine whether they are deleted or not.'
        in: query
        name: showDeleted
        schema:
          type: boolean
        example: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaListAccountsResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.readonly
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.readonly
      tags:
      - accounts
      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/accounts:provisionAccountTicket:
    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: Requests a ticket for creating an account.
      operationId: analyticsadmin.accounts.provisionAccountTicket
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaProvisionAccountTicketRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaProvisionAccountTicketResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      tags:
      - accounts
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /v1beta/properties:
    get:
      description: 'Returns child Properties under the specified parent Account. Only "GA4" properties will be returned. Properties will be excluded if the caller does not have access. Soft-deleted (ie:
        "trashed") properties are excluded by default. Returns an empty list if no relevant properties are found.'
      operationId: analyticsadmin.properties.list
      parameters:
      - description: "Required. An expression for filtering the results of the request. Fields eligible for filtering are: `parent:`(The resource name of the parent account/property) or `ancestor:`(The
          resource name of the parent account) or `firebase_project:`(The id or number of the linked firebase project). Some examples of filters: ``` | Filter | Description | |-----------------------------|-------------------------------------------|
          | parent:accounts/123 | The account with account id: 123. | | parent:properties/123 | The property with property id: 123. | | ancestor:accounts/123 | The account with account id: 123. | | firebase_project:project-id
          | The firebase project with id: project-id. | | firebase_project:123 | The firebase project with number: 123. | ```"
        in: query
        name: filter
        schema:
          type: string
        example: example_value
      - description: The maximum number of resources to return. The service may return fewer than this value, even if there are additional pages. If unspecified, at most 50 resources will be returned.
          The maximum value is 200; (higher values will be coerced to the maximum)
        in: query
        name: pageSize
        schema:
          type: integer
        example: 10
      - description: A page token, received from a previous `ListProperties` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProperties` must
          match the call that provided the page token.
        in: query
        name: pageToken
        schema:
          type: string
        example: abc123token
      - description: 'Whether to include soft-deleted (ie: "trashed") Properties in the results. Properties can be inspected to determine whether they are deleted or not.'
        in: query
        name: showDeleted
        schema:
          type: boolean
        example: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaListPropertiesResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      - 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 "GA4" property with the specified location and attributes.
      operationId: analyticsadmin.properties.create
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaProperty"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaProperty"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /v1beta/{account}:searchChangeHistoryEvents:
    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: Searches through all changes to an account or its children given the specified set of filters.
      operationId: analyticsadmin.accounts.searchChangeHistoryEvents
      parameters:
      - description: 'Required. The account resource for which to return change history resources. Format: accounts/{account} Example: "accounts/100"'
        in: path
        name: account
        required: true
        schema:
          type: string
        example: example_value
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaSearchChangeHistoryEventsResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      tags:
      - accounts
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /v1beta/{entity}:runAccessReport:
    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 data access records. The report provides records of each time a user reads Google Analytics reporting data. Access records are retained for up to 2 
        years. Data Access Reports can be requested for a property. Reports may be requested for any property, but dimensions that aren't related to quota can only be requested on Google Analytics 360
        properties. This method is only available to Administrators. These data access records include GA4 UI Reporting, GA4 UI Explorations, GA4 Data API, and other products like Firebase & Admob 
        that can retrieve data from Google Analytics through a linkage. These records don't include property configuration changes like adding a stream or changing a property's time zone. For 
        configuration change history, see [searchChangeHistoryEvents](https://developers.google.com/analytics/devguides/config/admin/v1/rest/v1alpha/accounts/searchChangeHistoryEvents).
      operationId: analyticsadmin.properties.runAccessReport
      parameters:
      - description: The Data Access Report supports requesting at the property level or account level. If requested at the account level, Data Access Reports include all access for all properties 
          under that account. To request at the property level, entity should be for example 'properties/123' if "123" is your GA4 property ID. To request at the account level, entity should be for 
          example 'accounts/1234' if "1234" is your GA4 Account ID.
        in: path
        name: entity
        required: true
        schema:
          type: string
        example: example_value
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaRunAccessReportRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaRunAccessReportResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      - 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/{name}:
    delete:
      description: Deletes a GoogleAdsLink on a property
      operationId: analyticsadmin.properties.googleAdsLinks.delete
      parameters:
      - description: "Required. Example format: properties/1234/googleAdsLinks/5678"
        in: path
        name: name
        required: true
        schema:
          type: string
        example: Example Name
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GoogleProtobufEmpty"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    get:
      description: Lookup for a single "GA4" MeasurementProtocolSecret.
      operationId: analyticsadmin.properties.dataStreams.measurementProtocolSecrets.get
      parameters:
      - description: "Required. The name of the measurement protocol secret to lookup. Format: properties/{property}/dataStreams/{dataStream}/measurementProtocolSecrets/{measurementProtocolSecret}"
        in: path
        name: name
        required: true
        schema:
          type: string
        example: Example Name
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaMeasurementProtocolSecret"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      - 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"
    patch:
      description: Updates a GoogleAdsLink on a property
      operationId: analyticsadmin.properties.googleAdsLinks.patch
      parameters:
      - description: "Output only. Format: properties/{propertyId}/googleAdsLinks/{googleAdsLinkId} Note: googleAdsLinkId is not the Google Ads customer ID."
        in: path
        name: name
        required: true
        schema:
          type: string
        example: Example Name
      - description: Required. The list of fields to be updated. Field names must be in snake case (e.g., "field_to_update"). Omitted fields will not be updated. To replace the entire entity, use one 
          path with the string "*" to match all fields.
        in: query
        name: updateMask
        schema:
          type: string
        example: '2026-04-17'
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaGoogleAdsLink"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaGoogleAdsLink"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /v1beta/{name}:archive:
    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: Archives a CustomMetric on a property.
      operationId: analyticsadmin.properties.customMetrics.archive
      parameters:
      - description: "Required. The name of the CustomMetric to archive. Example format: properties/1234/customMetrics/5678"
        in: path
        name: name
        required: true
        schema:
          type: string
        example: Example Name
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaArchiveCustomMetricRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GoogleProtobufEmpty"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /v1beta/{parent}/conversionEvents:
    get:
      description: Returns a list of conversion events in the specified parent property. Returns an empty list if no conversion events are found.
      operationId: analyticsadmin.properties.conversionEvents.list
      parameters:
      - description: "Required. The resource name of the parent property. Example: 'properties/123'"
        in: path
        name: parent
        required: true
        schema:
          type: string
        example: example_value
      - description: The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200; (higher values will be coerced to the maximum)
        in: query
        name: pageSize
        schema:
          type: integer
        example: 10
      - description: A page token, received from a previous `ListConversionEvents` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to 
          `ListConversionEvents` 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/GoogleAnalyticsAdminV1betaListConversionEventsResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      - 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 a conversion event with the specified attributes.
      operationId: analyticsadmin.properties.conversionEvents.create
      parameters:
      - description: "Required. The resource name of the parent property where this conversion event will be created. Format: properties/123"
        in: path
        name: parent
        required: true
        schema:
          type: string
        example: example_value
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaConversionEvent"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaConversionEvent"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /v1beta/{parent}/customDimensions:
    get:
      description: Lists CustomDimensions on a property.
      operationId: analyticsadmin.properties.customDimensions.list
      parameters:
      - description: "Required. Example format: properties/1234"
        in: path
        name: parent
        required: true
        schema:
          type: string
        example: example_value
      - description: The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).
        in: query
        name: pageSize
        schema:
          type: integer
        example: 10
      - description: A page token, received from a previous `ListCustomDimensions` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to 
          `ListCustomDimensions` 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/GoogleAnalyticsAdminV1betaListCustomDimensionsResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      - 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 a CustomDimension.
      operationId: analyticsadmin.properties.customDimensions.create
      parameters:
      - description: "Required. Example format: properties/1234"
        in: path
        name: parent
        required: true
        schema:
          type: string
        example: example_value
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaCustomDimension"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaCustomDimension"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /v1beta/{parent}/customMetrics:
    get:
      description: Lists CustomMetrics on a property.
      operationId: analyticsadmin.properties.customMetrics.list
      parameters:
      - description: "Required. Example format: properties/1234"
        in: path
        name: parent
        required: true
        schema:
          type: string
        example: example_value
      - description: The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum).
        in: query
        name: pageSize
        schema:
          type: integer
        example: 10
      - description: A page token, received from a previous `ListCustomMetrics` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to 
          `ListCustomMetrics` 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/GoogleAnalyticsAdminV1betaListCustomMetricsResponse"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      - 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 a CustomMetric.
      operationId: analyticsadmin.properties.customMetrics.create
      parameters:
      - description: "Required. Example format: properties/1234"
        in: path
        name: parent
        required: true
        schema:
          type: string
        example: example_value
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaCustomMetric"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GoogleAnalyticsAdminV1betaCustomMetric"
          description: Successful response
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/analytics.edit
        Oauth2c:
        - https://www.googleapis.com/auth/analytics.edit
      tags:
      - properties
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /v1beta/{parent}/dataStreams:
    get:
      description: Lists DataStreams on a property.
      operationId: analyticsadmin.properties.dataStreams.list
      parameters:
      - description: "Required. Example format: properties/1234"
        in: path
        

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