iOS

iOS ScmRepositories API

The ScmRepositories API from iOS — 6 operation(s) for scmrepositories.

OpenAPI Specification

ios-scmrepositories-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: App Store Connect AccessibilityDeclarations ScmRepositories 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: ScmRepositories
paths:
  /v1/scmRepositories:
    get:
      tags:
      - ScmRepositories
      operationId: scmRepositories_getCollection
      parameters:
      - name: filter[id]
        in: query
        description: filter by id(s)
        schema:
          type: array
          items:
            type: string
        style: form
        explode: false
        required: 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
        required: 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
        required: 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
        required: 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
        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'
        '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 Scm Repositories
  /v1/scmRepositories/{id}:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - ScmRepositories
      operationId: scmRepositories_getInstance
      parameters:
      - 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
        required: 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
        required: 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
        required: false
      - 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
        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 ScmRepository
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScmRepositoryResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: Get Scm Repositories
  /v1/scmRepositories/{id}/relationships/gitReferences:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - ScmRepositories
      operationId: scmRepositories_gitReferences_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/ScmRepositoryGitReferencesLinkagesResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: List Related Scm Repositories / Git References
  /v1/scmRepositories/{id}/gitReferences:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - ScmRepositories
      operationId: scmRepositories_gitReferences_getToManyRelated
      parameters:
      - 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: 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: 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:
            - repository
        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 ScmGitReferences
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScmGitReferencesResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: List Related Scm Repositories / Git References
  /v1/scmRepositories/{id}/relationships/pullRequests:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - ScmRepositories
      operationId: scmRepositories_pullRequests_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/ScmRepositoryPullRequestsLinkagesResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: List Related Scm Repositories / Pull Requests
  /v1/scmRepositories/{id}/pullRequests:
    parameters:
    - name: id
      in: path
      description: the id of the requested resource
      schema:
        type: string
      style: simple
      required: true
    get:
      tags:
      - ScmRepositories
      operationId: scmRepositories_pullRequests_getToManyRelated
      parameters:
      - name: fields[scmPullRequests]
        in: query
        description: the fields to include for returned resources of type scmPullRequests
        schema:
          type: array
          items:
            type: string
            enum:
            - title
            - number
            - webUrl
            - sourceRepositoryOwner
            - sourceRepositoryName
            - sourceBranchName
            - destinationRepositoryOwner
            - destinationRepositoryName
            - destinationBranchName
            - isClosed
            - isCrossRepository
            - repository
        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: 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:
            - repository
        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 ScmPullRequests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScmPullRequestsResponse'
        '429':
          description: Rate limit exceeded error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      summary: List Related Scm Repositories / Pull Requests
components:
  schemas:
    PagedDocumentLinks:
      type: object
      properties:
        self:
          type: string
          format: uri-reference
        first:
          type: string
          format: uri-reference
        next:
          type: string
          format: uri-reference
      required:
      - self
    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
    ScmPullRequest:
      type: object
      title: ScmPullRequest
      properties:
        type:
          type: string
          enum:
          - scmPullRequests
        id:
          type: string
        attributes:
          type: object
          properties:
            title:
              type: string
            number:
              type: integer
            webUrl:
              type: string
              format: uri
            sourceRepositoryOwner:
              type: string
            sourceRepositoryName:
              type: string
            sourceBranchName:
              type: string
            destinationRepositoryOwner:
              type: string
            destinationRepositoryName:
              type: string
            destinationBranchName:
              type: string
            isClosed:
              type: boolean
            isCrossRepository:
              type: boolean
        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
    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
    ScmRepositoryPullRequestsLinkagesResponse:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                - scmPullRequests
              id:
                type: string
            required:
            - id
            - type
        links:
          $ref: '#/components/schemas/PagedDocumentLinks'
        meta:
          $ref: '#/components/schemas/PagingInformation'
      required:
      - data
      - links
    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
    RelationshipLinks:
      type: object
      properties:
        self:
          type: string
          format: uri-reference
        related:
          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
    ScmPullRequestsResponse:
      type: object
      title: ScmPullRequestsResponse
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/ScmPullRequest'
        included:
          type: array
          items:
            $ref: '#/components/schemas/ScmRepository'
        links:
          $ref: '#/components/schemas/PagedDocumentLinks'
        meta:
          $ref: '#/components/schemas/PagingInformation'
      required:
      - data
      - links
    ScmRepositoryResponse:
      type: object
      title: ScmRepositoryResponse
      properties:
        data:
          $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/DocumentLinks'
      required:
      - data
      - links
    ErrorSourcePointer:
      type: object
      title: JsonPointer
      properties:
        pointer:
          type: string
      required:
      - pointer
    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
    PagingInformation:
      type: object
      properties:
        paging:
          type: object
          properties:
            total:
              type: integer
            limit:
              type: integer
            nextCursor:
              type: string
          required:
          - limit
      required:
      - paging
    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
    ScmGitReferencesResponse:
      type: object
      title: ScmGitReferencesResponse
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/ScmGitReference'
        included:
          type: array
          items:
            $ref: '#/components/schemas/ScmRepository'
        links:
          $ref: '#/components/schemas/PagedDocumentLinks'
        meta:
          $ref: '#/components/schemas/PagingInformation'
      required:
      - data
      - links
    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
    ScmRepositoryGitReferencesLinkagesResponse:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                - scmGitReferences
              id:
                type: string
            required:
            - id
            - type
        links:
          $ref: '#/components/schemas/PagedDocumentLinks'
        meta:
          $ref: '#/components/schemas/PagingInformation'
      required:
      - data
      - links
    CiGitRefKind:
      type: string
      enum:
      - BRANCH
      - TAG
  securitySchemes:
    itc-bearer-token:
      type: http
      scheme: bearer
      bearerFormat: JWT