APIs.io Engineering Platform Git API

Raw Git functionality.

Documentation

Specifications

Other Resources

🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-1ab188a6-cc1f-490d-9413-9c6da20918d0?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-0e94f581-cbc1-48e0-b594-1f6b3d07a328?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-4517d93a-e7f7-4dc2-b572-06762bbe14de?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-88f9ddbb-3115-47dc-b6e5-7fc6f1d2a190?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-3a12caae-4945-4df4-8ab9-bb6219ba7a9f?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-863b18f0-c2f2-4e32-a5fa-0d1e6ccf77a9?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-189876d1-f207-49a2-a4bc-5c67ae78cd19?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-c1e74fd9-3f84-4d95-943d-d645d6cb82f7?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-b002164d-6e8a-4b6d-b409-4929476e7818?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-508660fd-30b8-4c9c-aede-8edbac8a514d?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-da35e0ba-f1a9-42fe-a77a-56ff0a47e341?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-1d4df7d0-9c92-4fa8-946f-2110c2b3b48d?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-2af6f54f-d259-46c0-8f86-78856f5885cd?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-cc203f31-e7f6-42ec-ad34-c5c4cde58904?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-f19285da-48dd-4691-bbdf-f7d6bec157a3?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-aa69cacc-4bbf-4724-a1d4-78cdad57fee8?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-a5858f86-04d3-4e15-ae11-b42c7516688b?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-c2052341-766c-43c7-b1dc-ed4985e4606b?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-aa777c90-8271-4809-8eac-3ec39a9a899c?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-4d5957dc-df05-4216-a5fc-d46b3ba811d8?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-28d97617-fdba-46a5-ac3e-40f3d2e0fa57?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-7429b451-d812-4abc-b497-b763372cf5c5?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-b0eafdd0-adaa-48a2-a855-6a31beb86d83?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-209f34ef-13c1-400c-bca8-fcddb304aff5?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-fb2bbbb8-d4cc-48b1-a660-c8e158bfbbea?action=share&creator=35240

OpenAPI Specification

engineering-platform-git-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: "1.0.0"
  x-release: v4
  title: APIs.io Engineering Platform Amazon API Gateway 2014 11 13 Git API
  description: <fullname>Amazon API Gateway</fullname> <p>Amazon API Gateway helps developers deliver robust, secure, and scalable mobile and web application back ends. API Gateway allows developers to securely connect mobile and web applications to APIs that run on AWS Lambda, Amazon EC2, or other publicly addressable web services that are hosted outside of AWS.</p>
  x-logo:
    url: https://api.apis.guru/v2/cache/logo/https_twitter.com_awscloud_profile_image.png
    backgroundColor: '#FFFFFF'
  termsOfService: https://aws.amazon.com/service-terms/
  contact:
    name: Mike Ralphson
    email: mike.ralphson@gmail.com
    url: https://github.com/mermade/aws2openapi
    x-twitter: PermittedSoc
  license:
    name: Apache 2.0 License
    url: http://www.apache.org/licenses/
  x-providerName: amazonaws.com
  x-serviceName: apigateway
  x-origin:
  - contentType: application/json
    url: https://raw.githubusercontent.com/aws/aws-sdk-js/master/apis/apigateway-2015-07-09.normal.json
    converter:
      url: https://github.com/mermade/aws2openapi
    x-apisguru-driver: external
  x-apiClientRegistration:
    url: https://portal.aws.amazon.com/gp/aws/developer/registration/index.html?nc2=h_ct
  x-apisguru-categories:
  - cloud
  x-preferred: true
servers:
- url: http://apigateway.{region}.amazonaws.com
  variables:
    region:
      description: The AWS region
      enum:
      - us-east-1
      - us-east-2
      - us-west-1
      - us-west-2
      - us-gov-west-1
      - us-gov-east-1
      - ca-central-1
      - eu-north-1
      - eu-west-1
      - eu-west-2
      - eu-west-3
      - eu-central-1
      - eu-south-1
      - af-south-1
      - ap-northeast-1
      - ap-northeast-2
      - ap-northeast-3
      - ap-southeast-1
      - ap-southeast-2
      - ap-east-1
      - ap-south-1
      - sa-east-1
      - me-south-1
      default: us-east-1
  description: The Amazon API Gateway multi-region endpoint
- url: https://apigateway.{region}.amazonaws.com
  variables:
    region:
      description: The AWS region
      enum:
      - us-east-1
      - us-east-2
      - us-west-1
      - us-west-2
      - us-gov-west-1
      - us-gov-east-1
      - ca-central-1
      - eu-north-1
      - eu-west-1
      - eu-west-2
      - eu-west-3
      - eu-central-1
      - eu-south-1
      - af-south-1
      - ap-northeast-1
      - ap-northeast-2
      - ap-northeast-3
      - ap-southeast-1
      - ap-southeast-2
      - ap-east-1
      - ap-south-1
      - sa-east-1
      - me-south-1
      default: us-east-1
  description: The Amazon API Gateway multi-region endpoint
- url: http://apigateway.{region}.amazonaws.com.cn
  variables:
    region:
      description: The AWS region
      enum:
      - cn-north-1
      - cn-northwest-1
      default: cn-north-1
  description: The Amazon API Gateway endpoint for China (Beijing) and China (Ningxia)
- url: https://apigateway.{region}.amazonaws.com.cn
  variables:
    region:
      description: The AWS region
      enum:
      - cn-north-1
      - cn-northwest-1
      default: cn-north-1
  description: The Amazon API Gateway endpoint for China (Beijing) and China (Ningxia)
security:
- hmac: []
tags:
- name: Git
  description: Raw Git functionality.
paths:
  /repos/{owner}/{repo}/git/blobs:
    post:
      summary: APIs.io Engineering Platform Create a blob
      description: ''
      tags:
      - Git
      operationId: git/create-blob
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/git/blobs#create-a-blob
      parameters:
      - $ref: '#/components/parameters/owner'
      - $ref: '#/components/parameters/repo'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                content:
                  type: string
                  description: The new blob's content.
                encoding:
                  type: string
                  description: The encoding used for `content`. Currently, `"utf-8"` and `"base64"` are supported.
                  default: utf-8
              required:
              - content
            examples:
              default:
                value:
                  content: Content of the blob
                  encoding: utf-8
      responses:
        '201':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/short-blob'
              examples:
                default:
                  $ref: '#/components/examples/short-blob'
          headers:
            Location:
              example: https://api.github.com/repos/octocat/example/git/blobs/3a0f86fb8db8eea7ccbb9a95f325ddbedfb25e15
              schema:
                type: string
        '404':
          $ref: '#/components/responses/not_found'
        '409':
          $ref: '#/components/responses/conflict'
        '403':
          $ref: '#/components/responses/forbidden'
        '422':
          $ref: '#/components/responses/validation_failed'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: git
        subcategory: blobs
  /repos/{owner}/{repo}/git/blobs/{file_sha}:
    get:
      summary: APIs.io Engineering Platform Get a blob
      description: 'The `content` in the response will always be Base64 encoded.


        This endpoint supports the following custom media types. For more information, see "[Media types](https://docs.github.com/enterprise-server@3.9/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types)."


        - **`application/vnd.github.raw+json`**: Returns the raw blob data.

        - **`application/vnd.github+json`**: Returns a JSON representation of the blob with `content` as a base64 encoded string. This is the default if no media type is specified.


        **Note** This endpoint supports blobs up to 100 megabytes in size.'
      tags:
      - Git
      operationId: git/get-blob
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/git/blobs#get-a-blob
      parameters:
      - $ref: '#/components/parameters/owner'
      - $ref: '#/components/parameters/repo'
      - name: file_sha
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/blob'
              examples:
                default:
                  $ref: '#/components/examples/blob'
        '404':
          $ref: '#/components/responses/not_found'
        '422':
          $ref: '#/components/responses/validation_failed'
        '403':
          $ref: '#/components/responses/forbidden'
        '409':
          $ref: '#/components/responses/conflict'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: git
        subcategory: blobs
  /repos/{owner}/{repo}/git/commits:
    post:
      summary: APIs.io Engineering Platform Create a commit
      description: 'Creates a new Git [commit object](https://git-scm.com/book/en/v2/Git-Internals-Git-Objects).


        **Signature verification object**


        The response will include a `verification` object that describes the result of verifying the commit''s signature. The following fields are included in the `verification` object:


        | Name | Type | Description |

        | ---- | ---- | ----------- |

        | `verified` | `boolean` | Indicates whether GitHub considers the signature in this commit to be verified. |

        | `reason` | `string` | The reason for verified value. Possible values and their meanings are enumerated in the table below. |

        | `signature` | `string` | The signature that was extracted from the commit. |

        | `payload` | `string` | The value that was signed. |


        These are the possible values for `reason` in the `verification` object:


        | Value | Description |

        | ----- | ----------- |

        | `expired_key` | The key that made the signature is expired. |

        | `not_signing_key` | The "signing" flag is not among the usage flags in the GPG key that made the signature. |

        | `gpgverify_error` | There was an error communicating with the signature verification service. |

        | `gpgverify_unavailable` | The signature verification service is currently unavailable. |

        | `unsigned` | The object does not include a signature. |

        | `unknown_signature_type` | A non-PGP signature was found in the commit. |

        | `no_user` | No user was associated with the `committer` email address in the commit. |

        | `unverified_email` | The `committer` email address in the commit was associated with a user, but the email address is not verified on their account. |

        | `bad_email` | The `committer` email address in the commit is not included in the identities of the PGP key that made the signature. |

        | `unknown_key` | The key that made the signature has not been registered with any user''s account. |

        | `malformed_signature` | There was an error parsing the signature. |

        | `invalid` | The signature could not be cryptographically verified using the key whose key-id was found in the signature. |

        | `valid` | None of the above errors applied, so the signature is considered to be verified. |'
      tags:
      - Git
      operationId: git/create-commit
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/git/commits#create-a-commit
      parameters:
      - $ref: '#/components/parameters/owner'
      - $ref: '#/components/parameters/repo'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                message:
                  type: string
                  description: The commit message
                tree:
                  type: string
                  description: The SHA of the tree object this commit points to
                parents:
                  type: array
                  description: The SHAs of the commits that were the parents of this commit. If omitted or empty, the commit will be written as a root commit. For a single parent, an array of one SHA should be provided; for a merge commit, an array of more than one should be provided.
                  items:
                    type: string
                author:
                  type: object
                  description: Information about the author of the commit. By default, the `author` will be the authenticated user and the current date. See the `author` and `committer` object below for details.
                  properties:
                    name:
                      type: string
                      description: The name of the author (or committer) of the commit
                    email:
                      type: string
                      description: The email of the author (or committer) of the commit
                    date:
                      type: string
                      format: date-time
                      description: 'Indicates when this commit was authored (or committed). This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`.'
                  required:
                  - name
                  - email
                committer:
                  type: object
                  description: Information about the person who is making the commit. By default, `committer` will use the information set in `author`. See the `author` and `committer` object below for details.
                  properties:
                    name:
                      type: string
                      description: The name of the author (or committer) of the commit
                    email:
                      type: string
                      description: The email of the author (or committer) of the commit
                    date:
                      type: string
                      format: date-time
                      description: 'Indicates when this commit was authored (or committed). This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`.'
                signature:
                  type: string
                  description: The [PGP signature](https://en.wikipedia.org/wiki/Pretty_Good_Privacy) of the commit. GitHub adds the signature to the `gpgsig` header of the created commit. For a commit signature to be verifiable by Git or GitHub, it must be an ASCII-armored detached PGP signature over the string commit as it would be written to the object database. To pass a `signature` parameter, you need to first manually create a valid PGP signature, which can be complicated. You may find it easier to [use the command line](https://git-scm.com/book/id/v2/Git-Tools-Signing-Your-Work) to create signed commits.
              required:
              - message
              - tree
            examples:
              default:
                value:
                  message: my commit message
                  author:
                    name: Mona Octocat
                    email: octocat@github.com
                    date: '2008-07-09T16:13:30+12:00'
                  parents:
                  - 7d1b31e74ee336d15cbd21741bc88a537ed063a0
                  tree: 827efc6d56897b048c772eb4087f854f46256132
                  signature: '-----BEGIN PGP SIGNATURE-----


                    iQIzBAABAQAdFiEESn/54jMNIrGSE6Tp6cQjvhfv7nAFAlnT71cACgkQ6cQjvhfv

                    7nCWwA//XVqBKWO0zF+bZl6pggvky3Oc2j1pNFuRWZ29LXpNuD5WUGXGG209B0hI

                    DkmcGk19ZKUTnEUJV2Xd0R7AW01S/YSub7OYcgBkI7qUE13FVHN5ln1KvH2all2n

                    2+JCV1HcJLEoTjqIFZSSu/sMdhkLQ9/NsmMAzpf/iIM0nQOyU4YRex9eD1bYj6nA

                    OQPIDdAuaTQj1gFPHYLzM4zJnCqGdRlg0sOM/zC5apBNzIwlgREatOYQSCfCKV7k

                    nrU34X8b9BzQaUx48Qa+Dmfn5KQ8dl27RNeWAqlkuWyv3pUauH9UeYW+KyuJeMkU

                    +NyHgAsWFaCFl23kCHThbLStMZOYEnGagrd0hnm1TPS4GJkV4wfYMwnI4KuSlHKB

                    jHl3Js9vNzEUQipQJbgCgTiWvRJoK3ENwBTMVkKHaqT4x9U4Jk/XZB6Q8MA09ezJ

                    3QgiTjTAGcum9E9QiJqMYdWQPWkaBIRRz5cET6HPB48YNXAAUsfmuYsGrnVLYbG+

                    UpC6I97VybYHTy2O9XSGoaLeMI9CsFn38ycAxxbWagk5mhclNTP5mezIq6wKSwmr

                    X11FW3n1J23fWZn5HJMBsRnUCgzqzX3871IqLYHqRJ/bpZ4h20RhTyPj5c/z7QXp

                    eSakNQMfbbMcljkha+ZMuVQX1K9aRlVqbmv3ZMWh+OijLYVU2bc=

                    =5Io4

                    -----END PGP SIGNATURE-----

                    '
      responses:
        '201':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/git-commit'
              examples:
                default:
                  $ref: '#/components/examples/git-commit'
          headers:
            Location:
              example: https://api.github.com/repos/octocat/Hello-World/git/commits/7638417db6d59f3c431d3e1f261cc637155684cd
              schema:
                type: string
        '422':
          $ref: '#/components/responses/validation_failed'
        '404':
          $ref: '#/components/responses/not_found'
        '409':
          $ref: '#/components/responses/conflict'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: git
        subcategory: commits
  /repos/{owner}/{repo}/git/commits/{commit_sha}:
    get:
      summary: APIs.io Engineering Platform Get a commit object
      description: 'Gets a Git [commit object](https://git-scm.com/book/en/v2/Git-Internals-Git-Objects).


        To get the contents of a commit, see "[Get a commit](/rest/commits/commits#get-a-commit)."


        **Signature verification object**


        The response will include a `verification` object that describes the result of verifying the commit''s signature. The following fields are included in the `verification` object:


        | Name | Type | Description |

        | ---- | ---- | ----------- |

        | `verified` | `boolean` | Indicates whether GitHub considers the signature in this commit to be verified. |

        | `reason` | `string` | The reason for verified value. Possible values and their meanings are enumerated in the table below. |

        | `signature` | `string` | The signature that was extracted from the commit. |

        | `payload` | `string` | The value that was signed. |


        These are the possible values for `reason` in the `verification` object:


        | Value | Description |

        | ----- | ----------- |

        | `expired_key` | The key that made the signature is expired. |

        | `not_signing_key` | The "signing" flag is not among the usage flags in the GPG key that made the signature. |

        | `gpgverify_error` | There was an error communicating with the signature verification service. |

        | `gpgverify_unavailable` | The signature verification service is currently unavailable. |

        | `unsigned` | The object does not include a signature. |

        | `unknown_signature_type` | A non-PGP signature was found in the commit. |

        | `no_user` | No user was associated with the `committer` email address in the commit. |

        | `unverified_email` | The `committer` email address in the commit was associated with a user, but the email address is not verified on their account. |

        | `bad_email` | The `committer` email address in the commit is not included in the identities of the PGP key that made the signature. |

        | `unknown_key` | The key that made the signature has not been registered with any user''s account. |

        | `malformed_signature` | There was an error parsing the signature. |

        | `invalid` | The signature could not be cryptographically verified using the key whose key-id was found in the signature. |

        | `valid` | None of the above errors applied, so the signature is considered to be verified. |'
      tags:
      - Git
      operationId: git/get-commit
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/git/commits#get-a-commit-object
      parameters:
      - $ref: '#/components/parameters/owner'
      - $ref: '#/components/parameters/repo'
      - $ref: '#/components/parameters/commit-sha'
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/git-commit'
              examples:
                default:
                  $ref: '#/components/examples/git-commit-2'
        '404':
          $ref: '#/components/responses/not_found'
        '409':
          $ref: '#/components/responses/conflict'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: git
        subcategory: commits
  /repos/{owner}/{repo}/git/matching-refs/{ref}:
    get:
      summary: APIs.io Engineering Platform List matching references
      description: 'Returns an array of references from your Git database that match the supplied name. The `:ref` in the URL must be formatted as `heads/<branch name>` for branches and `tags/<tag name>` for tags. If the `:ref` doesn''t exist in the repository, but existing refs start with `:ref`, they will be returned as an array.


        When you use this endpoint without providing a `:ref`, it will return an array of all the references from your Git database, including notes and stashes if they exist on the server. Anything in the namespace is returned, not just `heads` and `tags`.


        **Note:** You need to explicitly [request a pull request](https://docs.github.com/enterprise-server@3.9/rest/pulls/pulls#get-a-pull-request) to trigger a test merge commit, which checks the mergeability of pull requests. For more information, see "[Checking mergeability of pull requests](https://docs.github.com/enterprise-server@3.9/rest/guides/getting-started-with-the-git-database-api#checking-mergeability-of-pull-requests)".


        If you request matching references for a branch named `feature` but the branch `feature` doesn''t exist, the response can still include other matching head refs that start with the word `feature`, such as `featureA` and `featureB`.'
      tags:
      - Git
      operationId: git/list-matching-refs
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/git/refs#list-matching-references
      parameters:
      - $ref: '#/components/parameters/owner'
      - $ref: '#/components/parameters/repo'
      - $ref: '#/components/parameters/git-ref-only'
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/git-ref'
              examples:
                default:
                  $ref: '#/components/examples/git-ref-items'
          headers:
            Link:
              $ref: '#/components/headers/link'
        '409':
          $ref: '#/components/responses/conflict'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: git
        subcategory: refs
  /repos/{owner}/{repo}/git/ref/{ref}:
    get:
      summary: APIs.io Engineering Platform Get a reference
      description: 'Returns a single reference from your Git database. The `:ref` in the URL must be formatted as `heads/<branch name>` for branches and `tags/<tag name>` for tags. If the `:ref` doesn''t match an existing ref, a `404` is returned.


        **Note:** You need to explicitly [request a pull request](https://docs.github.com/enterprise-server@3.9/rest/pulls/pulls#get-a-pull-request) to trigger a test merge commit, which checks the mergeability of pull requests. For more information, see "[Checking mergeability of pull requests](https://docs.github.com/enterprise-server@3.9/rest/guides/getting-started-with-the-git-database-api#checking-mergeability-of-pull-requests)".'
      tags:
      - Git
      operationId: git/get-ref
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/git/refs#get-a-reference
      parameters:
      - $ref: '#/components/parameters/owner'
      - $ref: '#/components/parameters/repo'
      - $ref: '#/components/parameters/git-ref-only'
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/git-ref'
              examples:
                default:
                  $ref: '#/components/examples/git-ref'
        '404':
          $ref: '#/components/responses/not_found'
        '409':
          $ref: '#/components/responses/conflict'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: git
        subcategory: refs
  /repos/{owner}/{repo}/git/refs:
    post:
      summary: APIs.io Engineering Platform Create a reference
      description: Creates a reference for your repository. You are unable to create new references for empty repositories, even if the commit SHA-1 hash used exists. Empty repositories are repositories without branches.
      tags:
      - Git
      operationId: git/create-ref
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/git/refs#create-a-reference
      parameters:
      - $ref: '#/components/parameters/owner'
      - $ref: '#/components/parameters/repo'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                ref:
                  type: string
                  description: 'The name of the fully qualified reference (ie: `refs/heads/master`). If it doesn''t start with ''refs'' and have at least two slashes, it will be rejected.'
                sha:
                  type: string
                  description: The SHA1 value for this reference.
              required:
              - ref
              - sha
            examples:
              default:
                value:
                  ref: refs/heads/featureA
                  sha: aa218f56b14c9653891f9e74264a383fa43fefbd
      responses:
        '201':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/git-ref'
              examples:
                default:
                  $ref: '#/components/examples/git-ref'
          headers:
            Location:
              example: https://api.github.com/repos/octocat/Hello-World/git/refs/heads/featureA
              schema:
                type: string
        '422':
          $ref: '#/components/responses/validation_failed'
        '409':
          $ref: '#/components/responses/conflict'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: git
        subcategory: refs
  /repos/{owner}/{repo}/git/refs/{ref}:
    patch:
      summary: APIs.io Engineering Platform Update a reference
      description: Updates the provided reference to point to a new SHA. For more information, see "[Git References](https://git-scm.com/book/en/v2/Git-Internals-Git-References)" in the Git documentation.
      tags:
      - Git
      operationId: git/update-ref
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/git/refs#update-a-reference
      parameters:
      - $ref: '#/components/parameters/owner'
      - $ref: '#/components/parameters/repo'
      - $ref: '#/components/parameters/git-ref-only'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                sha:
                  type: string
                  description: The SHA1 value to set this reference to
                force:
                  type: boolean
                  description: Indicates whether to force the update or to make sure the update is a fast-forward update. Leaving this out or setting it to `false` will make sure you're not overwriting work.
                  default: false
              required:
              - sha
            examples:
              default:
                value:
                  sha: aa218f56b14c9653891f9e74264a383fa43fefbd
                  force: true
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/git-ref'
              examples:
                default:
                  $ref: '#/components/examples/git-ref'
        '422':
          $ref: '#/components/responses/validation_failed'
        '409':
          $ref: '#/components/responses/conflict'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: git
        subcategory: refs
    delete:
      summary: APIs.io Engineering Platform Delete a reference
      description: Deletes the provided reference.
      tags:
      - Git
      operationId: git/delete-ref
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/git/refs#delete-a-reference
      parameters:
      - $ref: '#/components/parameters/owner'
      - $ref: '#/components/parameters/repo'
      - $ref: '#/components/parameters/git-ref-only'
      responses:
        '204':
          description: Response
        '422':
          $ref: '#/components/responses/validation_failed'
        '409':
          $ref: '#/components/responses/conflict'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: git
        subcategory: refs
  /repos/{owner}/{repo}/git/tags:
    post:
      summary: APIs.io Engineering Platform Create a tag object
      description: 'Note that creating a tag object does not create the reference that makes a tag in Git. If you want to create an annotated tag in Git, you have to do this call to create the tag object, and then [create](https://docs.github.com/enterprise-server@3.9/rest/git/refs#create-a-reference) the `refs/tags/[tag]` reference. If you want to create a lightweight tag, you only have to [create](https://docs.github.com/enterprise-server@3.9/rest/git/refs#create-a-reference) the tag reference - this call would be unnecessary.


        **Signature verification object**


        The response will include a `verification` object that describes the result of verifying the commit''s signature. The following fields are included in the `verification` object:


        | Name | Type | Description |

        | ---- | ---- | ----------- |

        | `verified` | `boolean` | Indicates whether GitHub considers the signature in this commit to be verified. |

        | `reason` | `string` | The reason for verified value. Possible values and their meanings are enumerated in table below. |

        | `signature` | `string` | The signature that was extracted from the commit. |

        | `payload` | `string` | The value that was signed. |


        These are the possible values for `reason` in the `verification` object:


        | Value | Description |

        | ----- | ----------- |

        | `expired_key` | The key that made the signature is expired. |

        | `not_signing_key` | The "signing" flag is not among the usage flags in the GPG key that made the signature. |

        | `gpgverify_error` | There was an error communicating with the signature verification service. |

        | `gpgverify_unavailable` | The signature verification service is currently unavailable. |

        | `unsigned` | The object does not include a signature. |

        | `unknown_signature_type` | A non-PGP signature was found in the commit. |

        | `no_user` | No user was associated with the `committer` email address in the commit. |

        | `unverified_email` | The `committer` email address in the commit was associated with a user, but the email address is not verified on their account. |

        | `bad_email` | The `committer` email address in the commit is not included in the identities of the PGP key that made the signature. |

        | `unknown_key` | The key that made the signature has not been registered with any user''s account. |

        | `malformed_signature` | There was an error parsing the signature. |

        | `invalid` | The signature could not be cryptographically verified using the key whose key-id was found in the signature. |

        | `valid` | None of the above errors applied, so the signature is considered to be verified. |'
      tags:
      - Git
      operationId: git/create-tag
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/git/tags#create-a-tag-object
      parameters:
      - $ref: '#/components/parameters/owner'
      - $ref: '#/components/parameters/repo'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                tag:
                  type: string
                  description: The tag's name. This is typically a version (e.g., "v0.0.1").
                message:
                  type: string
                  description: The tag message.
                object:
                  type: string
                  description: The SHA of the git object this is tagging.
                type:
                  type: string
                  description: The type of the object we're tagging. Normally this is a `commit` but it can also be a `tree` or a `blob`.
                  enum:
                  - commit
                  - tree
                  - blob
                tagger:
                  type: object

# --- truncated at 32 KB (63 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/apis-io-engineering-platform/refs/heads/main/openapi/engineering-platform-git-api-openapi.yml