openapi: 3.0.1 info: title: App Store Connect AccessibilityDeclarations BetaRecruitmentCriteria 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: BetaRecruitmentCriteria paths: /v1/betaRecruitmentCriteria: post: tags: - BetaRecruitmentCriteria operationId: betaRecruitmentCriteria_createInstance requestBody: description: BetaRecruitmentCriterion representation content: application/json: schema: $ref: '#/components/schemas/BetaRecruitmentCriterionCreateRequest' 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 BetaRecruitmentCriterion content: application/json: schema: $ref: '#/components/schemas/BetaRecruitmentCriterionResponse' '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 Beta Recruitment Criteria /v1/betaRecruitmentCriteria/{id}: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true patch: tags: - BetaRecruitmentCriteria operationId: betaRecruitmentCriteria_updateInstance requestBody: description: BetaRecruitmentCriterion representation content: application/json: schema: $ref: '#/components/schemas/BetaRecruitmentCriterionUpdateRequest' 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 BetaRecruitmentCriterion content: application/json: schema: $ref: '#/components/schemas/BetaRecruitmentCriterionResponse' '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 Beta Recruitment Criteria delete: tags: - BetaRecruitmentCriteria operationId: betaRecruitmentCriteria_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 Beta Recruitment Criteria components: schemas: DocumentLinks: type: object properties: self: type: string format: uri-reference required: - self BetaRecruitmentCriterion: type: object title: BetaRecruitmentCriterion properties: type: type: string enum: - betaRecruitmentCriteria id: type: string attributes: type: object properties: lastModifiedDate: type: string format: date-time deviceFamilyOsVersionFilters: type: array items: $ref: '#/components/schemas/DeviceFamilyOsVersionFilter' 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 DeviceFamilyOsVersionFilter: type: object properties: deviceFamily: $ref: '#/components/schemas/DeviceFamily' minimumOsInclusive: type: string maximumOsInclusive: type: string BetaRecruitmentCriterionUpdateRequest: type: object title: BetaRecruitmentCriterionUpdateRequest properties: data: type: object properties: type: type: string enum: - betaRecruitmentCriteria id: type: string attributes: type: object properties: deviceFamilyOsVersionFilters: type: array items: $ref: '#/components/schemas/DeviceFamilyOsVersionFilter' nullable: true required: - id - type required: - data 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 ErrorSourcePointer: type: object title: JsonPointer properties: pointer: type: string required: - pointer BetaRecruitmentCriterionCreateRequest: type: object title: BetaRecruitmentCriterionCreateRequest properties: data: type: object properties: type: type: string enum: - betaRecruitmentCriteria attributes: type: object properties: deviceFamilyOsVersionFilters: type: array items: $ref: '#/components/schemas/DeviceFamilyOsVersionFilter' required: - deviceFamilyOsVersionFilters relationships: type: object properties: betaGroup: type: object properties: data: type: object properties: type: type: string enum: - betaGroups id: type: string required: - id - type required: - data required: - betaGroup required: - relationships - attributes - type required: - data BetaRecruitmentCriterionResponse: type: object title: BetaRecruitmentCriterionResponse properties: data: $ref: '#/components/schemas/BetaRecruitmentCriterion' links: $ref: '#/components/schemas/DocumentLinks' required: - data - links DeviceFamily: type: string enum: - IPHONE - IPAD - APPLE_TV - APPLE_WATCH - MAC - VISION securitySchemes: itc-bearer-token: type: http scheme: bearer bearerFormat: JWT