tories for a user * @description Lists public repositories for the specified user. Note: For GitHub AE, this endpoint will list internal repositories for the specified user. */ "repos/list-for-user": { parameters: { query: { /** @description Limit results to repositories of the specified type. */ type?: "all" | "owner" | "member"; /** @description The property to sort the results by. */ sort?: "created" | "updated" | "pushed" | "full_name"; /** @description The order to sort by. Default: `asc` when using `full_name`, otherwise `desc`. */ direction?: "asc" | "desc"; per_page?: components["parameters"]["per-page"]; page?: components["parameters"]["page"]; }; path: { username: components["parameters"]["username"]; }; }; responses: { /** @description Response */ 200: { headers: { Link: components["headers"]["link"]; }; content: { "application/json": components["schemas"]["minimal-repository"][]; }; }; }; }; /** * Get GitHub Actions billing for a user * @description Gets the summary of the free and paid GitHub Actions minutes used. * * Paid minutes only apply to workflows in private repositories that use GitHub-hosted runners. Minutes used is listed for each GitHub-hosted runner operating system. Any job re-runs are also included in the usage. The usage returned includes any minute multipliers for macOS and Windows runners, and is rounded up to the nearest whole minute. For more information, see "[Managing billing for GitHub Actions](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions)". * * Access tokens must have the `user` scope. */ "billing/get-github-actions-billing-user": { parameters: { path: { username: components["parameters"]["username"]; }; }; responses: { /** @description Response */ 200: { content: { "application/json": components["schemas"]["actions-billing-usage"]; }; }; }; }; /** * Get GitHub Packages billing for a user * @description Gets the free and paid storage used for GitHub Packages in gigabytes. * * Paid minutes only apply to packages stored for private repositories. For more information, see "[Managing billing for GitHub Packages](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-packages)." * * Access tokens must have the `user` scope. */ "billing/get-github-packages-billing-user": { parameters: { path: { username: components["parameters"]["username"]; }; }; responses: { /** @description Response */ 200: { content: { "application/json": components["schemas"]["packages-billing-usage"]; }; }; }; }; /** * Get shared storage billing for a user * @description Gets the estimated paid and estimated total storage used for GitHub Actions and GitHub Packages. * * Paid minutes only apply to packages stored for private repositories. For more information, see "[Managing billing for GitHub Packages](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-packages)." * * Access tokens must have the `user` scope. */ "billing/get-shared-storage-billing-user": { parameters: { path: { username: components["parameters"]["username"]; }; }; responses: { /** @description Response */ 200: { content: { "application/json": components["schemas"]["combined-billing-usage"]; }; }; }; }; /** * List social accounts for a user * @description Lists social media accounts for a user. This endpoint is accessible by anyone. */ "users/list-social-accounts-for-user": { parameters: { query: { per_page?: components["parameters"]["per-page"]; page?: components["parameters"]["page"]; }; path: { username: components["parameters"]["username"]; }; }; responses: { /** @description Response */ 200: { headers: { Link: components["headers"]["link"]; }; content: { "application/json": components["schemas"]["social-account"][]; }; }; }; }; /** * List SSH signing keys for a user * @description Lists the SSH signing keys for a user. This operation is accessible by anyone. */ "users/list-ssh-signing-keys-for-user": { parameters: { query: { per_page?: components["parameters"]["per-page"]; page?: components["parameters"]["page"]; }; path: { username: components["parameters"]["username"]; }; }; responses: { /** @description Response */ 200: { headers: { Link: components["headers"]["link"]; }; content: { "application/json": components["schemas"]["ssh-signing-key"][]; }; }; }; }; /** * List repositories starred by a user * @description Lists repositories a user has starred. * * You can also find out _when_ stars were created by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `Accept` header: `application/vnd.github.star+json`. */ "activity/list-repos-starred-by-user": { parameters: { query: { sort?: components["parameters"]["sort-starred"]; direction?: components["parameters"]["direction"]; per_page?: components["parameters"]["per-page"]; page?: components["parameters"]["page"]; }; path: { username: components["parameters"]["username"]; }; }; responses: { /** @description Response */ 200: { headers: { Link: components["headers"]["link"]; }; content: { "application/json": | components["schemas"]["starred-repository"][] | components["schemas"]["repository"][]; }; }; }; }; /** * List repositories watched by a user * @description Lists repositories a user is watching. */ "activity/list-repos-watched-by-user": { parameters: { query: { per_page?: components["parameters"]["per-page"]; page?: components["parameters"]["page"]; }; path: { username: components["parameters"]["username"]; }; }; responses: { /** @description Response */ 200: { headers: { Link: components["headers"]["link"]; }; content: { "application/json": components["schemas"]["minimal-repository"][]; }; }; }; }; /** * Get all API versions * @description Get all supported GitHub API versions. */ "meta/get-all-versions": { responses: { /** @description Response */ 200: { content: { "application/json": string[]; }; }; 404: components["responses"]["not_found"]; }; }; /** * Get the Zen of GitHub * @description Get a random sentence from the Zen of GitHub */ "meta/get-zen": { responses: { /** @description Response */ 200: { content: { "text/plain": string; }; }; }; }; /** * Compare two commits * @description **Deprecated**: Use `repos.compareCommitsWithBasehead()` (`GET /repos/{owner}/{repo}/compare/{basehead}`) instead. Both `:base` and `:head` must be branch names in `:repo`. To compare branches across other repositories in the same network as `:repo`, use the format `:branch`. * * The response from the API is equivalent to running the `git log base..head` command; however, commits are returned in chronological order. Pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests) to fetch diff and patch formats. * * The response also includes details on the files that were changed between the two commits. This includes the status of the change (for example, if a file was added, removed, modified, or renamed), and details of the change itself. For example, files with a `renamed` status have a `previous_filename` field showing the previous filename of the file, and files with a `modified` status have a `patch` field showing the changes made to the file. * * **Working with large comparisons** * * To process a response with a large number of commits, you can use (`per_page` or `page`) to paginate the results. When using paging, the list of changed files is only returned with page 1, but includes all changed files for the entire comparison. For more information on working with pagination, see "[Traversing with pagination](/rest/guides/traversing-with-pagination)." * * When calling this API without any paging parameters (`per_page` or `page`), the returned list is limited to 250 commits and the last commit in the list is the most recent of the entire comparison. When a paging parameter is specified, the first commit in the returned list of each page is the earliest. * * **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 her/his 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. | */ "repos/compare-commits": { parameters: { query: { per_page?: components["parameters"]["per-page"]; page?: components["parameters"]["page"]; }; path: { owner: components["parameters"]["owner"]; repo: components["parameters"]["repo"]; base: string; head: string; }; }; responses: { /** @description Response */ 200: { content: { "application/json": components["schemas"]["commit-comparison"]; }; }; 404: components["responses"]["not_found"]; 500: components["responses"]["internal_error"]; }; }; }