openapi: 3.0.0
info:
version: "1.0.0"
x-release: v4
title: APIs.io Engineering Platform Amazon API Gateway 2014 11 13 Repos 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: Repos
description: Interact with GitHub Repos.
paths:
/orgs/{org}/repos:
get:
summary: APIs.io Engineering Platform List organization repositories
description: 'Lists repositories for the specified organization.
**Note:** In order to see the `security_and_analysis` block for a repository you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see "[Managing security managers in your organization](https://docs.github.com/enterprise-server@3.9/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization)."'
tags:
- Repos
operationId: repos/list-for-org
externalDocs:
description: API method documentation
url: https://docs.github.com/enterprise-server@3.9/rest/repos/repos#list-organization-repositories
parameters:
- $ref: '#/components/parameters/org'
- name: type
description: Specifies the types of repositories you want returned. `internal` is not yet supported when a GitHub App calls this endpoint with an installation access token.
in: query
required: false
schema:
type: string
enum:
- all
- public
- private
- forks
- sources
- member
- internal
- name: sort
description: The property to sort the results by.
in: query
required: false
schema:
type: string
enum:
- created
- updated
- pushed
- full_name
default: created
- name: direction
description: 'The order to sort by. Default: `asc` when using `full_name`, otherwise `desc`.'
in: query
required: false
schema:
type: string
enum:
- asc
- desc
- $ref: '#/components/parameters/per-page'
- $ref: '#/components/parameters/page'
responses:
'200':
description: Response
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/minimal-repository'
examples:
default:
$ref: '#/components/examples/minimal-repository-items'
headers:
Link:
$ref: '#/components/headers/link'
x-github:
githubCloudOnly: false
enabledForGitHubApps: true
category: repos
subcategory: repos
post:
summary: APIs.io Engineering Platform Create an organization repository
description: 'Creates a new repository in the specified organization. The authenticated user must be a member of the organization.
OAuth app tokens and personal access tokens (classic) need the `public_repo` or `repo` scope to create a public repository, and `repo` scope to create a private repository.'
tags:
- Repos
operationId: repos/create-in-org
externalDocs:
description: API method documentation
url: https://docs.github.com/enterprise-server@3.9/rest/repos/repos#create-an-organization-repository
parameters:
- $ref: '#/components/parameters/org'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the repository.
description:
type: string
description: A short description of the repository.
homepage:
type: string
description: A URL with more information about the repository.
private:
type: boolean
description: Whether the repository is private.
default: false
visibility:
type: string
description: "The visibility of the repository. **Note**: For GitHub Enterprise Server, this endpoint will only list repositories available to all users on the enterprise. For more information, see \"[Creating an internal repository](https://docs.github.com/enterprise-server@3.9/github/creating-cloning-and-archiving-repositories/about-repository-visibility#about-internal-repositories)\" in the GitHub Help documentation. \nThe `visibility` parameter overrides the `private` parameter when you use both parameters with the `nebula-preview` preview header."
enum:
- public
- private
- internal
has_issues:
type: boolean
description: Either `true` to enable issues for this repository or `false` to disable them.
default: true
has_projects:
type: boolean
description: Either `true` to enable projects for this repository or `false` to disable them. **Note:** If you're creating a repository in an organization that has disabled repository projects, the default is `false`, and if you pass `true`, the API returns an error.
default: true
has_wiki:
type: boolean
description: Either `true` to enable the wiki for this repository or `false` to disable it.
default: true
has_downloads:
description: Whether downloads are enabled.
default: true
type: boolean
example: true
is_template:
type: boolean
description: Either `true` to make this repo available as a template repository or `false` to prevent it.
default: false
team_id:
type: integer
description: The id of the team that will be granted access to this repository. This is only valid when creating a repository in an organization.
auto_init:
type: boolean
description: Pass `true` to create an initial commit with empty README.
default: false
gitignore_template:
type: string
description: Desired language or platform [.gitignore template](https://github.com/github/gitignore) to apply. Use the name of the template without the extension. For example, "Haskell".
license_template:
type: string
description: Choose an [open source license template](https://choosealicense.com/) that best suits your needs, and then use the [license keyword](https://docs.github.com/enterprise-server@3.9/articles/licensing-a-repository/#searching-github-by-license-type) as the `license_template` string. For example, "mit" or "mpl-2.0".
allow_squash_merge:
type: boolean
description: Either `true` to allow squash-merging pull requests, or `false` to prevent squash-merging.
default: true
allow_merge_commit:
type: boolean
description: Either `true` to allow merging pull requests with a merge commit, or `false` to prevent merging pull requests with merge commits.
default: true
allow_rebase_merge:
type: boolean
description: Either `true` to allow rebase-merging pull requests, or `false` to prevent rebase-merging.
default: true
allow_auto_merge:
type: boolean
description: Either `true` to allow auto-merge on pull requests, or `false` to disallow auto-merge.
default: false
delete_branch_on_merge:
type: boolean
description: Either `true` to allow automatically deleting head branches when pull requests are merged, or `false` to prevent automatic deletion. **The authenticated user must be an organization owner to set this property to `true`.**
default: false
use_squash_pr_title_as_default:
type: boolean
description: Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.
default: false
deprecated: true
squash_merge_commit_title:
type: string
enum:
- PR_TITLE
- COMMIT_OR_PR_TITLE
description: 'The default value for a squash merge commit title:
- `PR_TITLE` - default to the pull request''s title.
- `COMMIT_OR_PR_TITLE` - default to the commit''s title (if only one commit) or the pull request''s title (when more than one commit).'
squash_merge_commit_message:
type: string
enum:
- PR_BODY
- COMMIT_MESSAGES
- BLANK
description: 'The default value for a squash merge commit message:
- `PR_BODY` - default to the pull request''s body.
- `COMMIT_MESSAGES` - default to the branch''s commit messages.
- `BLANK` - default to a blank commit message.'
merge_commit_title:
type: string
enum:
- PR_TITLE
- MERGE_MESSAGE
description: 'The default value for a merge commit title.
- `PR_TITLE` - default to the pull request''s title.
- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).'
merge_commit_message:
type: string
enum:
- PR_BODY
- PR_TITLE
- BLANK
description: 'The default value for a merge commit message.
- `PR_TITLE` - default to the pull request''s title.
- `PR_BODY` - default to the pull request''s body.
- `BLANK` - default to a blank commit message.'
required:
- name
examples:
default:
value:
name: Hello-World
description: This is your first repository
homepage: https://github.com
private: false
has_issues: true
has_projects: true
has_wiki: true
responses:
'201':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/full-repository'
examples:
default:
$ref: '#/components/examples/full-repository'
headers:
Location:
example: https://api.github.com/repos/octocat/Hello-World
schema:
type: string
'403':
$ref: '#/components/responses/forbidden'
'422':
$ref: '#/components/responses/validation_failed'
x-github:
githubCloudOnly: false
enabledForGitHubApps: true
category: repos
subcategory: repos
/repos/{owner}/{repo}:
get:
summary: APIs.io Engineering Platform Get a repository
description: 'The `parent` and `source` objects are present when the repository is a fork. `parent` is the repository this repository was forked from, `source` is the ultimate source for the network.
**Note:** In order to see the `security_and_analysis` block for a repository you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see "[Managing security managers in your organization](https://docs.github.com/enterprise-server@3.9/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization)."'
tags:
- Repos
operationId: repos/get
externalDocs:
description: API method documentation
url: https://docs.github.com/enterprise-server@3.9/rest/repos/repos#get-a-repository
parameters:
- $ref: '#/components/parameters/owner'
- $ref: '#/components/parameters/repo'
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/full-repository'
examples:
default-response:
$ref: '#/components/examples/full-repository-default-response'
'403':
$ref: '#/components/responses/forbidden'
'404':
$ref: '#/components/responses/not_found'
'301':
$ref: '#/components/responses/moved_permanently'
x-github:
githubCloudOnly: false
enabledForGitHubApps: true
category: repos
subcategory: repos
patch:
summary: APIs.io Engineering Platform Update a repository
description: '**Note**: To edit a repository''s topics, use the [Replace all repository topics](https://docs.github.com/enterprise-server@3.9/rest/repos/repos#replace-all-repository-topics) endpoint.'
tags:
- Repos
operationId: repos/update
externalDocs:
description: API method documentation
url: https://docs.github.com/enterprise-server@3.9/rest/repos/repos#update-a-repository
parameters:
- $ref: '#/components/parameters/owner'
- $ref: '#/components/parameters/repo'
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the repository.
description:
type: string
description: A short description of the repository.
homepage:
type: string
description: A URL with more information about the repository.
private:
type: boolean
description: "Either `true` to make the repository private or `false` to make it public. Default: `false`. \n**Note**: You will get a `422` error if the organization restricts [changing repository visibility](https://docs.github.com/enterprise-server@3.9/articles/repository-permission-levels-for-an-organization#changing-the-visibility-of-repositories) to organization owners and a non-owner tries to change the value of private."
default: false
visibility:
type: string
description: The visibility of the repository.
enum:
- public
- private
- internal
security_and_analysis:
type: object
description: 'Specify which security and analysis features to enable or disable for the repository.
To use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see "[Managing security managers in your organization](https://docs.github.com/enterprise-server@3.9/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization)."
For example, to enable GitHub Advanced Security, use this data in the body of the `PATCH` request:
`{ "security_and_analysis": {"advanced_security": { "status": "enabled" } } }`.
You can check which security and analysis features are currently enabled by using a `GET /repos/{owner}/{repo}` request.'
nullable: true
properties:
advanced_security:
type: object
description: Use the `status` property to enable or disable GitHub Advanced Security for this repository. For more information, see "[About GitHub Advanced Security](/github/getting-started-with-github/learning-about-github/about-github-advanced-security)."
properties:
status:
type: string
description: Can be `enabled` or `disabled`.
secret_scanning:
type: object
description: Use the `status` property to enable or disable secret scanning for this repository. For more information, see "[About secret scanning](/code-security/secret-security/about-secret-scanning)."
properties:
status:
type: string
description: Can be `enabled` or `disabled`.
secret_scanning_push_protection:
type: object
description: Use the `status` property to enable or disable secret scanning push protection for this repository. For more information, see "[Protecting pushes with secret scanning](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)."
properties:
status:
type: string
description: Can be `enabled` or `disabled`.
has_issues:
type: boolean
description: Either `true` to enable issues for this repository or `false` to disable them.
default: true
has_projects:
type: boolean
description: Either `true` to enable projects for this repository or `false` to disable them. **Note:** If you're creating a repository in an organization that has disabled repository projects, the default is `false`, and if you pass `true`, the API returns an error.
default: true
has_wiki:
type: boolean
description: Either `true` to enable the wiki for this repository or `false` to disable it.
default: true
is_template:
type: boolean
description: Either `true` to make this repo available as a template repository or `false` to prevent it.
default: false
default_branch:
type: string
description: Updates the default branch for this repository.
allow_squash_merge:
type: boolean
description: Either `true` to allow squash-merging pull requests, or `false` to prevent squash-merging.
default: true
allow_merge_commit:
type: boolean
description: Either `true` to allow merging pull requests with a merge commit, or `false` to prevent merging pull requests with merge commits.
default: true
allow_rebase_merge:
type: boolean
description: Either `true` to allow rebase-merging pull requests, or `false` to prevent rebase-merging.
default: true
delete_branch_on_merge:
type: boolean
description: Either `true` to allow automatically deleting head branches when pull requests are merged, or `false` to prevent automatic deletion.
default: false
allow_update_branch:
type: boolean
description: Either `true` to always allow a pull request head branch that is behind its base branch to be updated even if it is not required to be up to date before merging, or false otherwise.
default: false
use_squash_pr_title_as_default:
type: boolean
description: Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.
default: false
deprecated: true
squash_merge_commit_title:
type: string
enum:
- PR_TITLE
- COMMIT_OR_PR_TITLE
description: 'The default value for a squash merge commit title:
- `PR_TITLE` - default to the pull request''s title.
- `COMMIT_OR_PR_TITLE` - default to the commit''s title (if only one commit) or the pull request''s title (when more than one commit).'
squash_merge_commit_message:
type: string
enum:
- PR_BODY
- COMMIT_MESSAGES
- BLANK
description: 'The default value for a squash merge commit message:
- `PR_BODY` - default to the pull request''s body.
- `COMMIT_MESSAGES` - default to the branch''s commit messages.
- `BLANK` - default to a blank commit message.'
merge_commit_title:
type: string
enum:
- PR_TITLE
- MERGE_MESSAGE
description: 'The default value for a merge commit title.
- `PR_TITLE` - default to the pull request''s title.
- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).'
merge_commit_message:
type: string
enum:
- PR_BODY
- PR_TITLE
- BLANK
description: 'The default value for a merge commit message.
- `PR_TITLE` - default to the pull request''s title.
- `PR_BODY` - default to the pull request''s body.
- `BLANK` - default to a blank commit message.'
archived:
type: boolean
description: Whether to archive this repository. `false` will unarchive a previously archived repository.
default: false
allow_forking:
type: boolean
description: Either `true` to allow private forks, or `false` to prevent private forks.
default: false
web_commit_signoff_required:
type: boolean
description: Either `true` to require contributors to sign off on web-based commits, or `false` to not require contributors to sign off on web-based commits.
default: false
examples:
default:
value:
name: Hello-World
description: This is your first repository
homepage: https://github.com
private: true
has_issues: true
has_projects: true
has_wiki: true
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/full-repository'
examples:
default:
$ref: '#/components/examples/full-repository'
'307':
$ref: '#/components/responses/temporary_redirect'
'403':
$ref: '#/components/responses/forbidden'
'422':
$ref: '#/components/responses/validation_failed'
'404':
$ref: '#/components/responses/not_found'
x-github:
githubCloudOnly: false
enabledForGitHubApps: true
category: repos
subcategory: repos
previews:
- required: false
name: nebula
note: 'You can set the visibility of a repository using the new `visibility` parameter in the [Repositories API](https://docs.github.com/enterprise-server@3.9/rest/repos), and get a repository''s visibility with a new response key. For more information, see the [blog post](https://developer.github.com/changes/2019-12-03-internal-visibility-changes/).
To access repository visibility during the preview period, you must provide a custom [media type](https://docs.github.com/enterprise-server@3.9/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types) in the `Accept` header:
```shell
application/vnd.github.nebula-preview+json
```'
- required: false
name: baptiste
note: 'The `is_template` and `template_repository` keys are currently available for developer to preview. See [Create a repository using a template](https://docs.github.com/enterprise-server@3.9/rest/repos/repos#create-a-repository-using-a-template) to learn how to create template repositories. To access these new response keys during the preview period, you must provide a custom [media type](https://docs.github.com/enterprise-server@3.9/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types) in the `Accept` header:
```shell
application/vnd.github.baptiste-preview+json
```'
delete:
summary: APIs.io Engineering Platform Delete a repository
description: 'Deleting a repository requires admin access.
If an organization owner has configured the organization to prevent members from deleting organization-owned
repositories, you will get a `403 Forbidden` response.
OAuth app tokens and personal access tokens (classic) need the `delete_repo` scope to use this endpoint.'
tags:
- Repos
operationId: repos/delete
externalDocs:
description: API method documentation
url: https://docs.github.com/enterprise-server@3.9/rest/repos/repos#delete-a-repository
parameters:
- $ref: '#/components/parameters/owner'
- $ref: '#/components/parameters/repo'
responses:
'204':
description: Response
'403':
description: 'If an organization owner has configured the organization to prevent members from deleting organization-owned repositories, a member will get this response:'
content:
application/json:
schema:
type: object
properties:
message:
type: string
documentation_url:
type: string
examples:
default:
value:
message: Organization members cannot delete repositories.
documentation_url: https://docs.github.com/enterprise-server@3.9/rest/repos/repos#delete-a-repository
'307':
$ref: '#/components/responses/temporary_redirect'
'404':
$ref: '#/components/responses/not_found'
x-github:
githubCloudOnly: false
enabledForGitHubApps: true
category: repos
subcategory: repos
/repos/{owner}/{repo}/autolinks:
get:
summary: APIs.io Engineering Platform Get all autolinks of a repository
description: 'Gets all autolinks that are configured for a repository.
Information about autolinks are only available to repository administrators.'
tags:
- Repos
operationId: repos/list-autolinks
externalDocs:
description: API method documentation
url: https://docs.github.com/enterprise-server@3.9/rest/repos/autolinks#get-all-autolinks-of-a-repository
parameters:
- $ref: '#/components/parameters/owner'
- $ref: '#/components/parameters/repo'
responses:
'200':
description: Response
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/autolink'
examples:
default:
$ref: '#/components/examples/autolink-items'
x-github:
githubCloudOnly: false
enabledForGitHubApps: true
category: repos
subcategory: autolinks
post:
summary: APIs.io Engineering Platform Create an autolink reference for a repository
description: Users with admin access to the repository can create an autolink.
tags:
- Repos
operationId: repos/create-autolink
externalDocs:
description: API method documentation
url: https://docs.github.com/enterprise-server@3.9/rest/repos/autolinks#create-an-autolink-reference-for-a-repository
parameters:
- $ref: '#/components/para
# --- truncated at 32 KB (796 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/apis-io-engineering-platform/refs/heads/main/openapi/engineering-platform-repos-api-openapi.yml