Configuring accessibility declarations for your app
Manage accessibility metadata for your apps per device family.
Overview
You use the App Store Connect API to create and configure accessibility declarations for your app. After you create an accessibility declaration, you can update the list of supported features, and also remove the accessibility declaration. Accessibility declarations enable you to show the accessibility modalities and the specific features that your app supports. Once you create an accessibility declaration, your App Store page shows the accessibility details for your app. You make accessibility declarations for each app and these apply to a device family, such as IPHONE, IPAD, or VISION, to learn more, see DeviceFamily.
Use this term list and table to understand what details to include in your app’s accessibility declaration.
Read accessibility feature details
Here’s what each accessibility feature provides:
supportsVoiceoverNavigate and explore the app using gestures, braille, and speech output.
supportsVoiceControlNavigate and interact with the app using your voice to tap, swipe, type, and more.
supportsLargerTextIncrease the text size in the app to 200 percent or more.
supportsSufficientContrastIncrease or adjust the contrast between text or iconography and background.
supportsDarkInterfaceApply a dark color scheme to the screens, menus, and controls to reduce eye strain.
supportsDifferentiateWithoutColorAloneUse shapes or text, in addition to or instead of color, to distinguish key information.
supportsReducedMotionModify or reduce certain types of animation that may cause motion sickness or discomfort.
supportsCaptionsDisplay the dialog and relevant sounds of video or audio-only content with time-synchronized text.
supportsAudioDescriptionsHear audio descriptions of video content in a clip, show, or movie with time-synchronized narration.
Read accessibility feature device family compatibility
This table shows the compatibility for each accessibility feature and platform:
Accessibility Feature | Attribute Name | iOS/iPadOS | tvOS | macOS | visionOS | watchOS |
|---|---|---|---|---|---|---|
VoiceOver |
| ✔ | ✔ | ✔ | ✔ | ✔ |
Voice Control |
| ✔ | ✔ | ✔ | ||
Larger Text |
| ✔ | ✔ | ✔ | ||
Sufficient Contrast |
| ✔ | ✔ | ✔ | ✔ | ✔ |
Dark Interface |
| ✔ | ✔ | ✔ | ✔ | ✔ |
Differentiate Without Color Alone |
| ✔ | ✔ | ✔ | ✔ | ✔ |
Reduced Motion |
| ✔ | ✔ | ✔ | ✔ | ✔ |
Captions |
| ✔ | ✔ | ✔ | ✔ | ✔ |
Audio Descriptions |
| ✔ | ✔ | ✔ | ✔ | ✔ |
Create an accessibility declarations for your app
After you determine the accessibility features your app supoorts, create an accessibility declaration, by using Create an accessibility declaration with a payload.
Here’s an example payload:
{
"data": {
"type": "accessibilityDeclarations",
"attributes": {
"deviceFamily": "IPHONE",
"supportsAudioDescriptions": true,
"supportsCaptions": true,
"supportsDarkInterface": true,
"supportsDifferentiateWithoutColorAlone": true,
"supportsLargerText": true,
"supportsReducedMotion": true,
"supportsSufficientContrast": true,
"supportsVoiceControl": false,
"supportsVoiceover": false
},
"relationships": {
"app": {
"data": {
"type": "apps",
"id": "{appID}"
}
}
}
}
}
The response includes a unique identifier.
Each device family your app supports can have their own accessibility declaration. To learn more, see DeviceFamily.
Read the accessibility declarations for your app
You can use Read accessibility declaration information with the unique identifier from the POST call you made, to look up the details of your current accessibility declaration. You can also get that unqiue identifier by using List all accessibility declarations for an app.
Modify the accessibility declarations for your app
If you need to update your accessibility declaration, use Modify an accessibility declaration. You can supply any number of the available attributes with a corresponding Boolean value when modifying an accessibility declaration when it is in DRAFT state.
Publishing the accessibility declarations for your app
When you are ready to show your accessibility declarations on your app’s page in the App Store, use Modify an accessibility declaration with a payload like this:
{
"data": {
"type": "accessibilityDeclarations",
"id": "<id>",
"attributes": {
"publish": true
}
}
}Remove an accessibility declaration for your app
If you need to remove an accessibility declaration for an app, use Delete an accessibility declaration. You can only remove accessibility declarations that are in the DRAFT state. This deletes the declaration details. To create a new accessibility declaration, use Create an accessibility declaration.