ShareYourGroupShareYourGroupFree Public APIs

GitHub REST API

Information about public repositories, users and more.

Address that will be called:

What it gives you

Information about public repositories, users and more. The example fetches the public record of a repository: its name, description, stars, licence and dates.

Terms and limits

Unauthenticated requests are tied to your IP address and limited to 60 requests per hour (GitHub Docs, rate limits for the REST API). A personal token raises this to 5,000 per hour but a token must never be put into a web page.

_Read on 14 November 2026 from docs.github.com, rate limits for the REST API._

Good habits

  1. Cache answers that do not change often.
  2. Handle errors: the service may be busy or down.
  3. Give credit where the terms ask for it.
  4. Do not put secret keys into a web page: this API needs none, but many others do.

The same request in code

curl

curl -L "https://api.github.com/repos/python/cpython"

Python

import json, urllib.request

with urllib.request.urlopen("https://api.github.com/repos/python/cpython") as r:
    data = json.load(r)
print(data['full_name'])

JavaScript (browser or Node.js)

const res = await fetch("https://api.github.com/repos/python/cpython");
const data = await res.json();
console.log(data.full_name);

A real answer

This is what the example request above returned when we called it on 14 November 2026 with the default values (it took about 0.3 s from our computer). Values such as times and temperatures change.

{
  "id": 81598961,
  "node_id": "MDEwOlJlcG9zaXRvcnk4MTU5ODk2MQ==",
  "name": "cpython",
  "full_name": "python/cpython",
  "private": false,
  "owner": {
    "login": "python",
    "id": 1525981,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjE1MjU5ODE=",
    "avatar_url": "https://avatars.githubusercontent.com/u/1525981?v=4",
    "gravatar_id": "",
    "url": "https://api.github.com/users/python",
    "html_url": "https://github.com/python",
    "followers_url": "https://api.github.com/users/python/followers",
    "following_url": "https://api.github.com/users/python/following{/other_user}",
    "gists_url": "https://api.github.com/users/python/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/python/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/python/subscriptions",
    "organizations_url": "https://api.github.com/users/python/orgs",
    "repos_url": "https://api.github.com/users/python/repos",
    "events_url": "https://api.github.com/users/python/events{/privacy}",
    "received_events_url": "https://api.github.com/users/python/received_events",
    "type": "Organization",
    "user_view_type": "public",
    "site_admin": false
  },
  "html_url": "https://github.com/python/cpython",
  "description": "The Python programming language",
  "fork": false,
  "url": "https://api.github.com/repos/python/cpython",
  "forks_url": "https://api.github.com/repos/python/cpython/forks",
  "keys_url": "https://api.github.com/repos/python/cpython/keys{/key_id}",
  "collaborators_url": "https://api.github.com/repos/python/cpython/collaborators{/collaborator}",
  "teams_url": "https://api.github.com/repos/python/cpython/teams",
  "hooks_url": "https://api.github.com/repos/python/cpython/hooks",
  ...

This is an independent directory. It is not connected with any of the services listed. Each address was called on 14 November 2026 with curl, Python, Node.js and Chrome (from a page on another site), and the answer shown is a real one. APIs change: check the service's own page before you depend on it.