openapi: 3.0.0
info:
version: 2015-07-09
x-release: v4
title: APIs.io Engineering Platform Amazon API Gateway 2014 11 13 Git API
description: Amazon API Gateway
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.
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
version: 1.0.0
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/` for branches and `tags/` 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/` for branches and `tags/` 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
description: An object with information about the individual creating the tag.
properties:
name:
type: string
description: The name of the author of the tag
email:
type: string
description: The email of the author of the tag
date:
type: string
format: date-time
description: 'When this object was tagged. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`.'
required:
- name
- email
required:
- tag
- message
- object
- type
examples:
default:
value:
tag: v0.0.1
message: initial version
object: c3d0be41ecbe669545ee3e94d31ed9a4bc91ee3c
type: commit
tagger:
name: Monalisa Octocat
email: octocat@github.com
date: '2011-06-17T14:53:35-07:00'
responses:
'201':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/git-tag'
examples:
default:
$ref: '#/components/examples/git-tag'
headers:
Location:
example: https://api.github.com/repos/octocat/Hello-World/git/tags/940bd336248efae0f9ee5bc7b2d5c985887b16ac
schema:
type: string
'422':
$ref: '#/components/responses/validation_failed'
'409':
$ref: '#/components/responses/conflict'
x-github:
githubCloudOnly: false
enabledForGitHubApps: true
category: git
subcategory: tags
/repos/{owner}/{repo}/git/tags/{tag_sha}:
get:
summary: APIs.io Engineering Platform Get a tag
description: '**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/get-tag
externalDocs:
description: API method documentation
url: https://docs.github.com/enterprise-server@3.9/rest/git/tags#get-a-tag
parameters:
- $ref: '#/components/parameters/owner'
- $ref: '#/components/parameters/repo'
- name: tag_sha
in: path
required: true
schema:
type: string
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/git-tag'
examples:
default:
$ref: '#/components/examples/git-tag'
'404':
$ref: '#/components/responses/not_found'
'409':
$ref: '#/components/responses/conflict'
x-github:
githubCloudOnly: false
enabledForGitHubApps: true
category: git
subcategory: tags
/repos/{owner}/{repo}/git/trees:
post:
summary: APIs.io Engineering Platform Create a tree
description: 'The tree creation API accepts nested entries. If you specify both a tree and a nested path modifying that tree, this endpoint will overwrite the contents of the tree with the new path contents, and create a new tree structure.
If you use this endpoint to add, delete, or modify the file contents in a tree, you will need to commit the tree and then update a branch to point to the commit. For more information see "[Create a commit](https://docs.github.com/enterprise-server@3.9/rest/git/commits#create-a-commit)" and "[Update a reference](https://docs.github.com/enterprise-server@3.9/rest/git/refs#update-a-reference)."
Returns an error if you try to delete a file that does not exist.'
tags:
- Git
operationId: git/create-tree
externalDocs:
description: API method documentation
url: https://docs.github.com/enterprise-server@3.9/rest/git/trees#create-a-tree
parameters:
- $ref: '#/components/parameters/owner'
- $ref: '#/components/parameters/repo'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
tree:
type: array
description: Objects (of `path`, `mode`, `type`, and `sha`) specifying a tree structure.
items:
type: object
properties:
path:
type: string
description: The file referenced in the tree.
mode:
type: string
description: The file mode; one of `100644` for file (blob), `100755` for executable (blob), `040000` for subdirectory (tree), `160000` for submodule (commit), or `120000` for a blob that specifies the path of a symlink.
enum:
- '100644'
- '100755'
- '040000'
- '160000'
- '120000'
type:
type: string
description: Either `blob`, `tree`, or `commit`.
enum:
- blob
- tree
- commit
sha:
type: string
description: "The SHA1 checksum ID of the object in the tree. Also called `tree.sha`. If the value is `null` then the file will be deleted. \n \n**Note:** Use either `tree.sha` or `content` to specify the contents of the entry. Using both `tree.sha` and `content` will return an error."
nullable: true
content:
type: string
description: "The content you want this file to have. GitHub will write this blob out and use that SHA for this entry. Use either this, or `tree.sha`. \n \n**Note:** Use either `tree.sha` or `content` to specify the contents of the entry. Using both `tree.sha` and `content` will return an error."
base_tree:
type: string
description: 'The SHA1 of an existing Git tree object which will be used as the base for the new tree. If provided, a new Git tree object will be created from entries in the Git tree object pointed to by `base_tree` and entries defined in the `tree` parameter. Entries defined in the `tree` parameter will overwrite items from `base_tree` with the same `path`. If you''re creating new changes on a branch, then normally you''d set `base_tree` to the SHA1 of the Git tree object of the current latest commit on the branch you''re working on.
If not provided, GitHub will create a new Git tree object from only the entries defined in the `tree` parameter. If you create a new commit pointing to such a tree, then all files which were a part of the parent commit''s tree and were not defined in the `tree` parameter will be listed as deleted by the new commit.
'
required:
- tree
examples:
default:
value:
base_tree: 9fb037999f264ba9a7fc6274d15fa3ae2ab98312
tree:
- path: file.rb
mode: '100644'
type: blob
sha: 44b4fc6d56897b048c772eb4087f854f46256132
responses:
'201':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/git-tree'
examples:
default:
$ref: '#/components/examples/git-tree'
headers:
Location:
example: https://api.github.com/repos/octocat/Hello-World/trees/cd8274d15fa3ae2ab983129fb037999f264ba9a7
schema:
type: string
'422':
$ref: '#/components/responses/validation_failed'
'404':
$ref: '#/components/responses/not_found'
'403':
$ref: '#/components/responses/forbidden'
'409':
$ref: '#/components/responses/conflict'
x-github:
githubCloudOnly: false
enabledForGitHubApps: true
category: git
subcategory: trees
/repos/{owner}/{repo}/git/trees/{tree_sha}:
get:
summary: APIs.io Engineering Platform Get a tree
description: 'Returns a single tree using the SHA1 value or ref name for that tree.
If `truncated` is `true` in the response then the number of items in the `tree` array exceeded our maximum limit. If you need to fetch more items, use the non-recursive method of fetching trees, and fetch one sub-tree at a time.
**Note**: The limit for the `tree` array is 100,000 entries with a maximum size of 7 MB when using the `recursive` parameter.'
tags:
- Git
operationId: git/get-tree
externalDocs:
description: API method documentation
url: https://docs.github.com/enterprise-server@3.9/rest/git/trees#get-a-tree
parameters:
- $ref: '#/components/parameters/owner'
- $ref: '#/components/parameters/repo'
- name: tree_sha
description: The SHA1 value or ref (branch or tag) name of the tree.
in: path
required: true
schema:
type: string
x-multi-segment: true
- name: recursive
description: 'Setting this parameter to any value returns the objects or subtrees referenced by the tree specified in `:tree_sha`. For example, setting `recursive` to any of the following will enable returning objects or subtrees: `0`, `1`, `"true"`, and `"false"`. Omit this parameter to prevent recursively returning objects or subtrees.'
in: query
required: false
schema:
type: string
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/git-tree'
examples:
default-response:
$ref: '#/components/examples/git-tree-default-response'
response-recursively-retrieving-a-tree:
$ref: '#/components/examples/git-tree-response-recursively-retrieving-a-tree'
'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: trees
components:
responses:
forbidden:
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/basic-error'
not_found:
description: Resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/basic-error'
conflict:
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/basic-error'
validation_failed:
description: Validation failed, or the endpoint has been spammed.
content:
application/json:
schema:
$ref: '#/components/schemas/validation-error'
headers:
link:
example: ; rel="next", ; rel="last"
schema:
type: string
examples:
git-commit:
value:
sha: 7638417db6d59f3c431d3e1f261cc637155684cd
node_id: MDY6Q29tbWl0NzYzODQxN2RiNmQ1OWYzYzQzMWQzZTFmMjYxY2M2MzcxNTU2ODRjZA==
url: https://api.github.com/repos/octocat/Hello-World/git/commits/7638417db6d59f3c431d3e1f261cc637155684cd
author:
date: '2014-11-07T22:01:45Z'
name: Monalisa Octocat
email: octocat@github.com
committer:
date: '2014-11-07T22:01:45Z'
name: Monalisa Octocat
email: octocat@github.com
message: my commit message
tree:
url: https://api.github.com/repos/octocat/Hello-World/git/trees/827efc6d56897b048c772eb4087f854f46256132
sha: 827efc6d56897b048c772eb4087f854f46256132
parents:
- url: https://api.github.com/repos/octocat/Hello-World/git/commits/7d1b31e74ee336d15cbd21741bc88a537ed063a0
sha: 7d1b31e74ee336d15cbd21741bc88a537ed063a0
html_url: https://github.com/octocat/Hello-World/commit/7d1b31e74ee336d15cbd21741bc88a537ed063a0
verification:
verified: false
reason: unsigned
signature: null
payload: null
html_url: https://github.com/octocat/Hello-World/commit/7638417db6d59f3c431d3e1f261cc637155684cd
git-tree-default-response:
summary: Default response
value:
sha: 9fb037999f264ba9a7fc6274d15fa3ae2ab98312
url: https://api.github.com/repos/octocat/Hello-World/trees/9fb037999f264ba9a7fc6274d15fa3ae2ab98312
tree:
- path: file.rb
mode: '100644'
type: blob
size: 30
sha: 44b4fc6d56897b048c772eb4087f854f46256132
url: https://api.github.com/repos/octocat/Hello-World/git/blobs/44b4fc6d56897b048c772eb4087f854f46256132
- path: subdir
mode: '040000'
type: tree
sha: f484d249c660418515fb01c2b9662073663c242e
url: https://api.github.com/repos/octocat/Hello-World/git/blobs/f484d249c660418515fb01c2b9662073663c242e
- path: exec_file
mode: '100755'
type: blob
size: 75
sha: 45b983be36b73c0788dc9cbcb76cbb80fc7bb057
url: https://api.github.com/repos/octocat/Hello-World/git/blobs/45b983be36b73c0788dc9cbcb76cbb80fc7bb057
truncated: false
blob:
value:
content: Q29udGVudCBvZiB0aGUgYmxvYg==
encoding: base64
url: https://api.github.com/repos/octocat/example/git/blobs/3a0f86fb8db8eea7ccbb9a95f325ddbedfb25e15
sha: 3a0f86fb8db8eea7ccbb9a95f325ddbedfb25e15
size: 19
node_id: Q29udGVudCBvZiB0aGUgYmxvYg==
git-tree:
value:
sha: cd8274d15fa3ae2ab983129fb037999f264ba9a7
url: https://api.github.com/repos/octocat/Hello-World/trees/cd8274d15fa3ae2ab983129fb037999f264ba9a7
tree:
- path: file.rb
mode: '100644'
type: blob
size: 132
sha: 7c258a9869f33c1e1e1f74fbb32f07c86cb5a75b
url: https://api.github.com/repos/octocat/Hello-World/git/blobs/7c258a9869f33c1e1e1f74fbb32f07c86cb5a75b
truncated: true
short-blob:
value:
url: https://api.github.com/repos/octocat/example/git/blobs/3a0f86fb8db8eea7ccbb9a95f325ddbedfb25e15
sha: 3a0f86fb8db8eea7ccbb9a95f325ddbedfb25e15
git-tree-response-recursively-retrieving-a-tree:
summary: Response recursively retrieving a tree
value:
sha: fc6274d15fa3ae2ab983129fb037999f264ba9a7
url: https://api.github.com/repos/octocat/Hello-World/trees/fc6274d15fa3ae2ab983129fb037999f264ba9a7
tree:
- path: subdir/file.txt
mode: '100644'
type: blob
size: 132
sha: 7c258a9869f33c1e1e1f74fbb32f07c86cb5a75b
url: https://api.github.com/repos/octocat/Hello-World/git/7c258a9869f33c1e1e1f74fbb32f07c86cb5a75b
truncated: false
git-commit-2:
value:
sha: 7638417db6d59f3c431d3e1f261cc637155684cd
node_id: MDY6Q29tbWl0NmRjYjA5YjViNTc4NzVmMzM0ZjYxYWViZWQ2OTVlMmU0MTkzZGI1ZQ==
url: https://api.github.com/repos/octocat/Hello-World/git/commits/7638417db6d59f3c431d3e1f261cc637155684cd
html_url: https://github.com/octocat/Hello-World/commit/7638417db6d59f3c431d3e1f261cc637155684cd
author:
date: '2014-11-07T22:01:45Z'
name: Monalisa Octocat
email: octocat@github.com
committer:
date: '2014-11-07T22:01:45Z'
name: Monalisa Octocat
email: octocat@github.com
message: added readme, because im a good github citizen
tree:
url: https://api.github.com/repos/octocat/Hello-World/git/trees/691272480426f78a0138979dd3ce63b77f706feb
sha: 691272480426f78a0138979dd3ce63b77f706feb
parents:
- url: https://api.github.com/repos/octocat/Hello-World/git/commits/1acc419d4d6a9ce985db7be48c6349a0475975b5
sha: 1acc419d4d6a9ce985db7be48c6349a0475975b5
html_url: https://github.com/octocat/Hello-World/commit/7638417db6d59f3c431d3e1f261cc637155684cd
verification:
verified: false
reason: unsigned
signature: null
payload: null
git-ref:
value:
ref: refs/heads/featureA
node_id: MDM6UmVmcmVmcy9oZWFkcy9mZWF0dXJlQQ==
url: https://api.github.com/repos/octocat/Hello-World/git/refs/heads/featureA
object:
type: commit
sha: aa218f56b14c9653891f9e74264a383fa43fefbd
url: https://api.github.com/repos/octocat/Hello-World/git/commits/aa218f56b14c9653891f9e74264a383fa43fefbd
git-ref-items:
value:
- ref: refs/heads/feature-a
node_id: MDM6UmVmcmVmcy9oZWFkcy9mZWF0dXJlLWE=
url: https://api.github.com/repos/octocat/Hello-World/git/refs/heads/feature-a
object:
type: commit
sha: aa218f56b14c9653891f9e74264a383fa43fefbd
url: https://api.github.com/repos/octocat/Hello-World/git/commits/aa218f56b14c9653891f9e74264a383fa43fefbd
- ref: refs/heads/feature-b
node_id: MDM6UmVmcmVmcy9oZWFkcy9mZWF0dXJlLWI=
url: https://api.github.com/repos/octocat/Hello-World/git/refs/heads/feature-b
object:
type: commit
sha: 612077ae6dffb4d2fbd8ce0cccaa58893b07b5ac
url: https://api.github.com/repos/octocat/Hello-World/git/commits/612077ae6dffb4d2fbd8ce0cccaa58893b07b5ac
git-tag:
value:
node_id: MDM6VGFnOTQwYmQzMzYyNDhlZmFlMGY5ZWU1YmM3YjJkNWM5ODU4ODdiMTZhYw==
tag: v0.0.1
sha: 940bd336248efae0f9ee5bc7b2d5c985887b16ac
url: https://api.github.com/repos/octocat/Hello-World/git/tags/940bd336248efae0f9ee5bc7b2d5c985887b16ac
message: initial version
tagger:
name: Monalisa Octocat
email: octocat@github.com
date: '2014-11-07T22:01:45Z'
object:
type: commit
sha: c3d0be41ecbe669545ee3e94d31ed9a4bc91ee3c
url: https://api.github.com/repos/octocat/Hello-World/git/commits/c3d0be41ecbe669545ee3e94d31ed9a4bc91ee3c
verification:
verified: false
reason: unsigned
signature: null
payload: null
parameters:
owner:
name: owner
description: The account owner of the repository. The name is not case sensitive.
in: path
required: true
schema:
type: string
repo:
name: repo
description: The name of the repository without the `.git` extension. The name is not case sensitive.
in: path
required: true
schema:
type: string
commit-sha:
name: commit_sha
description: The SHA of the commit.
in: path
required: true
schema:
type: string
x-multi-segment: true
git-ref-only:
name: ref
description: The Git reference. For more information, see "[Git References](https://git-scm.com/book/en/v2/Git-Internals-Git-References)" in the Git documentation.
in: path
required: true
example: heads/feature-a
schema:
type: string
x-multi-segment: true
schemas:
basic-error:
title: Basic Error
description: Basic Error
type: object
properties:
message:
type: string
documentation_url:
type: string
url:
type: string
status:
type: string
git-commit:
title: Git Commit
description: Low-level Git commit operations within a repository
type: object
properties:
sha:
description: SHA for the commit
example: 7638417db6d59f3c431d3e1f261cc637155684cd
type: string
node_id:
type: string
url:
type: string
format: uri
author:
description: Identifying information for the git-user
type: object
properties:
date:
description: Timestamp of the commit
example: '2014-08-09T08:02:04+12:00'
format: date-time
type: string
email:
type: string
description: Git email address of the user
example: monalisa.octocat@example.com
name:
description: Name of the git user
example: Monalisa Octocat
type: string
required:
- email
- name
- date
committer:
description: Identifying information for the git-user
type: object
properties:
date:
description: Timestamp of the commit
example: '2014-08-09T08:02:04+12:00'
format: date-time
type: string
email:
type: string
description: Git email address of the user
example: monalisa.octocat@example.com
name:
description: Name of the git user
example: Monalisa Octocat
type: string
required:
- email
- name
- date
message:
description: Message describing the purpose of the commit
example: 'Fix #42'
type: string
tree:
type: object
properties:
sha:
description: SHA for the commit
example: 7638417db6d59f3c431d3e1f261cc637155684cd
type: string
url:
type: string
format: uri
required:
- sha
- url
parents:
type: array
items:
type: object
properties:
sha:
description: SHA for the commit
example: 7638417db6d59f3c431d3e1f261cc637155684cd
type: string
url:
type: string
format: uri
html_url:
type: string
format: uri
required:
- sha
- url
- html_url
verification:
type: object
properties:
verified:
type: boolean
reason:
type: string
signature:
type: string
nullable: true
payload:
type: string
nullable: true
required:
- verified
- reason
- signature
- payload
html_url:
type: string
format: uri
required:
- sha
- node_id
- url
- html_url
- author
- committer
- tree
- message
- parents
- verification
validation-error:
title: Validation Error
description: Validation Error
type: object
required:
- message
- documentation_url
properties:
message:
type: string
documentation_url:
type: string
errors:
type: array
items:
type: object
required:
- code
properties:
resource:
type: string
field:
type: string
message:
type: string
code:
type: string
index:
type: integer
value:
oneOf:
- type: string
nullable: true
- type: integer
nullable: true
- type: array
nullable: true
items:
type: string
git-tree:
title: Git Tree
description: The hierarchy between files in a Git repository.
type: object
properties:
sha:
type: string
url:
type: string
format: uri
truncated:
type: boolean
tree:
description: Objects specifying a tree structure
type: array
items:
type: object
properties:
path:
type: string
example: test/file.rb
mode:
type: string
example: '040000'
type:
type: string
example: tree
sha:
type: string
example: 23f6827669e43831def8a7ad935069c8bd418261
size:
type: integer
example: 12
url:
type: string
example: https://api.github.com/repos/owner-482f3203ecf01f67e9deb18e/BBB_Private_Repo/git/blobs/23f6827669e43831def8a7ad935069c8bd418261
example:
- path: file.rb
mode: '100644'
type: blob
size: 30
sha: 44b4fc6d56897b048c772eb4087f854f46256132
url: https://api.github.com/repos/octocat/Hello-World/git/blobs/44b4fc6d56897b048c772eb4087f854f46256132
properties:
path:
type: string
mode:
type: string
type:
type: string
size:
type: integer
sha:
type: string
url:
type: string
required:
- path
- mode
- type
- sha
- url
- size
required:
- sha
- url
- tree
- truncated
verification:
title: Verification
type: object
properties:
verified:
type: boolean
reason:
type: string
payload:
type: string
nullable: true
signature:
type: string
nullable: true
required:
- verified
- reason
- payload
- signature
git-tag:
title: Git Tag
description: Metadata for a Git tag
type: object
properties:
node_id:
type: string
example: MDM6VGFnOTQwYmQzMzYyNDhlZmFlMGY5ZWU1YmM3YjJkNWM5ODU4ODdiMTZhYw==
tag:
description: Name of the tag
example: v0.0.1
type: string
sha:
type: string
example: 940bd336248efae0f9ee5bc7b2d5c985887b16ac
url:
description: URL for the tag
example: https://api.github.com/repositories/42/git/tags/940bd336248efae0f9ee5bc7b2d5c985887b16ac
type: string
format: uri
message:
description: Message describing the purpose of the tag
example: Initial public release
type: string
tagger:
type: object
properties:
date:
type: string
email:
type: string
name:
type: string
required:
- date
- email
- name
object:
type: object
properties:
sha:
type: string
type:
type: string
url:
type: string
format: uri
required:
- sha
- type
- url
verification:
$ref: '#/components/schemas/verification'
required:
- sha
- url
- node_id
- tagger
- object
- tag
- message
short-blob:
title: Short Blob
description: Short Blob
type: object
properties:
url:
type: string
sha:
type: string
required:
- url
- sha
blob:
title: Blob
description: Blob
type: object
properties:
content:
type: string
encoding:
type: string
url:
type: string
format: uri
sha:
type: string
size:
type: integer
nullable: true
node_id:
type: string
highlighted_content:
type: string
required:
- sha
- url
- node_id
- size
- content
- encoding
git-ref:
title: Git Reference
description: Git references within a repository
type: object
properties:
ref:
type: string
node_id:
type: string
url:
type: string
format: uri
object:
type: object
properties:
type:
type: string
sha:
description: SHA for the reference
example: 7638417db6d59f3c431d3e1f261cc637155684cd
type: string
minLength: 40
maxLength: 40
url:
type: string
format: uri
required:
- type
- sha
- url
required:
- ref
- node_id
- url
- object
securitySchemes:
hmac:
type: apiKey
name: Authorization
in: header
description: Amazon Signature authorization v4
x-amazon-apigateway-authtype: awsSigv4
externalDocs:
description: Amazon Web Services documentation
url: https://docs.aws.amazon.com/apigateway/
x-hasEquivalentPaths: true