{"meta":{"title":"REST API endpoints for rate limits","intro":"Use the REST API to check your current rate limit status.","product":"REST API","breadcrumbs":[{"href":"/en/rest","title":"REST API"},{"href":"/en/rest/rate-limit","title":"Rate limit"},{"href":"/en/rest/rate-limit/rate-limit","title":"Rate limit"}],"documentType":"article"},"body":"# REST API endpoints for rate limits\n\nUse the REST API to check your current rate limit status.\n\n## About rate limits\n\nYou can check your current rate limit status at any time. For more information about rate limit rules, see [Rate limits for the REST API](/en/rest/using-the-rest-api/rate-limits-for-the-rest-api).\n\nThe REST API for searching items has a custom rate limit that is separate from the rate limit governing the other REST API endpoints. For more information, see [REST API endpoints for search](/en/rest/search/search). The GraphQL API also has a custom rate limit that is separate from and calculated differently than rate limits in the REST API. For more information, see [Rate limits and query limits for the GraphQL API](/en/graphql/overview/rate-limits-and-query-limits-for-the-graphql-api#primary-rate-limit). For these reasons, the API response categorizes your rate limit. Under `resources`, you'll see objects relating to different categories:\n\n* The `core` object provides your rate limit status for all non-search-related resources in the REST API.\n\n* The `search` object provides your rate limit status for the REST API for searching (excluding code searches). For more information, see [REST API endpoints for search](/en/rest/search/search).\n\n* The `code_search` object provides your rate limit status for the REST API for searching code. For more information, see [REST API endpoints for search](/en/rest/search/search#search-code).\n\n* The `graphql` object provides your rate limit status for the GraphQL API.\n\n* The `integration_manifest` object provides your rate limit status for the `POST /app-manifests/{code}/conversions` operation. For more information, see [Registering a GitHub App from a manifest](/en/apps/sharing-github-apps/registering-a-github-app-from-a-manifest#3-you-exchange-the-temporary-code-to-retrieve-the-app-configuration).\n\n* The `dependency_snapshots` object provides your rate limit status for submitting snapshots to the dependency graph. For more information, see [REST API endpoints for the dependency graph](/en/rest/dependency-graph).\n\n* The `code_scanning_upload` object provides your rate limit status for uploading SARIF results to code scanning. For more information, see [Uploading a SARIF file to GitHub](/en/code-security/how-tos/find-and-fix-code-vulnerabilities/integrate-with-existing-tools/upload-sarif-file).\n\n* The `actions_runner_registration` object provides your rate limit status for registering self-hosted runners in GitHub Actions. For more information, see [REST API endpoints for self-hosted runners](/en/rest/actions/self-hosted-runners).\n\nFor more information on the headers and values in the rate limit response, see [Rate limits for the REST API](/en/rest/using-the-rest-api/rate-limits-for-the-rest-api).\n\n> \\[!NOTE]\n> Most endpoints use `Authorization: Bearer <YOUR-TOKEN>` and `Accept: application/vnd.github+json` headers, plus `X-GitHub-Api-Version: 2026-03-10`. Curl examples below omit these standard headers for brevity.\n\n## Get rate limit status for the authenticated user\n\n```\nGET /rate_limit\n```\n\nNote\n\nAccessing this endpoint does not count against your REST API rate limit.\n\nSome categories of endpoints have custom rate limits that are separate from the rate limit governing the other REST API endpoints. For this reason, the API response categorizes your rate limit. Under resources, you'll see objects relating to different categories:\n\nThe core object provides your rate limit status for all non-search-related resources in the REST API.\nThe search object provides your rate limit status for the REST API for searching (excluding code searches). For more information, see \"Search.\"\nThe code\\_search object provides your rate limit status for the REST API for searching code. For more information, see \"Search code.\"\nThe graphql object provides your rate limit status for the GraphQL API. For more information, see \"Resource limitations.\"\nThe integration\\_manifest object provides your rate limit status for the POST /app-manifests/{code}/conversions operation. For more information, see \"Creating a GitHub App from a manifest.\"\nThe dependency\\_snapshots object provides your rate limit status for submitting snapshots to the dependency graph. For more information, see \"Dependency graph.\"\nThe dependency\\_sbom object provides your rate limit status for requesting SBOMs from the dependency graph. For more information, see \"Dependency graph.\"\nThe actions\\_runner\\_registration object provides your rate limit status for registering self-hosted runners in GitHub Actions. For more information, see \"Self-hosted runners.\"\nThe source\\_import object is no longer in use for any API endpoints, and it will be removed in the next API version. For more information about API versions, see \"API Versions.\"\n\nNote\n\nThe rate object is closing down. If you're writing new API client code or updating existing code, you should use the core object instead of the rate object. The core object contains the same information that is present in the rate object.\n\n### HTTP response status codes\n\n* **200** - OK\n\n* **304** - Not modified\n\n* **404** - Resource not found\n\n### Code examples\n\n#### Example\n\n**Request:**\n\n```curl\ncurl -L \\\n  -X GET \\\n  https://api.github.com/rate_limit\n```\n\n**Response schema (Status: 200):**\n\n* `resources`: required, object:\n  * `core`: required, `Rate Limit`:\n    * `limit`: required, integer\n    * `remaining`: required, integer\n    * `reset`: required, integer\n    * `used`: required, integer\n  * `graphql`: `Rate Limit` (see above)\n  * `search`: required, `Rate Limit` (see above)\n  * `code_search`: `Rate Limit` (see above)\n  * `source_import`: `Rate Limit` (see above)\n  * `integration_manifest`: `Rate Limit` (see above)\n  * `actions_runner_registration`: `Rate Limit` (see above)\n  * `scim`: `Rate Limit` (see above)\n  * `dependency_snapshots`: `Rate Limit` (see above)\n  * `dependency_sbom`: `Rate Limit` (see above)\n  * `code_scanning_autofix`: `Rate Limit` (see above)\n  * `copilot_usage_records`: `Rate Limit` (see above)"}