openapi: 3.0.1 info: title: App Store Connect AccessibilityDeclarations GameCenterChallengeLocalizations 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: GameCenterChallengeLocalizations paths: /v1/gameCenterChallengeLocalizations: post: tags: - GameCenterChallengeLocalizations operationId: gameCenterChallengeLocalizations_createInstance requestBody: description: GameCenterChallengeLocalization representation content: application/json: schema: $ref: '#/components/schemas/GameCenterChallengeLocalizationCreateRequest' 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 GameCenterChallengeLocalization content: application/json: schema: $ref: '#/components/schemas/GameCenterChallengeLocalizationResponse' '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 Game Center Challenge Localizations /v1/gameCenterChallengeLocalizations/{id}: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - GameCenterChallengeLocalizations operationId: gameCenterChallengeLocalizations_getInstance parameters: - name: fields[gameCenterChallengeLocalizations] in: query description: the fields to include for returned resources of type gameCenterChallengeLocalizations schema: type: array items: type: string enum: - locale - name - description - version - image style: form explode: false required: false - name: fields[gameCenterChallengeVersions] in: query description: the fields to include for returned resources of type gameCenterChallengeVersions schema: type: array items: type: string enum: - version - state - challenge - localizations - releases - defaultImage style: form explode: false required: false - name: fields[gameCenterChallengeImages] in: query description: the fields to include for returned resources of type gameCenterChallengeImages schema: type: array items: type: string enum: - fileSize - fileName - imageAsset - uploadOperations - assetDeliveryState 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: - version - image 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 GameCenterChallengeLocalization content: application/json: schema: $ref: '#/components/schemas/GameCenterChallengeLocalizationResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: Get Game Center Challenge Localizations patch: tags: - GameCenterChallengeLocalizations operationId: gameCenterChallengeLocalizations_updateInstance requestBody: description: GameCenterChallengeLocalization representation content: application/json: schema: $ref: '#/components/schemas/GameCenterChallengeLocalizationUpdateRequest' 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 GameCenterChallengeLocalization content: application/json: schema: $ref: '#/components/schemas/GameCenterChallengeLocalizationResponse' '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 Game Center Challenge Localizations delete: tags: - GameCenterChallengeLocalizations operationId: gameCenterChallengeLocalizations_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 Game Center Challenge Localizations /v1/gameCenterChallengeLocalizations/{id}/relationships/image: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - GameCenterChallengeLocalizations operationId: gameCenterChallengeLocalizations_image_getToOneRelationship parameters: [] 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: Related linkage content: application/json: schema: $ref: '#/components/schemas/GameCenterChallengeLocalizationImageLinkageResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: Get Related Game Center Challenge Localizations / Image /v1/gameCenterChallengeLocalizations/{id}/image: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - GameCenterChallengeLocalizations operationId: gameCenterChallengeLocalizations_image_getToOneRelated parameters: - name: fields[gameCenterChallengeImages] in: query description: the fields to include for returned resources of type gameCenterChallengeImages schema: type: array items: type: string enum: - fileSize - fileName - imageAsset - uploadOperations - assetDeliveryState 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: Single GameCenterChallengeImage content: application/json: schema: $ref: '#/components/schemas/GameCenterChallengeImageResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: Get Related Game Center Challenge Localizations / Image components: schemas: ImageAsset: type: object properties: templateUrl: type: string width: type: integer height: type: integer 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 GameCenterChallengeLocalizationImageLinkageResponse: type: object properties: data: type: object properties: type: type: string enum: - gameCenterChallengeImages id: type: string required: - id - type links: $ref: '#/components/schemas/DocumentLinks' required: - data - links GameCenterVersionState: type: string enum: - PREPARE_FOR_SUBMISSION - READY_FOR_REVIEW - WAITING_FOR_REVIEW - IN_REVIEW - DEVELOPER_REJECTED - REJECTED - ACCEPTED - PENDING_RELEASE - LIVE - REPLACED_WITH_NEW_VERSION 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 GameCenterChallengeImage: type: object title: GameCenterChallengeImage properties: type: type: string enum: - gameCenterChallengeImages id: type: string attributes: type: object properties: fileSize: type: integer fileName: type: string imageAsset: $ref: '#/components/schemas/ImageAsset' uploadOperations: type: array items: $ref: '#/components/schemas/UploadOperation' assetDeliveryState: $ref: '#/components/schemas/AppMediaAssetState' links: $ref: '#/components/schemas/ResourceLinks' required: - id - type DocumentLinks: type: object properties: self: type: string format: uri-reference required: - self GameCenterChallengeLocalizationResponse: type: object title: GameCenterChallengeLocalizationResponse properties: data: $ref: '#/components/schemas/GameCenterChallengeLocalization' included: type: array items: oneOf: - $ref: '#/components/schemas/GameCenterChallengeImage' - $ref: '#/components/schemas/GameCenterChallengeVersion' discriminator: propertyName: type mapping: gameCenterChallengeVersions: '#/components/schemas/GameCenterChallengeVersion' gameCenterChallengeImages: '#/components/schemas/GameCenterChallengeImage' links: $ref: '#/components/schemas/DocumentLinks' required: - data - links UploadOperation: type: object properties: method: type: string url: type: string length: type: integer offset: type: integer requestHeaders: type: array items: $ref: '#/components/schemas/HttpHeader' 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 GameCenterChallengeLocalizationCreateRequest: type: object title: GameCenterChallengeLocalizationCreateRequest properties: data: type: object properties: type: type: string enum: - gameCenterChallengeLocalizations attributes: type: object properties: locale: type: string name: type: string description: type: string nullable: true required: - name - locale relationships: type: object properties: version: type: object properties: data: type: object properties: type: type: string enum: - gameCenterChallengeVersions id: type: string required: - id - type required: - data required: - version required: - relationships - attributes - type required: - data RelationshipLinks: type: object properties: self: type: string format: uri-reference related: type: string format: uri-reference GameCenterChallengeLocalization: type: object title: GameCenterChallengeLocalization properties: type: type: string enum: - gameCenterChallengeLocalizations id: type: string attributes: type: object properties: locale: type: string name: type: string description: type: string relationships: type: object properties: version: type: object properties: data: type: object properties: type: type: string enum: - gameCenterChallengeVersions id: type: string required: - id - type image: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' data: type: object properties: type: type: string enum: - gameCenterChallengeImages 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 GameCenterChallengeVersion: type: object title: GameCenterChallengeVersion properties: type: type: string enum: - gameCenterChallengeVersions id: type: string attributes: type: object properties: version: type: integer state: $ref: '#/components/schemas/GameCenterVersionState' relationships: type: object properties: challenge: type: object properties: data: type: object properties: type: type: string enum: - gameCenterChallenges id: type: string required: - id - type localizations: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - gameCenterChallengeLocalizations id: type: string required: - id - type releases: type: object properties: meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - gameCenterChallengeVersionReleases id: type: string required: - id - type defaultImage: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' data: type: object properties: type: type: string enum: - gameCenterChallengeImages id: type: string required: - id - type 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 GameCenterChallengeLocalizationUpdateRequest: type: object title: GameCenterChallengeLocalizationUpdateRequest properties: data: type: object properties: type: type: string enum: - gameCenterChallengeLocalizations id: type: string attributes: type: object properties: name: type: string nullable: true description: type: string nullable: true required: - id - type required: - data GameCenterChallengeImageResponse: type: object title: GameCenterChallengeImageResponse properties: data: $ref: '#/components/schemas/GameCenterChallengeImage' links: $ref: '#/components/schemas/DocumentLinks' required: - data - links AppMediaStateError: type: object properties: code: type: string description: type: string HttpHeader: type: object properties: name: type: string value: type: string securitySchemes: itc-bearer-token: type: http scheme: bearer bearerFormat: JWT