Development — entry 028 of 98

GitHub

Verified Jul 2026

GitHub's REST API exposes nearly every platform object — repositories, issues, pull requests, Actions runs, packages, and user/org data — as JSON over versioned, stable endpoints. It's free to call with a personal access token, fine-grained PAT, OAuth app, or GitHub App, rate-limited to 5,000 requests/hour authenticated (60/hour unauthenticated), with a parallel GraphQL API for clients that want to fetch nested data in one round trip.

gitdevopsrepositoriesci-cdversion-control
AuthenticationOAuthRequires an OAuth flow; expect app registration.
HTTPSSupportedTraffic is encrypted in transit.
CORSEnabledCallable directly from browser JavaScript.
PricingFreeNo paid tier — free for the documented use case.
FormatsJSON, GraphQLResponses can be requested as JSON or GraphQL.

GreatAPIs Score

Score83out of 100
Authentication8/25OAuth flow required
Pricing20/20Free to use
Docs20/20Machine-readable spec file bundled
Formats15/15Supports 2 response formats
Freshness20/20Verified within 6 months

Embed this badge

Scored 83 on greatapis.com
<a href="https://greatapis.com/api/github/"><img src="https://greatapis.com/badge/github.svg" alt="Scored 83 on greatapis.com"></a>

Auth quickstart

  1. Register an app / run the OAuth flow to obtain a bearer token.
  2. Send it as an Authorization headerAuthorization: Bearer <token>
Stored keyNo key stored

Your key is stored only in this browser (localStorage) and sent directly to the API — never to greatapis.

Endpoints

Servers
https://api.github.com
issues2

Interact with GitHub Issues.

GET/repos/{owner}/{repo}/issuesList repository issues
Parameters
NameInRequiredType
milestonequerynostring
statequerynostring
assigneequerynostring
typequerynostring
creatorquerynostring
mentionedquerynostring
issue_field_valuesquerynostring
sortquerynostring
Responses
StatusDescriptionSchema
200Response—
301——
404——
422——
POST/repos/{owner}/{repo}/issuesCreate an issue
Request body

application/json (required)

Responses
StatusDescriptionSchema
201Responseissue
400——
403——
404——
410——
422——
503——
orgs1

Interact with organizations.

GET/orgs/{org}Get an organization
Responses
StatusDescriptionSchema
200Responseorganization-full
404——
pulls2

Interact with GitHub Pull Requests.

GET/repos/{owner}/{repo}/pullsList pull requests
Parameters
NameInRequiredType
statequerynostring
headquerynostring
basequerynostring
sortquerynostring
directionquerynostring
Responses
StatusDescriptionSchema
200Response—
304——
422——
POST/repos/{owner}/{repo}/pullsCreate a pull request
Request body

application/json (required)

Responses
StatusDescriptionSchema
201Responsepull-request
403——
422——
repos3

Interact with GitHub Repos.

GET/orgs/{org}/reposList organization repositories
Parameters
NameInRequiredType
typequerynostring
sortquerynostring
directionquerynostring
Responses
StatusDescriptionSchema
200Response—
GET/repos/{owner}/{repo}Get a repository
Responses
StatusDescriptionSchema
200Responsefull-repository
301——
403——
404——
GET/repos/{owner}/{repo}/commitsList commits
Parameters
NameInRequiredType
shaquerynostring
pathquerynostring
authorquerynostring
committerquerynostring
sincequerynostring
untilquerynostring
Responses
StatusDescriptionSchema
200Response—
400——
404——
409——
500——
search3

Search for specific items on GitHub.

GET/search/codeSearch code
Parameters
NameInRequiredType
qqueryyesstring
sortquerynostring
orderquerynostring
Responses
StatusDescriptionSchema
200Response—
304——
403——
422——
503——
GET/search/issuesSearch issues and pull requests
Parameters
NameInRequiredType
qqueryyesstring
sortquerynostring
Responses
StatusDescriptionSchema
200Response—
304——
401——
403——
422——
503——
GET/search/repositoriesSearch repositories
Parameters
NameInRequiredType
qqueryyesstring
sortquerynostring
Responses
StatusDescriptionSchema
200Response—
304——
422——
503——
users1

Interact with and view information about users and also current user.

GET/users/{username}Get a user
Responses
StatusDescriptionSchema
200Response—
404——

Try it

Developer reference

Base URLhttps://api.github.com
Rate limit

5,000 requests/hour authenticated; 60 requests/hour unauthenticated

Key endpoints
  • GET/repos/{owner}/{repo}
  • GET/repos/{owner}/{repo}/issues
  • POST/repos/{owner}/{repo}/issues
  • GET/search/repositories
  • GET/users/{username}

Changelog

Spec version1.1.4
Tracked paths813
  • Sep 20262 paths added
  • Sep 20261 path added

Tracking since Sep 2026. See every tracked change ↗ ·Subscribe with RSS ↗