openapi: 3.0.1 info: title: App Store Connect AccessibilityDeclarations SubscriptionOfferCodes 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: SubscriptionOfferCodes paths: /v1/subscriptionOfferCodes: post: tags: - SubscriptionOfferCodes operationId: subscriptionOfferCodes_createInstance requestBody: description: SubscriptionOfferCode representation content: application/json: schema: $ref: '#/components/schemas/SubscriptionOfferCodeCreateRequest' 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 SubscriptionOfferCode content: application/json: schema: $ref: '#/components/schemas/SubscriptionOfferCodeResponse' '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 Subscription Offer Codes /v1/subscriptionOfferCodes/{id}: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - SubscriptionOfferCodes operationId: subscriptionOfferCodes_getInstance parameters: - name: fields[subscriptionOfferCodes] in: query description: the fields to include for returned resources of type subscriptionOfferCodes schema: type: array items: type: string enum: - name - customerEligibilities - offerEligibility - duration - offerMode - numberOfPeriods - totalNumberOfCodes - productionCodeCount - sandboxCodeCount - active - autoRenewEnabled - subscription - oneTimeUseCodes - customCodes - prices style: form explode: false required: false - name: fields[subscriptions] in: query description: the fields to include for returned resources of type subscriptions schema: type: array items: type: string enum: - name - productId - familySharable - state - subscriptionPeriod - reviewNote - groupLevel - subscriptionLocalizations - appStoreReviewScreenshot - group - introductoryOffers - promotionalOffers - offerCodes - prices - pricePoints - promotedPurchase - subscriptionAvailability - winBackOffers - images style: form explode: false required: false - name: fields[subscriptionOfferCodeOneTimeUseCodes] in: query description: the fields to include for returned resources of type subscriptionOfferCodeOneTimeUseCodes schema: type: array items: type: string enum: - numberOfCodes - createdDate - expirationDate - active - environment - offerCode - values style: form explode: false required: false - name: fields[subscriptionOfferCodeCustomCodes] in: query description: the fields to include for returned resources of type subscriptionOfferCodeCustomCodes schema: type: array items: type: string enum: - customCode - numberOfCodes - createdDate - expirationDate - active - offerCode style: form explode: false required: false - name: fields[subscriptionOfferCodePrices] in: query description: the fields to include for returned resources of type subscriptionOfferCodePrices schema: type: array items: type: string enum: - territory - subscriptionPricePoint 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: - subscription - oneTimeUseCodes - customCodes - prices style: form explode: false required: false - name: limit[customCodes] in: query description: maximum number of related customCodes returned (when they are included) schema: type: integer maximum: 50 style: form required: false - name: limit[oneTimeUseCodes] in: query description: maximum number of related oneTimeUseCodes returned (when they are included) schema: type: integer maximum: 50 style: form required: false - name: limit[prices] in: query description: maximum number of related prices returned (when they are included) schema: type: integer maximum: 50 style: form 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 SubscriptionOfferCode content: application/json: schema: $ref: '#/components/schemas/SubscriptionOfferCodeResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: Get Subscription Offer Codes patch: tags: - SubscriptionOfferCodes operationId: subscriptionOfferCodes_updateInstance requestBody: description: SubscriptionOfferCode representation content: application/json: schema: $ref: '#/components/schemas/SubscriptionOfferCodeUpdateRequest' 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 SubscriptionOfferCode content: application/json: schema: $ref: '#/components/schemas/SubscriptionOfferCodeResponse' '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 Subscription Offer Codes /v1/subscriptionOfferCodes/{id}/relationships/customCodes: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - SubscriptionOfferCodes operationId: subscriptionOfferCodes_customCodes_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/SubscriptionOfferCodeCustomCodesLinkagesResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: List Related Subscription Offer Codes / Custom Codes /v1/subscriptionOfferCodes/{id}/customCodes: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - SubscriptionOfferCodes operationId: subscriptionOfferCodes_customCodes_getToManyRelated parameters: - name: fields[subscriptionOfferCodeCustomCodes] in: query description: the fields to include for returned resources of type subscriptionOfferCodeCustomCodes schema: type: array items: type: string enum: - customCode - numberOfCodes - createdDate - expirationDate - active - offerCode style: form explode: false - name: fields[subscriptionOfferCodes] in: query description: the fields to include for returned resources of type subscriptionOfferCodes schema: type: array items: type: string enum: - name - customerEligibilities - offerEligibility - duration - offerMode - numberOfPeriods - totalNumberOfCodes - productionCodeCount - sandboxCodeCount - active - autoRenewEnabled - subscription - oneTimeUseCodes - customCodes - prices 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: - offerCode 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 SubscriptionOfferCodeCustomCodes content: application/json: schema: $ref: '#/components/schemas/SubscriptionOfferCodeCustomCodesResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: List Related Subscription Offer Codes / Custom Codes /v1/subscriptionOfferCodes/{id}/relationships/oneTimeUseCodes: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - SubscriptionOfferCodes operationId: subscriptionOfferCodes_oneTimeUseCodes_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/SubscriptionOfferCodeOneTimeUseCodesLinkagesResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: List Related Subscription Offer Codes / One Time Use Codes /v1/subscriptionOfferCodes/{id}/oneTimeUseCodes: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - SubscriptionOfferCodes operationId: subscriptionOfferCodes_oneTimeUseCodes_getToManyRelated parameters: - name: fields[subscriptionOfferCodeOneTimeUseCodes] in: query description: the fields to include for returned resources of type subscriptionOfferCodeOneTimeUseCodes schema: type: array items: type: string enum: - numberOfCodes - createdDate - expirationDate - active - environment - offerCode - values style: form explode: false - name: fields[subscriptionOfferCodes] in: query description: the fields to include for returned resources of type subscriptionOfferCodes schema: type: array items: type: string enum: - name - customerEligibilities - offerEligibility - duration - offerMode - numberOfPeriods - totalNumberOfCodes - productionCodeCount - sandboxCodeCount - active - autoRenewEnabled - subscription - oneTimeUseCodes - customCodes - prices 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: - offerCode 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 SubscriptionOfferCodeOneTimeUseCodes content: application/json: schema: $ref: '#/components/schemas/SubscriptionOfferCodeOneTimeUseCodesResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: List Related Subscription Offer Codes / One Time Use Codes /v1/subscriptionOfferCodes/{id}/relationships/prices: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - SubscriptionOfferCodes operationId: subscriptionOfferCodes_prices_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/SubscriptionOfferCodePricesLinkagesResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: List Related Subscription Offer Codes / Prices /v1/subscriptionOfferCodes/{id}/prices: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - SubscriptionOfferCodes operationId: subscriptionOfferCodes_prices_getToManyRelated parameters: - name: filter[territory] in: query description: filter by id(s) of related 'territory' schema: type: array items: type: string style: form explode: false - name: fields[subscriptionOfferCodePrices] in: query description: the fields to include for returned resources of type subscriptionOfferCodePrices schema: type: array items: type: string enum: - territory - subscriptionPricePoint style: form explode: false - name: fields[territories] in: query description: the fields to include for returned resources of type territories schema: type: array items: type: string enum: - currency style: form explode: false - name: fields[subscriptionPricePoints] in: query description: the fields to include for returned resources of type subscriptionPricePoints schema: type: array items: type: string enum: - customerPrice - proceeds - proceedsYear2 - territory - equalizations 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: - territory - subscriptionPricePoint 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 SubscriptionOfferCodePrices content: application/json: schema: $ref: '#/components/schemas/SubscriptionOfferCodePricesResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: List Related Subscription Offer Codes / Prices components: schemas: SubscriptionOfferCodeOneTimeUseCode: type: object title: SubscriptionOfferCodeOneTimeUseCode properties: type: type: string enum: - subscriptionOfferCodeOneTimeUseCodes id: type: string attributes: type: object properties: numberOfCodes: type: integer createdDate: type: string format: date-time expirationDate: type: string format: date active: type: boolean environment: $ref: '#/components/schemas/OfferCodeEnvironment' relationships: type: object properties: offerCode: type: object properties: data: type: object properties: type: type: string enum: - subscriptionOfferCodes id: type: string required: - id - type values: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ResourceLinks' required: - id - type SubscriptionOfferDuration: type: string enum: - THREE_DAYS - ONE_WEEK - TWO_WEEKS - ONE_MONTH - TWO_MONTHS - THREE_MONTHS - SIX_MONTHS - ONE_YEAR SubscriptionOfferMode: type: string enum: - PAY_AS_YOU_GO - PAY_UP_FRONT - FREE_TRIAL PagedDocumentLinks: type: object properties: self: type: string format: uri-reference first: type: string format: uri-reference next: type: string format: uri-reference required: - self SubscriptionOfferCodePrice: type: object title: SubscriptionOfferCodePrice properties: type: type: string enum: - subscriptionOfferCodePrices id: type: string relationships: type: object properties: territory: type: object properties: data: type: object properties: type: type: string enum: - territories id: type: string required: - id - type subscriptionPricePoint: type: object properties: data: type: object properties: type: type: string enum: - subscriptionPricePoints id: type: string required: - id - type 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 SubscriptionOfferCodePricesLinkagesResponse: type: object properties: data: type: array items: type: object properties: type: type: string enum: - subscriptionOfferCodePrices id: type: string required: - id - type links: $ref: '#/components/schemas/PagedDocumentLinks' meta: $ref: '#/components/schemas/PagingInformation' required: - data - links SubscriptionOfferCodeOneTimeUseCodesResponse: type: object title: SubscriptionOfferCodeOneTimeUseCodesResponse properties: data: type: array items: $ref: '#/components/schemas/SubscriptionOfferCodeOneTimeUseCode' included: type: array items: $ref: '#/components/schemas/SubscriptionOfferCode' links: $ref: '#/components/schemas/PagedDocumentLinks' meta: $ref: '#/components/schemas/PagingInformation' required: - data - links SubscriptionPricePoint: type: object title: SubscriptionPricePoint properties: type: type: string enum: - subscriptionPricePoints id: type: string attributes: type: object properties: customerPrice: type: string proceeds: type: string proceedsYear2: type: string relationships: type: object properties: territory: type: object properties: data: type: object properties: type: type: string enum: - territories id: type: string required: - id - type equalizations: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ResourceLinks' required: - id - type SubscriptionOfferCodeUpdateRequest: type: object title: SubscriptionOfferCodeUpdateRequest properties: data: type: object properties: type: type: string enum: - subscriptionOfferCodes id: type: string attributes: type: object properties: active: type: boolean nullable: true required: - id - type required: - data 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 RelationshipLinks: type: object properties: self: type: string format: uri-reference related: type: string format: uri-reference SubscriptionOfferCodeOneTimeUseCodesLinkagesResponse: type: object properties: data: type: array items: type: object properties: type: type: string enum: - subscriptionOfferCodeOneTimeUseCodes id: type: string required: - id - type links: $ref: '#/components/schemas/PagedDocumentLinks' meta: $ref: '#/components/schemas/PagingInformation' required: - data - links ErrorSourcePointer: type: object title: JsonPointer properties: pointer: type: string required: - pointer SubscriptionCustomerEligibility: type: string enum: - NEW - EXISTING - EXPIRED OfferCodeEnvironment: type: string enum: - PRODUCTION - SANDBOX PagingInformation: type: object properties: paging: type: object properties: total: type: integer limit: type: integer nextCursor: type: string required: - limit required: - paging SubscriptionOfferCodePricesResponse: type: object title: SubscriptionOfferCodePricesResponse properties: data: type: array items: $ref: '#/components/schemas/SubscriptionOfferCodePrice' included: type: array items: oneOf: - $ref: '#/components/schemas/SubscriptionPricePoint' - $ref: '#/components/schemas/Territory' discriminator: propertyName: type mapping: territories: '#/components/schemas/Territory' subscriptionPricePoints: '#/components/schemas/SubscriptionPricePoint' links: $ref: '#/components/schemas/PagedDocumentLinks' meta: $ref: '#/components/schemas/PagingInformation' required: - data - links SubscriptionOfferCodeCustomCodesLinkagesResponse: type: object properties: data: type: array items: type: object properties: type: type: string enum: - subscriptionOfferCodeCustomCodes id: type: string required: - id - type links: $ref: '#/components/schemas/PagedDocumentLinks' meta: $ref: '#/components/schemas/PagingInformation' required: - data - links Subscription: type: object title: Subscription properties: type: type: string enum: - subscriptions id: type: string attributes: type: object properties: name: type: string productId: type: string familySharable: type: boolean state: type: string enum: - MISSING_METADATA - READY_TO_SUBMIT - WAITING_FOR_REVIEW - IN_REVIEW - DEVELOPER_ACTION_NEEDED - PENDING_BINARY_APPROVAL - APPROVED - DEVELOPER_REMOVED_FROM_SALE - REMOVED_FROM_SALE - REJECTED subscriptionPeriod: type: string enum: - ONE_WEEK - ONE_MONTH - TWO_MONTHS - THREE_MONTHS - SIX_MONTHS - ONE_YEAR reviewNote: type: string groupLevel: type: integer relationships: type: object properties: subscriptionLocalizations: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - subscriptionLocalizations id: type: string required: - id - type appStoreReviewScreenshot: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' data: type: object properties: type: type: string enum: - subscriptionAppStoreReviewScreenshots id: type: string required: - id - type group: type: object properties: data: type: object properties: type: type: string enum: - subscriptionGroups id: type: string required: - id - type introductoryOffers: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - subscriptionIntroductoryOffers id: type: string required: - id - type promotionalOffers: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - subscriptionPromotionalOffers id: type: string required: - id - type offerCodes: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - subscriptionOfferCodes id: type: string required: - id - type prices: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - subscriptionPrices id: type: string required: - id - type pricePoints: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' promotedPurchase: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' data: type: object properties: type: type: string enum: - promotedPurchases id: type: string required: - id - type subscriptionAvailability: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' data: type: object properties: type: type: string enum: - subscriptionAvailabilities id: type: string required: - id - type winBackOffers: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - winBackOffers id: type: string required: - id - type images: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - subscriptionImages id: type: string required: - id - type links: $ref: '#/components/schemas/ResourceLinks' required: - id - type SubscriptionOfferEligibility: type: string enum: - STACK_WITH_INTRO_OFFERS - REPLACE_INTRO_OFFERS SubscriptionOfferCodeCustomCode: type: object title: SubscriptionOfferCodeCustomCode properties: type: type: string enum: - subscriptionOfferCodeCustomCodes id: type: string attributes: type: object properties: customCode: type: string numberOfCodes: type: integer createdDate: type: string format: date-time expirationDate: type: string format: date active: type: boolean relationships: type: object properties: offerCode: type: object properties: data: type: object properties: type: type: string enum: - subscriptionOfferCodes id: type: string required: - id - type links: $ref: '#/components/schemas/ResourceLinks' required: - id - type SubscriptionOfferCodePriceInlineCreate: type: object properties: type: type: string enum: - subscriptionOfferCodePrices id: type: string relationships: type: object properties: territory: type: object properties: data: type: object properties: type: type: string enum: - territories id: type: string required: - id - type subscriptionPricePoint: type: object properties: data: type: object properties: type: type: string enum: - subscriptionPricePoints id: type: string required: - id - type required: - type SubscriptionOfferCodeCustomCodesResponse: type: object title: SubscriptionOfferCodeCustomCodesResponse properties: data: type: array items: $ref: '#/components/schemas/SubscriptionOfferCodeCustomCode' included: type: array items: $ref: '#/components/schemas/SubscriptionOfferCode' links: $ref: '#/components/schemas/PagedDocumentLinks' meta: $ref: '#/components/schemas/PagingInformation' required: - data - links Territory: type: object title: Territory properties: type: type: string enum: - territories id: type: string attributes: type: object properties: currency: type: string links: $ref: '#/components/schemas/ResourceLinks' required: - id - type SubscriptionOfferCode: type: object title: SubscriptionOfferCode properties: type: type: string enum: - subscriptionOfferCodes id: type: string attributes: type: object properties: name: type: string customerEligibilities: type: array items: $ref: '#/components/schemas/SubscriptionCustomerEligibility' offerEligibility: $ref: '#/components/schemas/SubscriptionOfferEligibility' duration: $ref: '#/components/schemas/SubscriptionOfferDuration' offerMode: $ref: '#/components/schemas/SubscriptionOfferMode' numberOfPeriods: type: integer totalNumberOfCodes: type: integer productionCodeCount: type: integer sandboxCodeCount: type: integer active: type: boolean autoRenewEnabled: type: boolean relationships: type: object properties: subscription: type: object properties: data: type: object properties: type: type: string enum: - subscriptions id: type: string required: - id - type oneTimeUseCodes: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - subscriptionOfferCodeOneTimeUseCodes id: type: string required: - id - type customCodes: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - subscriptionOfferCodeCustomCodes id: type: string required: - id - type prices: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - subscriptionOfferCodePrices id: type: string required: - id - type links: $ref: '#/components/schemas/ResourceLinks' required: - id - type SubscriptionOfferCodeResponse: type: object title: SubscriptionOfferCodeResponse properties: data: $ref: '#/components/schemas/SubscriptionOfferCode' included: type: array items: oneOf: - $ref: '#/components/schemas/SubscriptionOfferCodeCustomCode' - $ref: '#/components/schemas/SubscriptionOfferCodeOneTimeUseCode' - $ref: '#/components/schemas/SubscriptionOfferCodePrice' - $ref: '#/components/schemas/Subscription' discriminator: propertyName: type mapping: subscriptionOfferCodePrices: '#/components/schemas/SubscriptionOfferCodePrice' subscriptions: '#/components/schemas/Subscription' subscriptionOfferCodeOneTimeUseCodes: '#/components/schemas/SubscriptionOfferCodeOneTimeUseCode' subscriptionOfferCodeCustomCodes: '#/components/schemas/SubscriptionOfferCodeCustomCode' links: $ref: '#/components/schemas/DocumentLinks' required: - data - links SubscriptionOfferCodeCreateRequest: type: object title: SubscriptionOfferCodeCreateRequest properties: data: type: object properties: type: type: string enum: - subscriptionOfferCodes attributes: type: object properties: name: type: string customerEligibilities: type: array items: $ref: '#/components/schemas/SubscriptionCustomerEligibility' offerEligibility: $ref: '#/components/schemas/SubscriptionOfferEligibility' duration: $ref: '#/components/schemas/SubscriptionOfferDuration' offerMode: $ref: '#/components/schemas/SubscriptionOfferMode' numberOfPeriods: type: integer autoRenewEnabled: type: boolean nullable: true required: - duration - offerEligibility - name - numberOfPeriods - offerMode - customerEligibilities relationships: type: object properties: subscription: type: object properties: data: type: object properties: type: type: string enum: - subscriptions id: type: string required: - id - type required: - data prices: type: object properties: data: type: array items: type: object properties: type: type: string enum: - subscriptionOfferCodePrices id: type: string required: - id - type required: - data required: - subscription - prices required: - relationships - attributes - type included: type: array items: $ref: '#/components/schemas/SubscriptionOfferCodePriceInlineCreate' required: - data securitySchemes: itc-bearer-token: type: http scheme: bearer bearerFormat: JWT