https://github.com/octokit/app-permissions
machine-readable, always up-to-date GitHub App permissions
https://github.com/octokit/app-permissions
hacktoberfest octokit-js tooling
Last synced: 7 months ago
JSON representation
machine-readable, always up-to-date GitHub App permissions
- Host: GitHub
- URL: https://github.com/octokit/app-permissions
- Owner: octokit
- License: mit
- Created: 2020-08-18T18:45:24.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2025-05-20T11:28:29.000Z (8 months ago)
- Last Synced: 2025-06-02T05:15:50.753Z (7 months ago)
- Topics: hacktoberfest, octokit-js, tooling
- Language: JavaScript
- Homepage:
- Size: 1.62 MB
- Stars: 12
- Watchers: 6
- Forks: 8
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT
- Security: SECURITY.md
Awesome Lists containing this project
README
# app-permissions
> machine-readable, always up-to-date GitHub App permissions
This repository is scraping the [Permissions required for GitHub Apps](https://docs.github.com/en/rest/reference/permissions-required-for-github-apps) app on an hourly basis and generates the [`generated/api.github.com.json`](generated/api.github.com.json) file.
## Usage
The structure of the JSON export looks like this
```
permissions
api.github.com
permissions
[name of permission]
url # documentation URL
read # array of routes with read access
write # array of routes with write access
paths
[http path]
[http method]
permission # name of permission
access # "read" or "write"
```
### Node.js
```js
const appPermissions = require("@octokit/app-permissions");
const createIssuePermissions =
appPermissions["api.github.com"].paths["/repos/{owner}/{repo}/issues"].post;
console.log(
`Required app permissions to create an issue: %o`,
createIssuePermissions,
);
const issuesPermission = appPermissions["api.github.com"].permissions.issues;
console.log(`"issues" read access paths: %o`, issuesPermission.read);
console.log(`"issues" write access paths: %o`, issuesPermission.write);
```
### Download
All generated JSON files are uploaded as assets to each [GitHub release](https://github.com/octokit/app-permissions/releases)
## See also
- [octokit/graphql-schema](https://github.com/octokit/graphql-schema) – GitHub’s GraphQL Schema with validation
- [octokit/openapi](https://github.com/octokit/openapi) – GitHub REST API route specifications
- [octokit/webhooks](https://github.com/octokit/webhooks) – GitHub Webhooks specifications
## License
[MIT](LICENSE)