iOS

iOS AppClips API

The AppClips API from iOS — 5 operation(s) for appclips.

OpenAPI Specification

ios-appclips-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: App Store Connect AccessibilityDeclarations AppClips 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: AppClips
paths:
  /v1/appClips/{id}:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - AppClips
      operationId: appClips_getInstance
      parameters:
      - name: fields[appClips]
        in: query
        description: the fields to include for returned resources of type appClips
        schema:
          type: array
          items:
            type: string
            enum:
            - bundleId
            - app
            - appClipDefaultExperiences
            - appClipAdvancedExperiences
        style: form
        explode: false
        required: false
      - name: fields[apps]
        in: query
        description: the fields to include for returned resources of type apps
        schema:
          type: array
          items:
            type: string
            enum:
            - accessibilityUrl
            - name
            - bundleId
            - sku
            - primaryLocale
            - isOrEverWasMadeForKids
            - subscriptionStatusUrl
            - subscriptionStatusUrlVersion
            - subscriptionStatusUrlForSandbox
            - subscriptionStatusUrlVersionForSandbox
            - contentRightsDeclaration
            - streamlinedPurchasingEnabled
            - accessibilityDeclarations
            - appEncryptionDeclarations
            - appStoreIcon
            - ciProduct
            - betaTesters
            - betaGroups
            - appStoreVersions
            - appTags
            - preReleaseVersions
            - betaAppLocalizations
            - builds
            - betaLicenseAgreement
            - betaAppReviewDetail
            - appInfos
            - appClips
            - appPricePoints
            - endUserLicenseAgreement
            - appPriceSchedule
            - appAvailabilityV2
            - inAppPurchases
            - subscriptionGroups
            - gameCenterEnabledVersions
            - perfPowerMetrics
            - appCustomProductPages
            - inAppPurchasesV2
            - promotedPurchases
            - appEvents
            - reviewSubmissions
            - subscriptionGracePeriod
            - customerReviews
            - customerReviewSummarizations
            - gameCenterDetail
            - appStoreVersionExperimentsV2
            - alternativeDistributionKey
            - analyticsReportRequests
            - marketplaceSearchDetail
            - buildUploads
            - backgroundAssets
            - betaFeedbackScreenshotSubmissions
            - betaFeedbackCrashSubmissions
            - searchKeywords
            - webhooks
            - androidToIosAppMappingDetails
        style: form
        explode: false
        required: false
      - name: fields[appClipDefaultExperiences]
        in: query
        description: the fields to include for returned resources of type appClipDefaultExperiences
        schema:
          type: array
          items:
            type: string
            enum:
            - action
            - appClip
            - releaseWithAppStoreVersion
            - appClipDefaultExperienceLocalizations
            - appClipAppStoreReviewDetail
        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:
            - app
            - appClipDefaultExperiences
        style: form
        explode: false
        required: false
      - name: limit[appClipDefaultExperiences]
        in: query
        description: maximum number of related appClipDefaultExperiences 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 AppClip
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppClipResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: Get App Clips
  /v1/appClips/{id}/relationships/appClipAdvancedExperiences:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - AppClips
      operationId: appClips_appClipAdvancedExperiences_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/AppClipAppClipAdvancedExperiencesLinkagesResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: List Related App Clips / App Clip Advanced Experiences
  /v1/appClips/{id}/appClipAdvancedExperiences:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - AppClips
      operationId: appClips_appClipAdvancedExperiences_getToManyRelated
      parameters:
      - name: filter[status]
        in: query
        description: filter by attribute 'status'
        schema:
          type: array
          items:
            type: string
            enum:
            - RECEIVED
            - DEACTIVATED
            - APP_TRANSFER_IN_PROGRESS
        style: form
        explode: false
      - name: filter[placeStatus]
        in: query
        description: filter by attribute 'placeStatus'
        schema:
          type: array
          items:
            type: string
            enum:
            - PENDING
            - MATCHED
            - NO_MATCH
        style: form
        explode: false
      - name: filter[action]
        in: query
        description: filter by attribute 'action'
        schema:
          type: array
          items:
            type: string
            enum:
            - OPEN
            - VIEW
            - PLAY
        style: form
        explode: false
      - name: fields[appClipAdvancedExperiences]
        in: query
        description: the fields to include for returned resources of type appClipAdvancedExperiences
        schema:
          type: array
          items:
            type: string
            enum:
            - link
            - version
            - status
            - action
            - isPoweredBy
            - place
            - placeStatus
            - businessCategory
            - defaultLanguage
            - appClip
            - headerImage
            - localizations
        style: form
        explode: false
      - name: fields[appClips]
        in: query
        description: the fields to include for returned resources of type appClips
        schema:
          type: array
          items:
            type: string
            enum:
            - bundleId
            - app
            - appClipDefaultExperiences
            - appClipAdvancedExperiences
        style: form
        explode: false
      - name: fields[appClipAdvancedExperienceImages]
        in: query
        description: the fields to include for returned resources of type appClipAdvancedExperienceImages
        schema:
          type: array
          items:
            type: string
            enum:
            - fileSize
            - fileName
            - sourceFileChecksum
            - imageAsset
            - uploadOperations
            - assetDeliveryState
        style: form
        explode: false
      - name: fields[appClipAdvancedExperienceLocalizations]
        in: query
        description: the fields to include for returned resources of type appClipAdvancedExperienceLocalizations
        schema:
          type: array
          items:
            type: string
            enum:
            - language
            - title
            - subtitle
        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:
            - appClip
            - headerImage
            - localizations
        style: form
        explode: false
      - name: limit[localizations]
        in: query
        description: maximum number of related localizations returned (when they are included)
        schema:
          type: integer
          maximum: 50
        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 AppClipAdvancedExperiences
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppClipAdvancedExperiencesResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: List Related App Clips / App Clip Advanced Experiences
  /v1/appClips/{id}/relationships/appClipDefaultExperiences:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - AppClips
      operationId: appClips_appClipDefaultExperiences_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/AppClipAppClipDefaultExperiencesLinkagesResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: List Related App Clips / App Clip Default Experiences
  /v1/appClips/{id}/appClipDefaultExperiences:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - AppClips
      operationId: appClips_appClipDefaultExperiences_getToManyRelated
      parameters:
      - name: exists[releaseWithAppStoreVersion]
        in: query
        description: filter by existence or non-existence of related 'releaseWithAppStoreVersion'
        schema:
          type: boolean
        style: form
        explode: false
      - name: fields[appClipDefaultExperiences]
        in: query
        description: the fields to include for returned resources of type appClipDefaultExperiences
        schema:
          type: array
          items:
            type: string
            enum:
            - action
            - appClip
            - releaseWithAppStoreVersion
            - appClipDefaultExperienceLocalizations
            - appClipAppStoreReviewDetail
        style: form
        explode: false
      - name: fields[appClips]
        in: query
        description: the fields to include for returned resources of type appClips
        schema:
          type: array
          items:
            type: string
            enum:
            - bundleId
            - app
            - appClipDefaultExperiences
            - appClipAdvancedExperiences
        style: form
        explode: false
      - name: fields[appStoreVersions]
        in: query
        description: the fields to include for returned resources of type appStoreVersions
        schema:
          type: array
          items:
            type: string
            enum:
            - platform
            - versionString
            - appStoreState
            - appVersionState
            - copyright
            - reviewType
            - releaseType
            - earliestReleaseDate
            - usesIdfa
            - downloadable
            - createdDate
            - app
            - appStoreVersionLocalizations
            - build
            - appStoreVersionPhasedRelease
            - gameCenterAppVersion
            - routingAppCoverage
            - appStoreReviewDetail
            - appStoreVersionSubmission
            - appClipDefaultExperience
            - appStoreVersionExperiments
            - appStoreVersionExperimentsV2
            - customerReviews
            - alternativeDistributionPackage
        style: form
        explode: false
      - name: fields[appClipDefaultExperienceLocalizations]
        in: query
        description: the fields to include for returned resources of type appClipDefaultExperienceLocalizations
        schema:
          type: array
          items:
            type: string
            enum:
            - locale
            - subtitle
            - appClipDefaultExperience
            - appClipHeaderImage
        style: form
        explode: false
      - name: fields[appClipAppStoreReviewDetails]
        in: query
        description: the fields to include for returned resources of type appClipAppStoreReviewDetails
        schema:
          type: array
          items:
            type: string
            enum:
            - invocationUrls
            - appClipDefaultExperience
        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:
            - appClip
            - releaseWithAppStoreVersion
            - appClipDefaultExperienceLocalizations
            - appClipAppStoreReviewDetail
        style: form
        explode: false
      - name: limit[appClipDefaultExperienceLocalizations]
        in: query
        description: maximum number of related appClipDefaultExperienceLocalizations returned (when they are included)
        schema:
          type: integer
          maximum: 50
        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 AppClipDefaultExperiences
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppClipDefaultExperiencesResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: List Related App Clips / App Clip Default Experiences
components:
  schemas:
    ImageAsset:
      type: object
      properties:
        templateUrl:
          type: string
        width:
          type: integer
        height:
          type: integer
    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
    AppClipAdvancedExperienceLocalization:
      type: object
      title: AppClipAdvancedExperienceLocalization
      properties:
        type:
          type: string
          enum:
          - appClipAdvancedExperienceLocalizations
        id:
          type: string
        attributes:
          type: object
          properties:
            language:
              $ref: '#/components/schemas/AppClipAdvancedExperienceLanguage'
            title:
              type: string
            subtitle:
              type: string
        links:
          $ref: '#/components/schemas/ResourceLinks'
      required:
      - id
      - type
    AppClip:
      type: object
      title: AppClip
      properties:
        type:
          type: string
          enum:
          - appClips
        id:
          type: string
        attributes:
          type: object
          properties:
            bundleId:
              type: string
        relationships:
          type: object
          properties:
            app:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                      - apps
                    id:
                      type: string
                  required:
                  - id
                  - type
            appClipDefaultExperiences:
              type: object
              properties:
                links:
                  $ref: '#/components/schemas/RelationshipLinks'
                meta:
                  $ref: '#/components/schemas/PagingInformation'
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                        enum:
                        - appClipDefaultExperiences
                      id:
                        type: string
                    required:
                    - id
                    - type
            appClipAdvancedExperiences:
              type: object
              properties:
                links:
                  $ref: '#/components/schemas/RelationshipLinks'
        links:
          $ref: '#/components/schemas/ResourceLinks'
      required:
      - id
      - type
    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
    AppClipAppClipDefaultExperiencesLinkagesResponse:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                - appClipDefaultExperiences
              id:
                type: string
            required:
            - id
            - type
        links:
          $ref: '#/components/schemas/PagedDocumentLinks'
        meta:
          $ref: '#/components/schemas/PagingInformation'
      required:
      - data
      - links
    AppVersionState:
      type: string
      enum:
      - ACCEPTED
      - DEVELOPER_REJECTED
      - IN_REVIEW
      - INVALID_BINARY
      - METADATA_REJECTED
      - PENDING_APPLE_RELEASE
      - PENDING_DEVELOPER_RELEASE
      - PREPARE_FOR_SUBMISSION
      - PROCESSING_FOR_DISTRIBUTION
      - READY_FOR_DISTRIBUTION
      - READY_FOR_REVIEW
      - REJECTED
      - REPLACED_WITH_NEW_VERSION
      - WAITING_FOR_EXPORT_COMPLIANCE
      - WAITING_FOR_REVIEW
    AppClipAction:
      type: string
      enum:
      - OPEN
      - VIEW
      - PLAY
    AppMediaAssetState:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/AppMediaStateError'
        warnings:
          type: array
          items:
            $ref: '#/components/schemas/AppMediaStateError'
        state:
          type: string
          enum:
          - AWAITING_UPLOAD
          - UPLOAD_COMPLETE
          - COMPLETE
          - FAILED
    Platform:
      type: string
      enum:
      - IOS
      - MAC_OS
      - TV_OS
      - VISION_OS
    DocumentLinks:
      type: object
      properties:
        self:
          type: string
          format: uri-reference
      required:
      - self
    UploadOperation:
      type: object
      properties:
        method:
          type: string
        url:
          type: string
        length:
          type: integer
        offset:
          type: integer
        requestHeaders:
          type: array
          items:
            $ref: '#/components/schemas/HttpHeader'
    AppClipAdvancedExperience:
      type: object
      title: AppClipAdvancedExperience
      properties:
        type:
          type: string
          enum:
          - appClipAdvancedExperiences
        id:
          type: string
        attributes:
          type: object
          properties:
            link:
              type: string
              format: uri
            version:
              type: integer
            status:
              type: string
              enum:
              - RECEIVED
              - DEACTIVATED
              - APP_TRANSFER_IN_PROGRESS
            action:
              $ref: '#/components/schemas/AppClipAction'
            isPoweredBy:
              type: boolean
            place:
              type: object
              properties:
                placeId:
                  type: string
                names:
                  type: array
                  items:
                    type: string
                mainAddress:
                  type: object
                  properties:
                    fullAddress:
                      type: string
                    structuredAddress:
                      type: object
                      properties:
                        streetAddress:
                          type: array
                          items:
                            type: string
                        floor:
                          type: string
                        neighborhood:
                          type: string
                        locality:
                          type: string
                        stateProvince:
                          type: string
                        postalCode:
                          type: string
                        countryCode:
                          type: string
                displayPoint:
                  type: object
                  properties:
                    coordinates:
                      type: object
                      properties:
                        latitude:
                          type: number
                        longitude:
                          type: number
                    source:
                      type: string
                      enum:
                      - CALCULATED
                      - MANUALLY_PLACED
                mapAction:
                  type: string
                  enum:
                  - BUY_TICKETS
                  - VIEW_AVAILABILITY
                  - VIEW_PRICING
                  - HOTEL_BOOK_ROOM
                  - PARKING_RESERVE_PARKING
                  - RESTAURANT_JOIN_WAITLIST
                  - RESTAURANT_ORDER_DELIVERY
                  - RESTAURANT_ORDER_FOOD
                  - RESTAURANT_ORDER_TAKEOUT
                  - RESTAURANT_RESERVATION
                  - SCHEDULE_APPOINTMENT
                  - RESTAURANT_VIEW_MENU
                  - THEATER_NOW_PLAYING
                  - AIRLINE_BOOK_TRAVEL
                  - AIRLINE_CHECK_IN
                  - AIRLINE_FLIGHT_STATUS
                  - APPLY
                  - BOOK
                  - BOOK_ACTIVITIES
                  - BOOK_RIDES
                  - BOOK_TEETIMES
                  - BOOK_TOURS
                  - CAREERS
                  - CHARGE_EV
                  - COUPONS
                  - DONATE
                  - EVENTS
                  - EVENTS_SHOWS
                  - EVENTS_SPORTS
                  - GIFT_CARD
                  - HOTEL_AMENITIES
                  - JOIN
                  - PARKING_AVAILABLE
                  - RESTAURANT_PICKUP
                  - RETAIL_SERVICE_QUOTE
                  - RETAIL_STORE_DELIVERY
                  - RETAIL_STORE_PICKUP
                  - RETAIL_STORE_SHOP
                  - SERVICES
                  - SUPPORT
                  - PAY_TO_PARK
                relationship:
                  type: string
                  enum:
                  - OWNER
                  - AUTHORIZED
                  - OTHER
                phoneNumber:
                  type: object
                  properties:
                    number:
                      type: string
                    type:
                      type: string
                      enum:
                      - FAX
                      - LANDLINE
                      - MOBILE
                      - TOLLFREE
                    intent:
                      type: string
                homePage:
                  type: string
                categories:
                  type: array
                  items:
                    type: string
            placeStatus:
              type: string
              enum:
              - PENDING
              - MATCHED
              - NO_MATCH
            businessCategory:
              type: string
              enum:
              - AUTOMOTIVE
              - BEAUTY
              - BIKES
              - BOOKS
              - CASINO
              - EDUCATION
              - EDUCATION_JAPAN
              - ENTERTAINMENT
              - EV_CHARGER
              - FINANCIAL_USD
              - FINANCIAL_CNY
              - FINANCIAL_GBP
              - FINANCIAL_JPY
              - FINANCIAL_EUR
              - FITNESS
              - FOOD_AND_DRINK
              - GAS
              - GROCERY
              - HEALTH_AND_MEDICAL
              - HOTEL_AND_TRAVEL
              - MUSIC
              - PARKING
              - PET_SERVICES
              - PROFESSIONAL_SERVICES
              - SHOPPING
              - TICKETING
              - TRANSIT
            defaultLanguage:
              $ref: '#/components/schemas/AppClipAdvancedExperienceLanguage'
        relationships:
          type: object
          properties:
            appClip:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                      - appClips
                    id:
                      type: string
                  required:
                  - id
                  - type
            headerImage:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                      - appClipAdvancedExperienceImages
                    id:
                      type: string
                  required:
                  - id
                  - type
            localizations:
              type: object
              properties:
                meta:
          

# --- truncated at 32 KB (73 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/ios/refs/heads/main/openapi/ios-appclips-api-openapi.yml