# api.github.com.2022-11-28.yaml

- Source: https://raw.githubusercontent.com/github/rest-api-description/main/descriptions/api.github.com/api.github.com.2022-11-28.yaml
- Fetched: 2026-09-24
- sha256: 80fbc00e5ffd31af1558a9a1c87b0fb5c8d77945773c4cd46773004dca6c7498
- OpenAPI version: 3.0.3 (info.version 1.1.4)

GitHub publishes the description of every REST API version in `github/rest-api-description`. Three files describe the same 1,221 operations:

- `api.github.com.yaml` (no date) is the current default version. It is byte-equivalent to the `2022-11-28` document in every value; the only additions are 1,095 `x-github-breaking-changes` annotations that describe how the future version will differ.
- `api.github.com.2022-11-28.yaml` is the version this module pins and sends as `X-GitHub-Api-Version`. It is what the API answers with today.
- `api.github.com.2026-03-10.yaml` is the announced future version (it drops `rate` from `/rate_limit`, changes the `type` of submodules in Contents, and more). It is not in effect yet: sending `X-GitHub-Api-Version: 2026-03-10` still returns the old shape, so generating from it would put the types out of step with the wire.

`X-GitHub-Api-Version` is a self-defence pin, not a guarantee from the server: GitHub answers 200 even for a value that names no version at all.

The YAML form is vendored rather than the JSON one because it is line-oriented (261,041 lines), so `spec-watch.yml` produces a readable diff instead of one changed line.

Do not edit this file by hand: language-independent upstream corrections go in `../overlays/fix.yaml`, MoonBit-specific hints in `../overlays/moonbit.yaml`.
