iOS

iOS AppAvailabilities API

The AppAvailabilities API from iOS — 4 operation(s) for appavailabilities.

OpenAPI Specification

ios-appavailabilities-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: App Store Connect AccessibilityDeclarations AppAvailabilities API
  version: 4.3.1
  x-platforms:
    app_store_connect_api: App Store Connect API
  description: The App Store Connect API is the standards-based REST API Apple provides to automate tasks across App Store Connect, Xcode, and Certificates, Identifiers & Profiles. It covers apps, builds, TestFlight, in-app purchases, subscriptions, Game Center, Xcode Cloud, provisioning, pricing and availability, and the full reporting surface (analytics, sales and trends, financial reports, power and performance). This spec is the official OpenAPI 3.0 document published by Apple at https://developer.apple.com/app-store-connect/api/ — mirrored here unmodified except for title-cased operation summaries.
servers:
- url: https://api.appstoreconnect.apple.com/
security:
- itc-bearer-token: []
tags:
- name: AppAvailabilities
paths:
  /v2/appAvailabilities:
    post:
      tags:
      - AppAvailabilities
      operationId: appAvailabilitiesV2_createInstance
      requestBody:
        description: AppAvailability representation
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AppAvailabilityV2CreateRequest'
        required: true
      responses:
        '400':
          description: Parameter error(s)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized error(s)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: Unprocessable request entity error(s)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '201':
          description: Single AppAvailability
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppAvailabilityV2Response'
        '409':
          description: Request entity error(s)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: Create App Availabilities V2
  /v2/appAvailabilities/{id}:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - AppAvailabilities
      operationId: appAvailabilitiesV2_getInstance
      parameters:
      - name: fields[appAvailabilities]
        in: query
        description: the fields to include for returned resources of type appAvailabilities
        schema:
          type: array
          items:
            type: string
            enum:
            - availableInNewTerritories
            - territoryAvailabilities
        style: form
        explode: false
        required: false
      - name: fields[territoryAvailabilities]
        in: query
        description: the fields to include for returned resources of type territoryAvailabilities
        schema:
          type: array
          items:
            type: string
            enum:
            - available
            - releaseDate
            - preOrderEnabled
            - preOrderPublishDate
            - contentStatuses
            - territory
        style: form
        explode: false
        required: false
      - name: include
        in: query
        description: comma-separated list of relationships to include
        schema:
          type: array
          items:
            type: string
            enum:
            - territoryAvailabilities
        style: form
        explode: false
        required: false
      - name: limit[territoryAvailabilities]
        in: query
        description: maximum number of related territoryAvailabilities returned (when they are included)
        schema:
          type: integer
          maximum: 50
        style: form
        required: false
      responses:
        '400':
          description: Parameter error(s)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized error(s)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not found error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '200':
          description: Single AppAvailability
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppAvailabilityV2Response'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: Get App Availabilities V2
  /v2/appAvailabilities/{id}/relationships/territoryAvailabilities:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - AppAvailabilities
      operationId: appAvailabilitiesV2_territoryAvailabilities_getToManyRelationship
      parameters:
      - name: limit
        in: query
        description: maximum resources per page
        schema:
          type: integer
          maximum: 200
        style: form
      responses:
        '400':
          description: Parameter error(s)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized error(s)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not found error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '200':
          description: List of related linkages
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppAvailabilityV2TerritoryAvailabilitiesLinkagesResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: List Related App Availabilities V2 / Territory Availabilities
  /v2/appAvailabilities/{id}/territoryAvailabilities:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - AppAvailabilities
      operationId: appAvailabilitiesV2_territoryAvailabilities_getToManyRelated
      parameters:
      - name: fields[territoryAvailabilities]
        in: query
        description: the fields to include for returned resources of type territoryAvailabilities
        schema:
          type: array
          items:
            type: string
            enum:
            - available
            - releaseDate
            - preOrderEnabled
            - preOrderPublishDate
            - contentStatuses
            - territory
        style: form
        explode: false
      - name: fields[territories]
        in: query
        description: the fields to include for returned resources of type territories
        schema:
          type: array
          items:
            type: string
            enum:
            - currency
        style: form
        explode: false
      - name: limit
        in: query
        description: maximum resources per page
        schema:
          type: integer
          maximum: 200
        style: form
      - name: include
        in: query
        description: comma-separated list of relationships to include
        schema:
          type: array
          items:
            type: string
            enum:
            - territory
        style: form
        explode: false
      responses:
        '400':
          description: Parameter error(s)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized error(s)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not found error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '200':
          description: List of TerritoryAvailabilities
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TerritoryAvailabilitiesResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: List Related App Availabilities V2 / Territory Availabilities
components:
  schemas:
    DocumentLinks:
      type: object
      properties:
        self:
          type: string
          format: uri-reference
      required:
      - self
    RelationshipLinks:
      type: object
      properties:
        self:
          type: string
          format: uri-reference
        related:
          type: string
          format: uri-reference
    PagedDocumentLinks:
      type: object
      properties:
        self:
          type: string
          format: uri-reference
        first:
          type: string
          format: uri-reference
        next:
          type: string
          format: uri-reference
      required:
      - self
    ResourceLinks:
      type: object
      properties:
        self:
          type: string
          format: uri-reference
    AppAvailabilityV2CreateRequest:
      type: object
      title: AppAvailabilityV2CreateRequest
      properties:
        data:
          type: object
          properties:
            type:
              type: string
              enum:
              - appAvailabilities
            attributes:
              type: object
              properties:
                availableInNewTerritories:
                  type: boolean
              required:
              - availableInNewTerritories
            relationships:
              type: object
              properties:
                app:
                  type: object
                  properties:
                    data:
                      type: object
                      properties:
                        type:
                          type: string
                          enum:
                          - apps
                        id:
                          type: string
                      required:
                      - id
                      - type
                  required:
                  - data
                territoryAvailabilities:
                  type: object
                  properties:
                    data:
                      type: array
                      items:
                        type: object
                        properties:
                          type:
                            type: string
                            enum:
                            - territoryAvailabilities
                          id:
                            type: string
                        required:
                        - id
                        - type
                  required:
                  - data
              required:
              - app
              - territoryAvailabilities
          required:
          - relationships
          - attributes
          - type
        included:
          type: array
          items:
            $ref: '#/components/schemas/TerritoryAvailabilityInlineCreate'
      required:
      - data
    ErrorSourceParameter:
      type: object
      title: Parameter
      properties:
        parameter:
          type: string
      required:
      - parameter
    ErrorLinks:
      type: object
      properties:
        about:
          type: string
          format: uri-reference
        associated:
          oneOf:
          - type: string
            format: uri-reference
          - type: object
            properties:
              href:
                type: string
                format: uri-reference
              meta:
                type: object
                properties:
                  source:
                    type: string
    AppAvailabilityV2TerritoryAvailabilitiesLinkagesResponse:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                - territoryAvailabilities
              id:
                type: string
            required:
            - id
            - type
        links:
          $ref: '#/components/schemas/PagedDocumentLinks'
        meta:
          $ref: '#/components/schemas/PagingInformation'
      required:
      - data
      - links
    TerritoryAvailabilitiesResponse:
      type: object
      title: TerritoryAvailabilitiesResponse
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/TerritoryAvailability'
        included:
          type: array
          items:
            $ref: '#/components/schemas/Territory'
        links:
          $ref: '#/components/schemas/PagedDocumentLinks'
        meta:
          $ref: '#/components/schemas/PagingInformation'
      required:
      - data
      - links
    TerritoryAvailabilityInlineCreate:
      type: object
      properties:
        type:
          type: string
          enum:
          - territoryAvailabilities
        id:
          type: string
        attributes:
          type: object
          properties:
            available:
              type: boolean
              nullable: true
            releaseDate:
              type: string
              format: date
              nullable: true
            preOrderEnabled:
              type: boolean
              nullable: true
        relationships:
          type: object
          properties:
            territory:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                      - territories
                    id:
                      type: string
                  required:
                  - id
                  - type
      required:
      - type
    ErrorResponse:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              status:
                type: string
              code:
                type: string
              title:
                type: string
              detail:
                type: string
              source:
                oneOf:
                - $ref: '#/components/schemas/ErrorSourcePointer'
                - $ref: '#/components/schemas/ErrorSourceParameter'
              links:
                $ref: '#/components/schemas/ErrorLinks'
              meta:
                type: object
                additionalProperties: {}
            required:
            - code
            - detail
            - status
            - title
    AppAvailabilityV2:
      type: object
      title: AppAvailabilityV2
      properties:
        type:
          type: string
          enum:
          - appAvailabilities
        id:
          type: string
        attributes:
          type: object
          properties:
            availableInNewTerritories:
              type: boolean
        relationships:
          type: object
          properties:
            territoryAvailabilities:
              type: object
              properties:
                links:
                  $ref: '#/components/schemas/RelationshipLinks'
                meta:
                  $ref: '#/components/schemas/PagingInformation'
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                        enum:
                        - territoryAvailabilities
                      id:
                        type: string
                    required:
                    - id
                    - type
        links:
          $ref: '#/components/schemas/ResourceLinks'
      required:
      - id
      - type
    ErrorSourcePointer:
      type: object
      title: JsonPointer
      properties:
        pointer:
          type: string
      required:
      - pointer
    AppAvailabilityV2Response:
      type: object
      title: AppAvailabilityV2Response
      properties:
        data:
          $ref: '#/components/schemas/AppAvailabilityV2'
        included:
          type: array
          items:
            $ref: '#/components/schemas/TerritoryAvailability'
        links:
          $ref: '#/components/schemas/DocumentLinks'
      required:
      - data
      - links
    TerritoryAvailability:
      type: object
      title: TerritoryAvailability
      properties:
        type:
          type: string
          enum:
          - territoryAvailabilities
        id:
          type: string
        attributes:
          type: object
          properties:
            available:
              type: boolean
            releaseDate:
              type: string
              format: date
            preOrderEnabled:
              type: boolean
            preOrderPublishDate:
              type: string
              format: date
            contentStatuses:
              type: array
              items:
                type: string
                enum:
                - AVAILABLE
                - AVAILABLE_FOR_PREORDER_ON_DATE
                - PROCESSING_TO_NOT_AVAILABLE
                - PROCESSING_TO_AVAILABLE
                - PROCESSING_TO_PRE_ORDER
                - AVAILABLE_FOR_SALE_UNRELEASED_APP
                - PREORDER_ON_UNRELEASED_APP
                - AVAILABLE_FOR_PREORDER
                - MISSING_RATING
                - CANNOT_SELL_RESTRICTED_RATING
                - BRAZIL_REQUIRED_TAX_ID
                - BRAZIL_GAMBLING_NOT_VERIFIED
                - MISSING_GRN
                - UNVERIFIED_GRN
                - ICP_NUMBER_INVALID
                - ICP_NUMBER_MISSING
                - TRADER_STATUS_NOT_PROVIDED
                - TRADER_STATUS_VERIFICATION_FAILED
                - TRADER_STATUS_VERIFICATION_STATUS_MISSING
                - CANNOT_SELL_SEVENTEEN_PLUS_APPS
                - CANNOT_SELL_SEXUALLY_EXPLICIT
                - CANNOT_SELL_NON_IOS_GAMES
                - CANNOT_SELL_SEVENTEEN_PLUS_GAMES
                - CANNOT_SELL_CASINO
                - CANNOT_SELL_CASINO_WITHOUT_GRAC
                - CANNOT_SELL_CASINO_WITHOUT_AGE_VERIFICATION
                - CANNOT_SELL_ADULT_ONLY
                - CANNOT_SELL_GAMBLING_CONTESTS
                - CANNOT_SELL_GAMBLING
                - CANNOT_SELL_CONTESTS
                - CANNOT_SELL_NINETEEN_PLUS_WITHOUT_GRAC
                - CANNOT_SELL
                - CANNOT_SELL_FREQUENT_INTENSE_GAMBLING
                - CANNOT_SELL_FREQUENT_INTENSE_ALCOHOL_TOBACCO_DRUGS
                - CANNOT_SELL_FREQUENT_INTENSE_VIOLENCE
                - CANNOT_SELL_FREQUENT_INTENSE_SEXUAL_CONTENT_NUDITY
                - CANNOT_SELL_INFREQUENT_MILD_ALCOHOL_TOBACCO_DRUGS
                - CANNOT_SELL_INFREQUENT_MILD_SEXUAL_CONTENT_NUDITY
                - CANNOT_SELL_FREQUENT_INTENSE
                - CANNOT_SELL_FREQUENT_INTENSE_WITHOUT_GRAC
                - CANNOT_SELL_FREQUENT_GAMBLING
                - CANNOT_SELL_FREQUENT_ALCOHOL_TOBACCO_DRUGS
                - CANNOT_SELL_FREQUENT_VIOLENCE
                - CANNOT_SELL_FREQUENT_SEXUAL_CONTENT_NUDITY
                - CANNOT_SELL_INFREQUENT_ALCOHOL_TOBACCO_DRUGS
                - CANNOT_SELL_INFREQUENT_SEXUAL_CONTENT_NUDITY
                - CANNOT_SELL_FREQUENT
                - CANNOT_SELL_FREQUENT_WITHOUT_GRAC
        relationships:
          type: object
          properties:
            territory:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                      - territories
                    id:
                      type: string
                  required:
                  - id
                  - type
        links:
          $ref: '#/components/schemas/ResourceLinks'
      required:
      - id
      - type
    Territory:
      type: object
      title: Territory
      properties:
        type:
          type: string
          enum:
          - territories
        id:
          type: string
        attributes:
          type: object
          properties:
            currency:
              type: string
        links:
          $ref: '#/components/schemas/ResourceLinks'
      required:
      - id
      - type
    PagingInformation:
      type: object
      properties:
        paging:
          type: object
          properties:
            total:
              type: integer
            limit:
              type: integer
            nextCursor:
              type: string
          required:
          - limit
      required:
      - paging
  securitySchemes:
    itc-bearer-token:
      type: http
      scheme: bearer
      bearerFormat: JWT