Google AdMob Apps API

The apps API from Google AdMob — 2 operation(s) for apps.

Operations 3

GET /v1/accounts/{accountsId}/apps List the apps under the specified AdMob account. #
POST /v1beta/accounts/{accountsId}/apps Creates an app under the specified AdMob account #
GET /v1beta/accounts/{accountsId}/apps List the apps under the specified AdMob account. #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/google-admob-apps-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

google-admob-apps-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Google Admob Apps API
  contact:
    name: Google
    url: https://developers.google.com/admob/api/
  license:
    name: Google APIs Terms of Service
    url: https://developers.google.com/terms
  termsOfService: https://developers.google.com/terms
  x-discovery-revision: '20260731'
  x-refined-note:
  - x-discovery-source differs across the merged source definitions and was not carried
  version: '1.0'
  description: 'Operations tagged apps across 2 of this provider''s published API definitions: google-admob-api-v1-openapi.yml, google-admob-api-v1beta-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://admob.googleapis.com
  description: Google AdMob API
security:
- GoogleOAuth2:
  - https://www.googleapis.com/auth/admob.readonly
  - https://www.googleapis.com/auth/admob.report
tags:
- name: apps
paths:
  /v1/accounts/{accountsId}/apps:
    get:
      operationId: accounts_apps_list
      summary: List the apps under the specified AdMob account.
      description: List the apps under the specified AdMob account.
      tags:
      - apps
      x-resource-name-parameter:
        parent:
          pattern: ^accounts/[^/]+$
          description: 'Required. Resource name of the account to list apps for. Example: accounts/pub-9876543210987654'
      parameters:
      - name: pageSize
        in: query
        required: false
        schema:
          type: integer
          format: int32
        description: The maximum number of apps to return. If unspecified or 0, at most 10,000 apps will be returned. The maximum value is 20,000; values above 20,000 will be coerced to 20,000.
      - name: pageToken
        in: query
        required: false
        schema:
          type: string
        description: The value returned by the last `ListAppsResponse`; indicates that this is a continuation of a prior `ListApps` call, and that the system should return the next page of data.
      - name: accountsId
        in: path
        required: true
        schema:
          type: string
        description: Path segment of the resource name.
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListAppsResponse'
        '400':
          description: INVALID_ARGUMENT — malformed request, unknown publisher id, or incompatible report metrics/dimensions.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleRpcStatus'
        '401':
          description: UNAUTHENTICATED — missing or invalid OAuth 2.0 access token.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleRpcStatus'
        '403':
          description: PERMISSION_DENIED — AdMob API not enabled on the project, or the effective user lacks access to the resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleRpcStatus'
        '429':
          description: RESOURCE_EXHAUSTED — per-project quota exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleRpcStatus'
        '500':
          description: INTERNAL — unexpected server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleRpcStatus'
      security:
      - GoogleOAuth2:
        - https://www.googleapis.com/auth/admob.readonly
    servers:
    - url: https://admob.googleapis.com
      description: Google AdMob API
  /v1beta/accounts/{accountsId}/apps:
    post:
      operationId: accounts_apps_create
      summary: Creates an app under the specified AdMob account
      description: Creates an app under the specified AdMob account. This method has limited access. If you see a 403 permission denied error, please reach out to your account manager for access.
      tags:
      - apps
      x-resource-name-parameter:
        parent:
          pattern: ^accounts/[^/]+$
          description: 'Required. Resource name of the account for which the app is being created. Example: accounts/pub-9876543210987654'
      parameters:
      - name: accountsId
        in: path
        required: true
        schema:
          type: string
        description: Path segment of the resource name.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/App'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/App'
        '400':
          description: INVALID_ARGUMENT — malformed request, unknown publisher id, or incompatible report metrics/dimensions.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleRpcStatus'
        '401':
          description: UNAUTHENTICATED — missing or invalid OAuth 2.0 access token.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleRpcStatus'
        '403':
          description: PERMISSION_DENIED — AdMob API not enabled on the project, or the effective user lacks access to the resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleRpcStatus'
        '429':
          description: RESOURCE_EXHAUSTED — per-project quota exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleRpcStatus'
        '500':
          description: INTERNAL — unexpected server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleRpcStatus'
    get:
      operationId: accounts_apps_list
      summary: List the apps under the specified AdMob account.
      description: List the apps under the specified AdMob account.
      tags:
      - apps
      x-resource-name-parameter:
        parent:
          pattern: ^accounts/[^/]+$
          description: 'Required. Resource name of the account to list apps for. Example: accounts/pub-9876543210987654'
      parameters:
      - name: pageSize
        in: query
        required: false
        schema:
          type: integer
          format: int32
        description: The maximum number of apps to return. If unspecified or 0, at most 10,000 apps will be returned. The maximum value is 20,000; values above 20,000 will be coerced to 20,000.
      - name: pageToken
        in: query
        required: false
        schema:
          type: string
        description: The value returned by the last `ListAppsResponse`; indicates that this is a continuation of a prior `ListApps` call, and that the system should return the next page of data.
      - name: accountsId
        in: path
        required: true
        schema:
          type: string
        description: Path segment of the resource name.
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListAppsResponse'
        '400':
          description: INVALID_ARGUMENT — malformed request, unknown publisher id, or incompatible report metrics/dimensions.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleRpcStatus'
        '401':
          description: UNAUTHENTICATED — missing or invalid OAuth 2.0 access token.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleRpcStatus'
        '403':
          description: PERMISSION_DENIED — AdMob API not enabled on the project, or the effective user lacks access to the resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleRpcStatus'
        '429':
          description: RESOURCE_EXHAUSTED — per-project quota exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleRpcStatus'
        '500':
          description: INTERNAL — unexpected server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleRpcStatus'
      security:
      - GoogleOAuth2:
        - https://www.googleapis.com/auth/admob.readonly
    servers:
    - url: https://admob.googleapis.com
      description: Google AdMob API
components:
  schemas:
    App:
      type: object
      description: 'Describes an AdMob app for a specific platform (For example: Android or iOS).'
      properties:
        appApprovalState:
          type: string
          description: Output only. The approval state for the app. The field is read-only.
          enum:
          - APP_APPROVAL_STATE_UNSPECIFIED
          - ACTION_REQUIRED
          - IN_REVIEW
          - APPROVED
          x-enum-descriptions:
          - Default value for an unset field. Do not use.
          - The app requires additional user action to be approved. Please refer to https://support.google.com/admob/answer/10564477 for details and next steps.
          - The app is pending review.
          - The app is approved and can serve ads.
          readOnly: true
        appId:
          type: string
          description: 'The externally visible ID of the app which can be used to integrate with AdMob. This is a read only property. Example: ca-app-pub-9876543210987654~0123456789'
        linkedAppInfo:
          $ref: '#/components/schemas/AppLinkedAppInfo'
        platform:
          type: string
          description: Describes the platform of the app. Limited to "IOS" and "ANDROID".
        name:
          type: string
          description: 'Resource name for this app. Format is accounts/{publisher_id}/apps/{app_id_fragment} Example: accounts/pub-9876543210987654/apps/0123456789'
        manualAppInfo:
          $ref: '#/components/schemas/AppManualAppInfo'
    ListAppsResponse:
      type: object
      description: Response for the apps list request.
      properties:
        apps:
          type: array
          description: The resulting apps for the requested account.
          items:
            $ref: '#/components/schemas/App'
        nextPageToken:
          type: string
          description: If not empty, indicates that there may be more apps for the request; this value should be passed in a new `ListAppsRequest`.
    AppManualAppInfo:
      type: object
      description: 'Information provided for manual apps which are not linked to an application store (Example: Google Play, App Store).'
      properties:
        displayName:
          type: string
          description: The display name of the app as shown in the AdMob UI, which is provided by the user. The maximum length allowed is 80 characters.
    GoogleRpcStatus:
      type: object
      description: Canonical Google API error envelope (google.rpc.Status), returned inside an `error` wrapper.
      properties:
        code:
          type: integer
          description: The status code, which should be an enum value of google.rpc.Code.
        message:
          type: string
          description: A developer-facing error message in English.
        status:
          type: string
          description: The canonical error reason, e.g. INVALID_ARGUMENT, RESOURCE_EXHAUSTED.
        details:
          type: array
          items:
            type: object
          description: A list of messages that carry the error details.
      x-source: Derived from Google's documented AdMob error responses at https://developers.google.com/admob/api/v1/errors; not present in the Discovery Document.
    AppLinkedAppInfo:
      type: object
      description: Information from the app store if the app is linked to an app store.
      properties:
        appStoreId:
          type: string
          description: 'The app store ID of the app; present if and only if the app is linked to an app store. If the app is added to the Google Play store, it will be the application ID of the app. For example: "com.example.myapp". See https://developer.android.com/studio/build/application-id. If the app is added to the Apple App Store, it will be app store ID. For example "105169111". Note that setting the app store id is considered an irreversible action. Once an app is linked, it cannot be unlinked.'
        displayName:
          type: string
          description: Output only. Display name of the app as it appears in the app store. This is an output-only field, and may be empty if the app cannot be found in the store.
          readOnly: true
    AppLinkedAppInfo_2:
      type: object
      description: Information from the app store if the app is linked to an app store.
      properties:
        androidAppStores:
          type: array
          description: Optional. The app store information for published Android apps. This field is only used for apps on the Android platform and will be ignored if the PLATFORM is set to iOS. The default value is the Google Play App store. This field can be updated after app is created. If the app is not published, this field will not be included in the response.
          items:
            type: string
            enum:
            - ANDROID_APP_STORE_UNSPECIFIED
            - GOOGLE_PLAY_APP_STORE
            - AMAZON_APP_STORE
            - OPPO_APP_STORE
            - SAMSUNG_APP_STORE
            - VIVO_APP_STORE
            - XIAOMI_APP_STORE
            x-enum-descriptions:
            - Default value for an unset field. Do not use.
            - Google Play Store.
            - Amazon Appstore.
            - Oppo App Market.
            - Samsung Galaxy Store.
            - VIVO App Store.
            - Xiaomi GetApps.
        appStoreId:
          type: string
          description: 'The app store ID of the app; present if and only if the app is linked to an app store. If the app is added to the Google Play store, it will be the application ID of the app. For example: "com.example.myapp". See https://developer.android.com/studio/build/application-id. If the app is added to the Apple App Store, it will be app store ID. For example "105169111". Note that setting the app store id is considered an irreversible action. Once an app is linked, it cannot be unlinked.'
        displayName:
          type: string
          description: Output only. Display name of the app as it appears in the app store. This is an output-only field, and may be empty if the app cannot be found in the store.
          readOnly: true
  securitySchemes:
    GoogleOAuth2:
      type: oauth2
      description: Google OAuth 2.0 user authorization. AdMob does not support service accounts.
      flows:
        authorizationCode:
          authorizationUrl: https://accounts.google.com/o/oauth2/v2/auth
          tokenUrl: https://oauth2.googleapis.com/token
          scopes:
            https://www.googleapis.com/auth/admob.readonly: See your AdMob data
            https://www.googleapis.com/auth/admob.report: See your AdMob data
externalDocs:
  description: AdMob API documentation
  url: https://developers.google.com/admob/api/
x-refined-from:
- google-admob-api-v1-openapi.yml
- google-admob-api-v1beta-openapi.yml