openapi: 3.0.1 info: title: App Store Connect AccessibilityDeclarations ScmProviders 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: ScmProviders paths: /v1/scmProviders: get: tags: - ScmProviders operationId: scmProviders_getCollection parameters: - name: fields[scmProviders] in: query description: the fields to include for returned resources of type scmProviders schema: type: array items: type: string enum: - scmProviderType - url - repositories style: form explode: false required: 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' '200': description: List of ScmProviders content: application/json: schema: $ref: '#/components/schemas/ScmProvidersResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: List Scm Providers /v1/scmProviders/{id}: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - ScmProviders operationId: scmProviders_getInstance parameters: - name: fields[scmProviders] in: query description: the fields to include for returned resources of type scmProviders schema: type: array items: type: string enum: - scmProviderType - url - repositories 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 ScmProvider content: application/json: schema: $ref: '#/components/schemas/ScmProviderResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: Get Scm Providers /v1/scmProviders/{id}/relationships/repositories: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - ScmProviders operationId: scmProviders_repositories_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/ScmProviderRepositoriesLinkagesResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: List Related Scm Providers / Repositories /v1/scmProviders/{id}/repositories: parameters: - name: id in: path description: the id of the requested resource schema: type: string style: simple required: true get: tags: - ScmProviders operationId: scmProviders_repositories_getToManyRelated parameters: - name: filter[id] in: query description: filter by id(s) schema: type: array items: type: string style: form explode: false - name: fields[scmRepositories] in: query description: the fields to include for returned resources of type scmRepositories schema: type: array items: type: string enum: - lastAccessedDate - httpCloneUrl - sshCloneUrl - ownerName - repositoryName - scmProvider - defaultBranch - gitReferences - pullRequests style: form explode: false - name: fields[scmProviders] in: query description: the fields to include for returned resources of type scmProviders schema: type: array items: type: string enum: - scmProviderType - url - repositories style: form explode: false - name: fields[scmGitReferences] in: query description: the fields to include for returned resources of type scmGitReferences schema: type: array items: type: string enum: - name - canonicalName - isDeleted - kind - repository 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: - scmProvider - defaultBranch 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 ScmRepositories content: application/json: schema: $ref: '#/components/schemas/ScmRepositoriesResponse' '429': description: Rate limit exceeded error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' summary: List Related Scm Providers / Repositories components: schemas: DocumentLinks: type: object properties: self: type: string format: uri-reference required: - self ScmProvider: type: object title: ScmProvider properties: type: type: string enum: - scmProviders id: type: string attributes: type: object properties: scmProviderType: $ref: '#/components/schemas/ScmProviderType' url: type: string format: uri relationships: type: object properties: repositories: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ResourceLinks' required: - id - type 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 ScmGitReference: type: object title: ScmGitReference properties: type: type: string enum: - scmGitReferences id: type: string attributes: type: object properties: name: type: string canonicalName: type: string isDeleted: type: boolean kind: $ref: '#/components/schemas/CiGitRefKind' relationships: type: object properties: repository: type: object properties: data: type: object properties: type: type: string enum: - scmRepositories id: type: string required: - id - type links: $ref: '#/components/schemas/ResourceLinks' required: - id - type ResourceLinks: type: object properties: self: type: string format: uri-reference ScmRepository: type: object title: ScmRepository properties: type: type: string enum: - scmRepositories id: type: string attributes: type: object properties: lastAccessedDate: type: string format: date-time httpCloneUrl: type: string format: uri sshCloneUrl: type: string format: uri ownerName: type: string repositoryName: type: string relationships: type: object properties: scmProvider: type: object properties: data: type: object properties: type: type: string enum: - scmProviders id: type: string required: - id - type defaultBranch: type: object properties: data: type: object properties: type: type: string enum: - scmGitReferences id: type: string required: - id - type gitReferences: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' pullRequests: type: object properties: links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ResourceLinks' required: - id - type ScmProviderResponse: type: object title: ScmProviderResponse properties: data: $ref: '#/components/schemas/ScmProvider' links: $ref: '#/components/schemas/DocumentLinks' required: - data - links ScmRepositoriesResponse: type: object title: ScmRepositoriesResponse properties: data: type: array items: $ref: '#/components/schemas/ScmRepository' included: type: array items: oneOf: - $ref: '#/components/schemas/ScmGitReference' - $ref: '#/components/schemas/ScmProvider' discriminator: propertyName: type mapping: scmProviders: '#/components/schemas/ScmProvider' scmGitReferences: '#/components/schemas/ScmGitReference' links: $ref: '#/components/schemas/PagedDocumentLinks' meta: $ref: '#/components/schemas/PagingInformation' required: - data - links 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 ScmProviderRepositoriesLinkagesResponse: type: object properties: data: type: array items: type: object properties: type: type: string enum: - scmRepositories id: type: string required: - id - type links: $ref: '#/components/schemas/PagedDocumentLinks' meta: $ref: '#/components/schemas/PagingInformation' required: - data - links 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 ScmProvidersResponse: type: object title: ScmProvidersResponse properties: data: type: array items: $ref: '#/components/schemas/ScmProvider' links: $ref: '#/components/schemas/PagedDocumentLinks' meta: $ref: '#/components/schemas/PagingInformation' required: - data - links ScmProviderType: type: object properties: kind: type: string enum: - BITBUCKET_CLOUD - BITBUCKET_SERVER - GITHUB_CLOUD - GITHUB_ENTERPRISE - GITLAB_CLOUD - GITLAB_SELF_MANAGED displayName: type: string isOnPremise: type: boolean CiGitRefKind: type: string enum: - BRANCH - TAG 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