{ "opencollection": "1.0.0", "info": { "name": "Github Installations API", "version": "1.1.4" }, "items": [ { "info": { "name": "Installations", "type": "folder" }, "items": [ { "info": { "name": "GitHub List Installation Requests for the Authenticated App", "type": "http" }, "http": { "method": "GET", "url": "{protocol}://{hostname}/api/v3/app/installation-requests", "params": [ { "name": "per_page", "value": "", "type": "query", "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/enterprise-server@3.9/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"" }, { "name": "page", "value": "", "type": "query", "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/enterprise-server@3.9/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"" } ] }, "docs": "Lists all the pending installation requests for the authenticated GitHub App." }, { "info": { "name": "GitHub List Installations for the Authenticated App", "type": "http" }, "http": { "method": "GET", "url": "{protocol}://{hostname}/api/v3/app/installations", "params": [ { "name": "per_page", "value": "", "type": "query", "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/enterprise-server@3.9/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"" }, { "name": "page", "value": "", "type": "query", "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/enterprise-server@3.9/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"" }, { "name": "since", "value": "", "type": "query", "description": "Only show results that were last updated after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`." }, { "name": "outdated", "value": "2026-04-17T12:00:00Z", "type": "query" } ] }, "docs": "The permissions the installation has are included under the `permissions` key.\n\nYou must use a [JWT](https://docs.github.com/enterprise-server@3.9/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint." }, { "info": { "name": "GitHub Get an Installation for the Authenticated App", "type": "http" }, "http": { "method": "GET", "url": "{protocol}://{hostname}/api/v3/app/installations/:installation_id", "params": [ { "name": "installation_id", "value": "", "type": "path", "description": "The unique identifier of the installation." } ] }, "docs": "Enables an authenticated GitHub App to find an installation's information using the installation id.\n\nYou must use a [JWT](https://docs.github.com/enterprise-server@3.9/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint." }, { "info": { "name": "GitHub Delete an Installation for the Authenticated App", "type": "http" }, "http": { "method": "DELETE", "url": "{protocol}://{hostname}/api/v3/app/installations/:installation_id", "params": [ { "name": "installation_id", "value": "", "type": "path", "description": "The unique identifier of the installation." } ] }, "docs": "Uninstalls a GitHub App on a user, organization, or business account. If you prefer to temporarily suspend an app's access to your account's resources, then we recommend the \"[Suspend an app installation](https://docs.github.com/enterprise-server@3.9/rest/apps/apps#suspend-an-app-installation)\" endpoint.\n\nYou must use a [JWT](https://docs.github.com/enterprise-server@3.9/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint." }, { "info": { "name": "GitHub Create an Installation Access Token for an App", "type": "http" }, "http": { "method": "POST", "url": "{protocol}://{hostname}/api/v3/app/installations/:installation_id/access_tokens", "params": [ { "name": "installation_id", "value": "", "type": "path", "description": "The unique identifier of the installation." } ], "body": { "type": "json", "data": "{}" } }, "docs": "Creates an installation access token that enables a GitHub App to make authenticated API requests for the app's installation on an organization or individual account. Installation tokens expire one hour from the time you create them. Using an expired token produces a status code of `401 - Unauthorized`, and requires creating a new installation token. By default the installation token has access to all repositories that the installation can access. \n\nOptionally, you can use the `repositories` or " }, { "info": { "name": "GitHub Suspend an App Installation", "type": "http" }, "http": { "method": "PUT", "url": "{protocol}://{hostname}/api/v3/app/installations/:installation_id/suspended", "params": [ { "name": "installation_id", "value": "", "type": "path", "description": "The unique identifier of the installation." } ] }, "docs": "Suspends a GitHub App on a user, organization, or business account, which blocks the app from accessing the account's resources. When a GitHub App is suspended, the app's access to the GitHub Enterprise Server API or webhook events is blocked for that account.\n\nYou must use a [JWT](https://docs.github.com/enterprise-server@3.9/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint." }, { "info": { "name": "GitHub Unsuspend an App Installation", "type": "http" }, "http": { "method": "DELETE", "url": "{protocol}://{hostname}/api/v3/app/installations/:installation_id/suspended", "params": [ { "name": "installation_id", "value": "", "type": "path", "description": "The unique identifier of the installation." } ] }, "docs": "Removes a GitHub App installation suspension.\n\nYou must use a [JWT](https://docs.github.com/enterprise-server@3.9/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint." }, { "info": { "name": "GitHub List Repositories Accessible to the App Installation", "type": "http" }, "http": { "method": "GET", "url": "{protocol}://{hostname}/api/v3/installation/repositories", "params": [ { "name": "per_page", "value": "", "type": "query", "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/enterprise-server@3.9/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"" }, { "name": "page", "value": "", "type": "query", "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/enterprise-server@3.9/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"" } ] }, "docs": "The GitHub Installation API's GET /installation/repositories endpoint allows you to retrieve a list of repositories that the authenticated GitHub App installation has been granted access to. This operation returns metadata about each accessible repository, including repository names, IDs, permissions, and other relevant details. It's commonly used by GitHub Apps to discover which repositories they can interact with based on the installation's configuration and the permissions granted by the repo" }, { "info": { "name": "GitHub Revoke an Installation Access Token", "type": "http" }, "http": { "method": "DELETE", "url": "{protocol}://{hostname}/api/v3/installation/token" }, "docs": "Revokes the installation token you're using to authenticate as an installation and access this endpoint.\n\nOnce an installation token is revoked, the token is invalidated and cannot be used. Other endpoints that require the revoked installation token must have a new installation token to work. You can create a new token using the \"[Create an installation access token for an app](https://docs.github.com/enterprise-server@3.9/rest/apps/apps#create-an-installation-access-token-for-an-app)\" endpoint." }, { "info": { "name": "GitHub Get an Organization Installation for the Authenticated App", "type": "http" }, "http": { "method": "GET", "url": "{protocol}://{hostname}/api/v3/orgs/:org/installation", "params": [ { "name": "org", "value": "", "type": "path", "description": "The organization name. The name is not case sensitive." } ] }, "docs": "Enables an authenticated GitHub App to find the organization's installation information.\n\nYou must use a [JWT](https://docs.github.com/enterprise-server@3.9/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint." }, { "info": { "name": "GitHub List App Installations for an Organization", "type": "http" }, "http": { "method": "GET", "url": "{protocol}://{hostname}/api/v3/orgs/:org/installations", "params": [ { "name": "org", "value": "", "type": "path", "description": "The organization name. The name is not case sensitive." }, { "name": "per_page", "value": "", "type": "query", "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/enterprise-server@3.9/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"" }, { "name": "page", "value": "", "type": "query", "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/enterprise-server@3.9/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"" } ] }, "docs": "Lists all GitHub Apps in an organization. The installation count includes\nall GitHub Apps installed on repositories in the organization.\n\nThe authenticated user must be an organization owner to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `admin:read` scope to use this endpoint." }, { "info": { "name": "GitHub Get Repository Installation for the Authenticated App", "type": "http" }, "http": { "method": "GET", "url": "{protocol}://{hostname}/api/v3/repos/:owner/:repo/installation", "params": [ { "name": "owner", "value": "", "type": "path", "description": "The account owner of the repository. The name is not case sensitive." }, { "name": "repo", "value": "", "type": "path", "description": "The name of the repository without the `.git` extension. The name is not case sensitive." } ] }, "docs": "Enables an authenticated GitHub App to find the repository's installation information. The installation's account type will be either an organization or a user account, depending which account the repository belongs to.\n\nYou must use a [JWT](https://docs.github.com/enterprise-server@3.9/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint." }, { "info": { "name": "GitHub List App Installations Accessible to the User Access Token", "type": "http" }, "http": { "method": "GET", "url": "{protocol}://{hostname}/api/v3/user/installations", "params": [ { "name": "per_page", "value": "", "type": "query", "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/enterprise-server@3.9/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"" }, { "name": "page", "value": "", "type": "query", "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/enterprise-server@3.9/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"" } ] }, "docs": "Lists installations of your GitHub App that the authenticated user has explicit permission (`:read`, `:write`, or `:admin`) to access.\n\nThe authenticated user has explicit permission to access repositories they own, repositories where they are a collaborator, and repositories that they can access through an organization membership.\n\nYou can find the permissions for the installation under the `permissions` key." }, { "info": { "name": "GitHub Add Repository to an App Installation", "type": "http" }, "http": { "method": "PUT", "url": "{protocol}://{hostname}/api/v3/user/installations/:installation_id/repositories/:repository_id", "params": [ { "name": "installation_id", "value": "", "type": "path", "description": "The unique identifier of the installation." }, { "name": "repository_id", "value": "", "type": "path", "description": "The unique identifier of the repository." } ] }, "docs": "Add a single repository to an installation. The authenticated user must have admin access to the repository." }, { "info": { "name": "GitHub Remove Repository from an App Installation", "type": "http" }, "http": { "method": "DELETE", "url": "{protocol}://{hostname}/api/v3/user/installations/:installation_id/repositories/:repository_id", "params": [ { "name": "installation_id", "value": "", "type": "path", "description": "The unique identifier of the installation." }, { "name": "repository_id", "value": "", "type": "path", "description": "The unique identifier of the repository." } ] }, "docs": "Remove a single repository from an installation. The authenticated user must have admin access to the repository.\n\nYou must use a personal access token (which you can create via the [command line](https://docs.github.com/enterprise-server@3.9/github/authenticating-to-github/creating-a-personal-access-token) or [Basic Authentication](https://docs.github.com/enterprise-server@3.9/rest/overview/other-authentication-methods#basic-authentication)) to access this endpoint." }, { "info": { "name": "GitHub Get User Installation for the Authenticated App", "type": "http" }, "http": { "method": "GET", "url": "{protocol}://{hostname}/api/v3/users/:username/installation", "params": [ { "name": "username", "value": "", "type": "path", "description": "The handle for the GitHub user account." } ] }, "docs": "Enables an authenticated GitHub App to find the user’s installation information.\n\nYou must use a [JWT](https://docs.github.com/enterprise-server@3.9/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint." } ] } ], "bundled": true }