openapi: 3.0.1 info: title: App Store Connect AccessibilityDeclarations Webhooks 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: Webhooks paths: /v1/webhooks: post: tags: - Webhooks operationId: webhooks_createInstance requestBody: description: Webhook representation content: application/json: schema: $ref: '#/components/schemas/WebhookCreateRequest' 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 Webhook content: application/json: schema: $ref: '#/components/schemas/WebhookResponse' '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 Webhooks /v1/webhooks/{id}: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - Webhooks operationId: webhooks_getInstance parameters: - name: fields[webhooks] in: query description: the fields to include for returned resources of type webhooks schema: type: array items: type: string enum: - enabled - eventTypes - name - url - app - deliveries 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: include in: query description: comma-separated list of relationships to include schema: type: array items: type: string enum: - app style: form explode: false 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 Webhook content: application/json: schema: $ref: '#/components/schemas/WebhookResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: Get Webhooks patch: tags: - Webhooks operationId: webhooks_updateInstance requestBody: description: Webhook representation content: application/json: schema: $ref: '#/components/schemas/WebhookUpdateRequest' 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' '404': description: Not found error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '422': description: Unprocessable request entity error(s) content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '200': description: Single Webhook content: application/json: schema: $ref: '#/components/schemas/WebhookResponse' '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: Update Webhooks delete: tags: - Webhooks operationId: webhooks_deleteInstance 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' '204': description: Success (no content) '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: Delete Webhooks /v1/webhooks/{id}/relationships/deliveries: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - Webhooks operationId: webhooks_deliveries_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/WebhookDeliveriesLinkagesResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: List Related Webhooks / Deliveries /v1/webhooks/{id}/deliveries: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - Webhooks operationId: webhooks_deliveries_getToManyRelated parameters: - name: filter[deliveryState] in: query description: filter by attribute 'deliveryState' schema: type: array items: type: string enum: - SUCCEEDED - FAILED - PENDING style: form explode: false - name: filter[createdDateGreaterThanOrEqualTo] in: query description: filter by createdDateGreaterThanOrEqualTo schema: type: array items: type: string style: form explode: false - name: filter[createdDateLessThan] in: query description: filter by createdDateLessThan schema: type: array items: type: string style: form explode: false - name: fields[webhookDeliveries] in: query description: the fields to include for returned resources of type webhookDeliveries schema: type: array items: type: string enum: - createdDate - deliveryState - errorMessage - redelivery - sentDate - request - response - event style: form explode: false - name: fields[webhookEvents] in: query description: the fields to include for returned resources of type webhookEvents schema: type: array items: type: string enum: - eventType - payload - ping - createdDate 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: - event 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 WebhookDeliveries content: application/json: schema: $ref: '#/components/schemas/WebhookDeliveriesResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: List Related Webhooks / Deliveries components: schemas: PagedDocumentLinks: type: object properties: self: type: string format: uri-reference first: type: string format: uri-reference next: type: string format: uri-reference required: - self Webhook: type: object title: Webhook properties: type: type: string enum: - webhooks id: type: string attributes: type: object properties: enabled: type: boolean eventTypes: type: array items: $ref: '#/components/schemas/WebhookEventType' name: type: string url: type: string format: uri relationships: type: object properties: app: type: object properties: data: type: object properties: type: type: string enum: - apps id: type: string required: - id - type deliveries: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ResourceLinks' required: - id - type ResourceLinks: type: object properties: self: type: string format: uri-reference 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 WebhookResponse: type: object title: WebhookResponse properties: data: $ref: '#/components/schemas/Webhook' included: type: array items: $ref: '#/components/schemas/App' links: $ref: '#/components/schemas/DocumentLinks' required: - data - links WebhookCreateRequest: type: object title: WebhookCreateRequest properties: data: type: object properties: type: type: string enum: - webhooks attributes: type: object properties: enabled: type: boolean eventTypes: type: array items: $ref: '#/components/schemas/WebhookEventType' name: type: string secret: type: string url: type: string format: uri required: - name - secret - eventTypes - url - enabled 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 required: - app required: - relationships - attributes - type required: - data WebhookDeliveriesLinkagesResponse: type: object properties: data: type: array items: type: object properties: type: type: string enum: - webhookDeliveries id: type: string required: - id - type links: $ref: '#/components/schemas/PagedDocumentLinks' meta: $ref: '#/components/schemas/PagingInformation' required: - data - links WebhookEvent: type: object title: WebhookEvent properties: type: type: string enum: - webhookEvents id: type: string attributes: type: object properties: eventType: $ref: '#/components/schemas/WebhookEventType' payload: type: string ping: type: boolean createdDate: type: string format: date-time links: $ref: '#/components/schemas/ResourceLinks' required: - id - type DocumentLinks: type: object properties: self: type: string format: uri-reference required: - self 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 WebhookDeliveriesResponse: type: object title: WebhookDeliveriesResponse properties: data: type: array items: $ref: '#/components/schemas/WebhookDelivery' included: type: array items: $ref: '#/components/schemas/WebhookEvent' links: $ref: '#/components/schemas/PagedDocumentLinks' meta: $ref: '#/components/schemas/PagingInformation' required: - data - links App: type: object title: App properties: type: type: string enum: - apps id: type: string attributes: type: object properties: accessibilityUrl: type: string format: uri name: type: string bundleId: type: string sku: type: string primaryLocale: type: string isOrEverWasMadeForKids: type: boolean subscriptionStatusUrl: type: string format: uri subscriptionStatusUrlVersion: $ref: '#/components/schemas/SubscriptionStatusUrlVersion' subscriptionStatusUrlForSandbox: type: string format: uri subscriptionStatusUrlVersionForSandbox: $ref: '#/components/schemas/SubscriptionStatusUrlVersion' contentRightsDeclaration: type: string enum: - DOES_NOT_USE_THIRD_PARTY_CONTENT - USES_THIRD_PARTY_CONTENT streamlinedPurchasingEnabled: type: boolean relationships: type: object properties: accessibilityDeclarations: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' appEncryptionDeclarations: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - appEncryptionDeclarations id: type: string required: - id - type appStoreIcon: type: object properties: data: type: object properties: type: type: string enum: - buildIcons id: type: string required: - id - type ciProduct: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' data: type: object properties: type: type: string enum: - ciProducts id: type: string required: - id - type betaTesters: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' betaGroups: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - betaGroups id: type: string required: - id - type appStoreVersions: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - appStoreVersions id: type: string required: - id - type appTags: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' preReleaseVersions: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - preReleaseVersions id: type: string required: - id - type betaAppLocalizations: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - betaAppLocalizations id: type: string required: - id - type builds: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - builds id: type: string required: - id - type betaLicenseAgreement: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' data: type: object properties: type: type: string enum: - betaLicenseAgreements id: type: string required: - id - type betaAppReviewDetail: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' data: type: object properties: type: type: string enum: - betaAppReviewDetails id: type: string required: - id - type appInfos: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - appInfos id: type: string required: - id - type appClips: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - appClips id: type: string required: - id - type appPricePoints: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' endUserLicenseAgreement: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' data: type: object properties: type: type: string enum: - endUserLicenseAgreements id: type: string required: - id - type appPriceSchedule: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' appAvailabilityV2: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' inAppPurchases: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - inAppPurchases id: type: string required: - id - type deprecated: true subscriptionGroups: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - subscriptionGroups id: type: string required: - id - type gameCenterEnabledVersions: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - gameCenterEnabledVersions id: type: string required: - id - type perfPowerMetrics: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' appCustomProductPages: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - appCustomProductPages id: type: string required: - id - type inAppPurchasesV2: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - inAppPurchases id: type: string required: - id - type promotedPurchases: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - promotedPurchases id: type: string required: - id - type appEvents: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - appEvents id: type: string required: - id - type reviewSubmissions: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - reviewSubmissions id: type: string required: - id - type subscriptionGracePeriod: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' data: type: object properties: type: type: string enum: - subscriptionGracePeriods id: type: string required: - id - type customerReviews: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' customerReviewSummarizations: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' gameCenterDetail: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' data: type: object properties: type: type: string enum: - gameCenterDetails id: type: string required: - id - type appStoreVersionExperimentsV2: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - appStoreVersionExperiments id: type: string required: - id - type alternativeDistributionKey: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' analyticsReportRequests: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' marketplaceSearchDetail: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' buildUploads: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' backgroundAssets: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' betaFeedbackScreenshotSubmissions: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' betaFeedbackCrashSubmissions: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' searchKeywords: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' webhooks: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' androidToIosAppMappingDetails: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - androidToIosAppMappingDetails id: type: string required: - id - type links: $ref: '#/components/schemas/ResourceLinks' required: - id - type RelationshipLinks: type: object properties: self: type: string format: uri-reference related: type: string format: uri-reference SubscriptionStatusUrlVersion: type: string enum: - V1 - V2 ErrorSourcePointer: type: object title: JsonPointer properties: pointer: type: string required: - pointer PagingInformation: type: object properties: paging: type: object properties: total: type: integer limit: type: integer nextCursor: type: string required: - limit required: - paging WebhookEventType: type: string enum: - ALTERNATIVE_DISTRIBUTION_PACKAGE_AVAILABLE_UPDATED - ALTERNATIVE_DISTRIBUTION_PACKAGE_VERSION_CREATED - ALTERNATIVE_DISTRIBUTION_TERRITORY_AVAILABILITY_UPDATED - APP_STORE_VERSION_APP_VERSION_STATE_UPDATED - BACKGROUND_ASSET_VERSION_APP_STORE_RELEASE_STATE_UPDATED - BACKGROUND_ASSET_VERSION_EXTERNAL_BETA_RELEASE_STATE_UPDATED - BACKGROUND_ASSET_VERSION_INTERNAL_BETA_RELEASE_CREATED - BACKGROUND_ASSET_VERSION_STATE_UPDATED - BETA_FEEDBACK_CRASH_SUBMISSION_CREATED - BETA_FEEDBACK_SCREENSHOT_SUBMISSION_CREATED - BUILD_BETA_DETAIL_EXTERNAL_BUILD_STATE_UPDATED - BUILD_UPLOAD_STATE_UPDATED WebhookDelivery: type: object title: WebhookDelivery properties: type: type: string enum: - webhookDeliveries id: type: string attributes: type: object properties: createdDate: type: string format: date-time deliveryState: type: string enum: - SUCCEEDED - FAILED - PENDING errorMessage: type: string redelivery: type: boolean sentDate: type: string format: date-time request: type: object properties: url: type: string format: uri response: type: object properties: httpStatusCode: type: integer body: type: string relationships: type: object properties: event: type: object properties: data: type: object properties: type: type: string enum: - webhookEvents id: type: string required: - id - type links: $ref: '#/components/schemas/ResourceLinks' required: - id - type WebhookUpdateRequest: type: object title: WebhookUpdateRequest properties: data: type: object properties: type: type: string enum: - webhooks id: type: string attributes: type: object properties: enabled: type: boolean nullable: true eventTypes: type: array items: $ref: '#/components/schemas/WebhookEventType' nullable: true name: type: string nullable: true secret: type: string nullable: true url: type: string format: uri nullable: true required: - id - type required: - data securitySchemes: itc-bearer-token: type: http scheme: bearer bearerFormat: JWT