iOS

iOS AccessibilityDeclarations API

The AccessibilityDeclarations API from iOS — 2 operation(s) for accessibilitydeclarations.

OpenAPI Specification

ios-accessibilitydeclarations-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: App Store Connect AccessibilityDeclarations 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: AccessibilityDeclarations
paths:
  /v1/accessibilityDeclarations:
    post:
      tags:
      - AccessibilityDeclarations
      operationId: accessibilityDeclarations_createInstance
      requestBody:
        description: AccessibilityDeclaration representation
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AccessibilityDeclarationCreateRequest'
        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 AccessibilityDeclaration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessibilityDeclarationResponse'
        '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 Accessibility Declarations
  /v1/accessibilityDeclarations/{id}:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - AccessibilityDeclarations
      operationId: accessibilityDeclarations_getInstance
      parameters:
      - name: fields[accessibilityDeclarations]
        in: query
        description: the fields to include for returned resources of type accessibilityDeclarations
        schema:
          type: array
          items:
            type: string
            enum:
            - deviceFamily
            - state
            - supportsAudioDescriptions
            - supportsCaptions
            - supportsDarkInterface
            - supportsDifferentiateWithoutColorAlone
            - supportsLargerText
            - supportsReducedMotion
            - supportsSufficientContrast
            - supportsVoiceControl
            - supportsVoiceover
        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 AccessibilityDeclaration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessibilityDeclarationResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: Get Accessibility Declarations
    patch:
      tags:
      - AccessibilityDeclarations
      operationId: accessibilityDeclarations_updateInstance
      requestBody:
        description: AccessibilityDeclaration representation
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AccessibilityDeclarationUpdateRequest'
        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 AccessibilityDeclaration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessibilityDeclarationResponse'
        '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 Accessibility Declarations
    delete:
      tags:
      - AccessibilityDeclarations
      operationId: accessibilityDeclarations_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 Accessibility Declarations
components:
  schemas:
    DocumentLinks:
      type: object
      properties:
        self:
          type: string
          format: uri-reference
      required:
      - self
    AccessibilityDeclaration:
      type: object
      title: AccessibilityDeclaration
      properties:
        type:
          type: string
          enum:
          - accessibilityDeclarations
        id:
          type: string
        attributes:
          type: object
          properties:
            deviceFamily:
              $ref: '#/components/schemas/DeviceFamily'
            state:
              type: string
              enum:
              - DRAFT
              - PUBLISHED
              - REPLACED
            supportsAudioDescriptions:
              type: boolean
            supportsCaptions:
              type: boolean
            supportsDarkInterface:
              type: boolean
            supportsDifferentiateWithoutColorAlone:
              type: boolean
            supportsLargerText:
              type: boolean
            supportsReducedMotion:
              type: boolean
            supportsSufficientContrast:
              type: boolean
            supportsVoiceControl:
              type: boolean
            supportsVoiceover:
              type: boolean
        links:
          $ref: '#/components/schemas/ResourceLinks'
      required:
      - id
      - type
    ResourceLinks:
      type: object
      properties:
        self:
          type: string
          format: uri-reference
    AccessibilityDeclarationUpdateRequest:
      type: object
      title: AccessibilityDeclarationUpdateRequest
      properties:
        data:
          type: object
          properties:
            type:
              type: string
              enum:
              - accessibilityDeclarations
            id:
              type: string
            attributes:
              type: object
              properties:
                publish:
                  type: boolean
                  nullable: true
                supportsAudioDescriptions:
                  type: boolean
                  nullable: true
                supportsCaptions:
                  type: boolean
                  nullable: true
                supportsDarkInterface:
                  type: boolean
                  nullable: true
                supportsDifferentiateWithoutColorAlone:
                  type: boolean
                  nullable: true
                supportsLargerText:
                  type: boolean
                  nullable: true
                supportsReducedMotion:
                  type: boolean
                  nullable: true
                supportsSufficientContrast:
                  type: boolean
                  nullable: true
                supportsVoiceControl:
                  type: boolean
                  nullable: true
                supportsVoiceover:
                  type: boolean
                  nullable: true
          required:
          - id
          - type
      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
    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
    AccessibilityDeclarationCreateRequest:
      type: object
      title: AccessibilityDeclarationCreateRequest
      properties:
        data:
          type: object
          properties:
            type:
              type: string
              enum:
              - accessibilityDeclarations
            attributes:
              type: object
              properties:
                deviceFamily:
                  $ref: '#/components/schemas/DeviceFamily'
                supportsAudioDescriptions:
                  type: boolean
                  nullable: true
                supportsCaptions:
                  type: boolean
                  nullable: true
                supportsDarkInterface:
                  type: boolean
                  nullable: true
                supportsDifferentiateWithoutColorAlone:
                  type: boolean
                  nullable: true
                supportsLargerText:
                  type: boolean
                  nullable: true
                supportsReducedMotion:
                  type: boolean
                  nullable: true
                supportsSufficientContrast:
                  type: boolean
                  nullable: true
                supportsVoiceControl:
                  type: boolean
                  nullable: true
                supportsVoiceover:
                  type: boolean
                  nullable: true
              required:
              - deviceFamily
            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
    ErrorSourcePointer:
      type: object
      title: JsonPointer
      properties:
        pointer:
          type: string
      required:
      - pointer
    DeviceFamily:
      type: string
      enum:
      - IPHONE
      - IPAD
      - APPLE_TV
      - APPLE_WATCH
      - MAC
      - VISION
    AccessibilityDeclarationResponse:
      type: object
      title: AccessibilityDeclarationResponse
      properties:
        data:
          $ref: '#/components/schemas/AccessibilityDeclaration'
        links:
          $ref: '#/components/schemas/DocumentLinks'
      required:
      - data
      - links
  securitySchemes:
    itc-bearer-token:
      type: http
      scheme: bearer
      bearerFormat: JWT