iOS

iOS CustomerReviews API

The CustomerReviews API from iOS — 3 operation(s) for customerreviews.

OpenAPI Specification

ios-customerreviews-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: App Store Connect AccessibilityDeclarations CustomerReviews 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: CustomerReviews
paths:
  /v1/customerReviews/{id}:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - CustomerReviews
      operationId: customerReviews_getInstance
      parameters:
      - name: fields[customerReviews]
        in: query
        description: the fields to include for returned resources of type customerReviews
        schema:
          type: array
          items:
            type: string
            enum:
            - rating
            - title
            - body
            - reviewerNickname
            - createdDate
            - territory
            - response
            - reviewTerritory
        style: form
        explode: false
        required: false
      - name: fields[customerReviewResponses]
        in: query
        description: the fields to include for returned resources of type customerReviewResponses
        schema:
          type: array
          items:
            type: string
            enum:
            - responseBody
            - lastModifiedDate
            - state
            - review
        style: form
        explode: false
        required: 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
        required: false
      - name: include
        in: query
        description: comma-separated list of relationships to include
        schema:
          type: array
          items:
            type: string
            enum:
            - response
            - reviewTerritory
        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 CustomerReview
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomerReviewResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: Get Customer Reviews
  /v1/customerReviews/{id}/relationships/response:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - CustomerReviews
      operationId: customerReviews_response_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/CustomerReviewResponseLinkageResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: Get Related Customer Reviews / Response
  /v1/customerReviews/{id}/response:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - CustomerReviews
      operationId: customerReviews_response_getToOneRelated
      parameters:
      - name: fields[customerReviewResponses]
        in: query
        description: the fields to include for returned resources of type customerReviewResponses
        schema:
          type: array
          items:
            type: string
            enum:
            - responseBody
            - lastModifiedDate
            - state
            - review
        style: form
        explode: false
      - name: fields[customerReviews]
        in: query
        description: the fields to include for returned resources of type customerReviews
        schema:
          type: array
          items:
            type: string
            enum:
            - rating
            - title
            - body
            - reviewerNickname
            - createdDate
            - territory
            - response
            - reviewTerritory
        style: form
        explode: false
      - name: include
        in: query
        description: comma-separated list of relationships to include
        schema:
          type: array
          items:
            type: string
            enum:
            - review
        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 CustomerReviewResponse
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomerReviewResponseV1Response'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: Get Related Customer Reviews / Response
components:
  schemas:
    DocumentLinks:
      type: object
      properties:
        self:
          type: string
          format: uri-reference
      required:
      - self
    RelationshipLinks:
      type: object
      properties:
        self:
          type: string
          format: uri-reference
        related:
          type: string
          format: uri-reference
    CustomerReviewResponseV1:
      type: object
      title: CustomerReviewResponseV1
      properties:
        type:
          type: string
          enum:
          - customerReviewResponses
        id:
          type: string
        attributes:
          type: object
          properties:
            responseBody:
              type: string
            lastModifiedDate:
              type: string
              format: date-time
            state:
              type: string
              enum:
              - PUBLISHED
              - PENDING_PUBLISH
        relationships:
          type: object
          properties:
            review:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                      - customerReviews
                    id:
                      type: string
                  required:
                  - id
                  - type
        links:
          $ref: '#/components/schemas/ResourceLinks'
      required:
      - id
      - type
    ResourceLinks:
      type: object
      properties:
        self:
          type: string
          format: uri-reference
    TerritoryCode:
      type: string
      enum:
      - ABW
      - AFG
      - AGO
      - AIA
      - ALB
      - AND
      - ANT
      - ARE
      - ARG
      - ARM
      - ASM
      - ATG
      - AUS
      - AUT
      - AZE
      - BDI
      - BEL
      - BEN
      - BES
      - BFA
      - BGD
      - BGR
      - BHR
      - BHS
      - BIH
      - BLR
      - BLZ
      - BMU
      - BOL
      - BRA
      - BRB
      - BRN
      - BTN
      - BWA
      - CAF
      - CAN
      - CHE
      - CHL
      - CHN
      - CIV
      - CMR
      - COD
      - COG
      - COK
      - COL
      - COM
      - CPV
      - CRI
      - CUB
      - CUW
      - CXR
      - CYM
      - CYP
      - CZE
      - DEU
      - DJI
      - DMA
      - DNK
      - DOM
      - DZA
      - ECU
      - EGY
      - ERI
      - ESP
      - EST
      - ETH
      - FIN
      - FJI
      - FLK
      - FRA
      - FRO
      - FSM
      - GAB
      - GBR
      - GEO
      - GGY
      - GHA
      - GIB
      - GIN
      - GLP
      - GMB
      - GNB
      - GNQ
      - GRC
      - GRD
      - GRL
      - GTM
      - GUF
      - GUM
      - GUY
      - HKG
      - HND
      - HRV
      - HTI
      - HUN
      - IDN
      - IMN
      - IND
      - IRL
      - IRQ
      - ISL
      - ISR
      - ITA
      - JAM
      - JEY
      - JOR
      - JPN
      - KAZ
      - KEN
      - KGZ
      - KHM
      - KIR
      - KNA
      - KOR
      - KWT
      - LAO
      - LBN
      - LBR
      - LBY
      - LCA
      - LIE
      - LKA
      - LSO
      - LTU
      - LUX
      - LVA
      - MAC
      - MAR
      - MCO
      - MDA
      - MDG
      - MDV
      - MEX
      - MHL
      - MKD
      - MLI
      - MLT
      - MMR
      - MNE
      - MNG
      - MNP
      - MOZ
      - MRT
      - MSR
      - MTQ
      - MUS
      - MWI
      - MYS
      - MYT
      - NAM
      - NCL
      - NER
      - NFK
      - NGA
      - NIC
      - NIU
      - NLD
      - NOR
      - NPL
      - NRU
      - NZL
      - OMN
      - PAK
      - PAN
      - PER
      - PHL
      - PLW
      - PNG
      - POL
      - PRI
      - PRT
      - PRY
      - PSE
      - PYF
      - QAT
      - REU
      - ROU
      - RUS
      - RWA
      - SAU
      - SEN
      - SGP
      - SHN
      - SLB
      - SLE
      - SLV
      - SMR
      - SOM
      - SPM
      - SRB
      - SSD
      - STP
      - SUR
      - SVK
      - SVN
      - SWE
      - SWZ
      - SXM
      - SYC
      - TCA
      - TCD
      - TGO
      - THA
      - TJK
      - TKM
      - TLS
      - TON
      - TTO
      - TUN
      - TUR
      - TUV
      - TWN
      - TZA
      - UGA
      - UKR
      - UMI
      - URY
      - USA
      - UZB
      - VAT
      - VCT
      - VEN
      - VGB
      - VIR
      - VNM
      - VUT
      - WLF
      - WSM
      - XKS
      - YEM
      - ZAF
      - ZMB
      - ZWE
    ErrorSourceParameter:
      type: object
      title: Parameter
      properties:
        parameter:
          type: string
      required:
      - parameter
    CustomerReview:
      type: object
      title: CustomerReview
      properties:
        type:
          type: string
          enum:
          - customerReviews
        id:
          type: string
        attributes:
          type: object
          properties:
            rating:
              type: integer
              maximum: 5
              minimum: 1
            title:
              type: string
            body:
              type: string
            reviewerNickname:
              type: string
            createdDate:
              type: string
              format: date-time
            territory:
              $ref: '#/components/schemas/TerritoryCode'
        relationships:
          type: object
          properties:
            response:
              type: object
              properties:
                links:
                  $ref: '#/components/schemas/RelationshipLinks'
                data:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                      - customerReviewResponses
                    id:
                      type: string
                  required:
                  - id
                  - type
            reviewTerritory:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                      - territories
                    id:
                      type: string
                  required:
                  - id
                  - type
        links:
          $ref: '#/components/schemas/ResourceLinks'
      required:
      - id
      - type
    CustomerReviewResponse:
      type: object
      title: CustomerReviewResponse
      properties:
        data:
          $ref: '#/components/schemas/CustomerReview'
        included:
          type: array
          items:
            oneOf:
            - $ref: '#/components/schemas/CustomerReviewResponseV1'
            - $ref: '#/components/schemas/Territory'
            discriminator:
              propertyName: type
              mapping:
                territories: '#/components/schemas/Territory'
                customerReviewResponses: '#/components/schemas/CustomerReviewResponseV1'
        links:
          $ref: '#/components/schemas/DocumentLinks'
      required:
      - data
      - links
    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
    ErrorSourcePointer:
      type: object
      title: JsonPointer
      properties:
        pointer:
          type: string
      required:
      - pointer
    CustomerReviewResponseV1Response:
      type: object
      title: CustomerReviewResponseV1Response
      properties:
        data:
          $ref: '#/components/schemas/CustomerReviewResponseV1'
        included:
          type: array
          items:
            $ref: '#/components/schemas/CustomerReview'
        links:
          $ref: '#/components/schemas/DocumentLinks'
      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
    CustomerReviewResponseLinkageResponse:
      type: object
      properties:
        data:
          type: object
          properties:
            type:
              type: string
              enum:
              - customerReviewResponses
            id:
              type: string
          required:
          - id
          - type
        links:
          $ref: '#/components/schemas/DocumentLinks'
      required:
      - data
      - links
  securitySchemes:
    itc-bearer-token:
      type: http
      scheme: bearer
      bearerFormat: JWT