openapi: 3.0.1 info: title: App Store Connect AccessibilityDeclarations AnalyticsReportRequests 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: AnalyticsReportRequests paths: /v1/analyticsReportRequests: post: tags: - AnalyticsReportRequests operationId: analyticsReportRequests_createInstance requestBody: description: AnalyticsReportRequest representation content: application/json: schema: $ref: '#/components/schemas/AnalyticsReportRequestCreateRequest' 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 AnalyticsReportRequest content: application/json: schema: $ref: '#/components/schemas/AnalyticsReportRequestResponse' '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 Analytics Report Requests /v1/analyticsReportRequests/{id}: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - AnalyticsReportRequests operationId: analyticsReportRequests_getInstance parameters: - name: fields[analyticsReportRequests] in: query description: the fields to include for returned resources of type analyticsReportRequests schema: type: array items: type: string enum: - accessType - stoppedDueToInactivity - reports style: form explode: false required: false - name: fields[analyticsReports] in: query description: the fields to include for returned resources of type analyticsReports schema: type: array items: type: string enum: - name - category - instances 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: - reports style: form explode: false required: false - name: limit[reports] in: query description: maximum number of related reports 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 AnalyticsReportRequest content: application/json: schema: $ref: '#/components/schemas/AnalyticsReportRequestResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: Get Analytics Report Requests delete: tags: - AnalyticsReportRequests operationId: analyticsReportRequests_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 Analytics Report Requests /v1/analyticsReportRequests/{id}/relationships/reports: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - AnalyticsReportRequests operationId: analyticsReportRequests_reports_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/AnalyticsReportRequestReportsLinkagesResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: List Related Analytics Report Requests / Reports /v1/analyticsReportRequests/{id}/reports: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - AnalyticsReportRequests operationId: analyticsReportRequests_reports_getToManyRelated parameters: - name: filter[name] in: query description: filter by attribute 'name' schema: type: array items: type: string style: form explode: false - name: filter[category] in: query description: filter by attribute 'category' schema: type: array items: type: string enum: - APP_USAGE - APP_STORE_ENGAGEMENT - COMMERCE - FRAMEWORK_USAGE - PERFORMANCE style: form explode: false - name: fields[analyticsReports] in: query description: the fields to include for returned resources of type analyticsReports schema: type: array items: type: string enum: - name - category - instances style: form explode: false - 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 AnalyticsReports content: application/json: schema: $ref: '#/components/schemas/AnalyticsReportsResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: List Related Analytics Report Requests / Reports components: schemas: DocumentLinks: type: object properties: self: type: string format: uri-reference required: - self AnalyticsReportRequestCreateRequest: type: object title: AnalyticsReportRequestCreateRequest properties: data: type: object properties: type: type: string enum: - analyticsReportRequests attributes: type: object properties: accessType: type: string enum: - ONE_TIME_SNAPSHOT - ONGOING required: - accessType relationships: type: object properties: app: type: object properties: data: type: object properties: type: type: string enum: - apps id: type: string required: - id - type required: - data required: - app required: - relationships - attributes - type required: - data AnalyticsReportRequestResponse: type: object title: AnalyticsReportRequestResponse properties: data: $ref: '#/components/schemas/AnalyticsReportRequest' included: type: array items: $ref: '#/components/schemas/AnalyticsReport' links: $ref: '#/components/schemas/DocumentLinks' required: - data - links PagedDocumentLinks: type: object properties: self: type: string format: uri-reference first: type: string format: uri-reference next: type: string format: uri-reference required: - self RelationshipLinks: type: object properties: self: type: string format: uri-reference related: type: string format: uri-reference 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 AnalyticsReportsResponse: type: object title: AnalyticsReportsResponse properties: data: type: array items: $ref: '#/components/schemas/AnalyticsReport' links: $ref: '#/components/schemas/PagedDocumentLinks' meta: $ref: '#/components/schemas/PagingInformation' required: - data - links AnalyticsReportRequestReportsLinkagesResponse: type: object properties: data: type: array items: type: object properties: type: type: string enum: - analyticsReports id: type: string required: - id - type links: $ref: '#/components/schemas/PagedDocumentLinks' meta: $ref: '#/components/schemas/PagingInformation' required: - data - links AnalyticsReport: type: object title: AnalyticsReport properties: type: type: string enum: - analyticsReports id: type: string attributes: type: object properties: name: type: string category: type: string enum: - APP_USAGE - APP_STORE_ENGAGEMENT - COMMERCE - FRAMEWORK_USAGE - PERFORMANCE relationships: type: object properties: instances: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ResourceLinks' required: - id - type 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 AnalyticsReportRequest: type: object title: AnalyticsReportRequest properties: type: type: string enum: - analyticsReportRequests id: type: string attributes: type: object properties: accessType: type: string enum: - ONE_TIME_SNAPSHOT - ONGOING stoppedDueToInactivity: type: boolean relationships: type: object properties: reports: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' meta: $ref: '#/components/schemas/PagingInformation' data: type: array items: type: object properties: type: type: string enum: - analyticsReports 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 PagingInformation: type: object properties: paging: type: object properties: total: type: integer limit: type: integer nextCursor: type: string required: - limit required: - paging securitySchemes: itc-bearer-token: type: http scheme: bearer bearerFormat: JWT