GitHub logo

GitHub

The GitHub REST API allows developers to programmatically interact with GitHub resources including repositories, users, organizations, pull requests, issues, and more.

65 APIs 6 Capabilities 12 Features
CodePipelinesPlatformSoftware DevelopmentSource ControlT1

APIs

GitHub App API

The GitHub App API is the set of REST/GraphQL endpoints and webhooks that lets a GitHub App securely integrate with and automate work across GitHub. Apps authenticate with a sho...

GitHub Authorization API

The GitHub Authorization (OAuth Authorizations) API historically let you programmatically create, list, inspect, and revoke access tokens for a user or OAuth applicationsetting ...

GitHub Code of Conduct API

GitHubs Code of Conduct API lets apps discover and retrieve the community codes of conduct that GitHub supports and see which one a repository has adopted. Through REST endpoint...

GitHub Emojis API

The GitHub Emojis API is a simple REST endpoint (GET /emojis or https://api.github.com/emojis) that returns a JSON dictionary mapping emoji shortcodes (like "smile" or "octocat"...

GitHub Events API

The GitHub Events API provides a read-only feed of recent activity on GitHub, exposing structured event objects you can poll to see what happened across the platform or within a...

GitHub Feeds API

GitHubs Feeds API lets you programmatically discover the Atom feed URLs for GitHub activity thats relevant to you, such as the global timeline, a specific users activity, the au...

GitHub Gists API

The GitHub Gists API lets you programmatically manage gistslightweight code snippets and notesover HTTP. You can create gists (public or secret/unlisted), read individual gists,...

GitHub Gitignore Templates API

The GitHub Gitignore Templates API is a REST interface that lets you discover and fetch canonical .gitignore templates maintained by GitHub, so you can programmatically create i...

GitHub Installation API

The GitHub Installation API is part of the GitHub Apps platform and lets an app understand and manage where its installed and what it can access, and act on behalf of that insta...

GitHub Issues API

The GitHub Issues API lets you programmatically manage issue tracking on GitHub, enabling you to list and filter issues across repositories, create and edit issues, change their...

GitHub Licenses API

The GitHub Licenses API lets you programmatically discover and retrieve open source license information across GitHub. It provides endpoints to list the common licenses GitHub s...

GitHub Enterprise Management API

The GitHub Enterprise Management API lets administrators automate and integrate the operational and security management of their enterprise on GitHub. It covers tasks like provi...

GitHub Markdown API

The GitHub Markdown API is a REST service that converts Markdownespecially GitHub Flavored Markdowninto the same HTML GitHub renders in READMEs, issues, and pull requests, so ex...

GitHub Meta API

Use the REST API to get meta information about GitHub, including the IP addresses of GitHub services.

GitHub Networks API

GitHubs Networks API lets you retrieve a stream of public activity that occurs across a repositorys network, meaning the original repo and all of its forks. Exposed via the Even...

GitHub Notifications API

This GitHub REST API allows you to programmatically manage your GitHub notifications, which include updates on issues, pull requests, and commits. The API requires authenticatio...

GitHub Octocat API

The GitHub Octocat API is a playful, non-functional endpoint in GitHubs REST API that returns an ASCII-art rendering of the Octocat mascot as plain text. Its primarily meant for...

GitHub Organization API

The GitHub Organization API lets you programmatically administer and integrate with organizations on GitHub, spanning both REST and GraphQL. It covers core governance tasks such...

GitHub Projects API

The GitHub Projects API enables developers to programmatically create and manage GitHub Projects, which are flexible tools for planning and tracking work using customizable boar...

GitHub Rate Limit API

GitHubs Rate Limit API lets you programmatically see how much API quota you have left and when it will reset, so you can avoid hitting API rate limit exceeded errors. By calling...

GitHub Repos API

The GitHub Repos API is a set of REST endpoints that let you programmatically create, read, update, and delete repositories and their resources, giving you control over a repos ...

GitHub SCIM API

GitHubs SCIM API implements the SCIM 2.0 standard to automate user lifecycle management from an identity provider (such as Entra ID/Azure AD, Okta, or OneLogin) to GitHub Enterp...

GitHub Search API

The GitHub Search API lets you programmatically find and filter content across GitHubincluding repositories, code, issues and pull requests, commits, users, topics, and labelsus...

GitHub Setup API

The GitHub Setup API is the administrative interface for GitHub Enterprise Server that lets you automate tasks normally done in the Management Console during first-time and ongo...

GitHub Teams API

The GitHub Teams API lets you programmatically manage organization teams and the access they grant. With it, you can create, update, and delete teams; organize parent/child team...

GitHub Zen API

The GitHub Zen API is a playful REST endpoint that returns a random aphorism from the Zen of GitHub, such as Keep it logically awesome. Each request to GET https://api.github.co...

GitHub User API

The GitHub Users API (part of the REST API) lets applications read and, for the authenticated account, manage user-related data on GitHub. It can fetch public profiles for any u...

GitHub Actions API

The GitHub Actions API lets you manage and automate GitHub Actions workflows, including creating and managing workflow runs, jobs, artifacts, caches, secrets, variables, self-ho...

GitHub Branches API

The GitHub Branches API lets you list, create, and manage branches in a repository, including configuring branch protection rules that enforce required status checks, pull reque...

GitHub Code Scanning API

The GitHub Code Scanning API lets you retrieve and manage code scanning alerts for a repository. Code scanning uses CodeQL or third-party analysis tools to find potential securi...

GitHub Collaborators API

The GitHub Collaborators API lets you manage access to repositories by adding, removing, and listing collaborators, checking permissions, and managing repository invitations. It...

GitHub Dependabot API

The GitHub Dependabot API lets you manage Dependabot alerts and secrets for repositories and organizations. It provides endpoints to list, get, and update Dependabot alerts for ...

GitHub Webhooks API

The GitHub Webhooks API lets you create and manage webhooks for repositories and organizations. Webhooks deliver HTTP POST payloads to a configured URL whenever specified events...

GitHub Pull Requests API

The GitHub Pull Requests API lets you create, list, update, and merge pull requests in a repository. It provides endpoints for managing pull request reviews, review comments, re...

GitHub Tags API

The GitHub Tags API lets you create and manage Git tag objects in a repository. Tags are references that point to specific commits, commonly used to mark release points. The API...

GitHub Checks API

The GitHub Checks API lets you create and manage check runs and check suites that report detailed status, annotations, and results for commits. It enables CI/CD tools and integr...

GitHub Deployments API

The GitHub Deployments API lets you create and manage deployments and deployment statuses for repositories. Deployments are requests to deploy a specific ref (branch, SHA, tag) ...

GitHub Releases API

The GitHub Releases API lets you create, edit, and delete releases for a repository, as well as upload and manage release assets (binaries, installers, archives). Releases are b...

GitHub Pages API

The GitHub Pages API lets you manage GitHub Pages sites for repositories, including creating, updating, and deleting sites, configuring custom domains and HTTPS enforcement, and...

GitHub Packages API

The GitHub Packages API lets you manage packages and package versions in GitHub Packages, a software package hosting service that supports npm, Maven, Gradle, RubyGems, NuGet, D...

GitHub Git Database API

The GitHub Git Database API provides low-level access to Git objects (blobs, commits, refs, tags, and trees) in a repository. It lets you read and write raw Git data directly, e...

GitHub Codespaces API

The GitHub Codespaces API lets you create, manage, start, stop, and delete cloud development environments (codespaces) for repositories. It provides endpoints for managing codes...

GitHub Copilot API

The GitHub Copilot API lets organization and enterprise owners manage GitHub Copilot seat assignments, retrieve usage metrics and billing information, and configure Copilot poli...

GitHub Billing API

The GitHub Billing API lets you view billing and usage information for organizations and enterprises, including Actions minutes, Packages storage and data transfer, Codespaces u...

GitHub Migrations API

The GitHub Migrations API lets you migrate data to and from GitHub. It supports organization migrations that export repositories and metadata as downloadable archives, source im...

GitHub Secret Scanning API

The GitHub Secret Scanning API lets you retrieve and manage secret scanning alerts for repositories, organizations, and enterprises. Secret scanning detects tokens, keys, and ot...

GitHub Security Advisories API

The GitHub Security Advisories API lets you view and manage security advisories for repositories and access the GitHub Advisory Database. It provides endpoints to create, update...

GitHub Commits API

The GitHub Commits API lets you list, retrieve, and compare commits in a repository, as well as manage commit comments and commit statuses. It provides endpoints for viewing com...

GitHub Reactions API

The GitHub Reactions API lets you create, list, and delete emoji reactions on issues, pull requests, issue comments, pull request review comments, commit comments, release asset...

GitHub Deploy Keys API

The GitHub Deploy Keys API lets you manage deploy keys for repositories. Deploy keys are SSH keys that grant read-only or read-write access to a single repository, commonly used...

GitHub Dependency Graph API

The GitHub Dependency Graph API lets you view and submit dependency information for a repository. It provides endpoints to export the software bill of materials (SBOM) for a rep...

GitHub Metrics API

The GitHub Metrics API lets you access community profile and repository statistics, including contributor activity, commit frequency, code frequency, participation data, punch c...

GitHub Interactions API

The GitHub Interactions API lets you temporarily restrict which users can comment, open issues, or create pull requests in public repositories. It supports setting interaction l...

GitHub Models API

The GitHub Models API provides access to the GitHub Models catalog, letting you list and retrieve details about AI models available on the GitHub platform. It supports browsing ...

GitHub GraphQL API

The GitHub GraphQL API provides a flexible query language for accessing GitHub data, allowing clients to request exactly the fields they need in a single request. It supports qu...

GitHub Campaigns API

The GitHub Campaigns API lets organization owners and security managers create and manage security campaigns that coordinate remediation of code scanning alerts across multiple ...

GitHub Classroom API

The GitHub Classroom API lets you programmatically interact with GitHub Classroom, providing endpoints to list classrooms, get classroom details, list assignments for a classroo...

GitHub Code Security API

The GitHub Code Security API lets organizations and enterprises create and manage reusable code security configurations that standardize security settings across repositories. I...

GitHub Credentials API

The GitHub Credentials API lets you programmatically manage authentication credentials, providing endpoints to revoke a list of credentials such as tokens and keys for security ...

GitHub Enterprise Teams API

The GitHub Enterprise Teams API lets enterprise owners create and manage enterprise-level teams. It provides endpoints to list, create, get, update, and delete teams, manage tea...

GitHub Private Registries API

The GitHub Private Registries API lets organizations configure and manage private package registries. It provides endpoints to list, create, get, update, and delete private regi...

GitHub Autolinks API

The GitHub Autolinks API lets repository administrators manage autolink references that automatically link issues, pull requests, commit messages, and release descriptions to ex...

GitHub Starring API

The GitHub Starring API lets you bookmark repositories and manage your starred list. It provides endpoints to list stargazers for a repository, list repositories starred by the ...

GitHub Watching API

The GitHub Watching API lets you subscribe to notifications for activity in a repository. It provides endpoints to list watchers of a repository, get and set a repository subscr...

GitHub Repository Invitations API

The GitHub Repository Invitations API lets you manage repository collaboration invitations. It provides endpoints to list repository invitations, update an invitation, delete an...

Capabilities

GitHub CI/CD

Unified workflow for continuous integration and deployment combining GitHub Actions workflows, runs, jobs, artifacts, and repository management. Used by DevOps engineers for pip...

Run with Naftiko

GitHub Community

Unified workflow for community engagement combining gists, user profiles, organizations, and team discussions. Used by community managers, developer advocates, and open source m...

Run with Naftiko

GitHub Platform Administration

Unified workflow for platform administration combining GitHub Apps, organizations, teams, and packages. Used by platform administrators for managing app integrations, organizati...

Run with Naftiko

GitHub Project Management

Unified workflow for project management combining issues, projects, milestones, labels, and search. Used by project managers and team leads for tracking work, organizing sprints...

Run with Naftiko

GitHub Security Operations

Unified workflow for security operations combining code scanning, Dependabot, and secret scanning. Used by security engineers for vulnerability management, dependency auditing, ...

Run with Naftiko

GitHub Source Control

Unified workflow for source code management combining repositories, branches, pull requests, and commits. Used by developers for day-to-day code collaboration, branch management...

Run with Naftiko

Features

REST API

Comprehensive REST API v3 for managing repositories, issues, pull requests, actions, and all GitHub resources.

GraphQL API

Flexible GraphQL API v4 for querying exactly the data you need with a single request.

Webhooks

Real-time event notifications for repository, organization, and marketplace events.

GitHub Apps

First-class integrations with fine-grained permissions, installation tokens, and webhook events.

GitHub Actions

CI/CD workflow automation with API access to runs, jobs, artifacts, and secrets.

Packages

Package registry supporting npm, Maven, NuGet, Docker, and RubyGems.

Code Search

Search across repositories, code, issues, pull requests, and users.

Security

Dependabot alerts, code scanning, secret scanning, and security advisories.

Copilot

AI-powered code completion and chat APIs for developer tools integration.

Projects

Project boards with custom fields, views, and automation for issue tracking.

Codespaces

Cloud development environments with API management for machines and secrets.

Discussions

Community discussion forums with categories, comments, and reactions.

Use Cases

CI/CD Automation

Automate build, test, and deployment pipelines with GitHub Actions API.

Repository Management

Programmatically create, configure, and manage repositories and branches.

Issue and Project Tracking

Create, update, and query issues, labels, milestones, and project boards.

Code Review Automation

Automate pull request reviews, checks, and merge workflows.

Security Scanning

Access Dependabot alerts, code scanning results, and secret scanning alerts.

Developer Tools

Build GitHub Apps, CLI extensions, and IDE integrations.

Organization Management

Manage teams, members, permissions, and audit logs for organizations.

Package Publishing

Publish and manage packages across multiple package registries.

Integrations

VS Code

GitHub integration in Visual Studio Code with Copilot, PR reviews, and Codespaces.

Slack

GitHub notifications, deployments, and actions in Slack channels.

Jira

Link GitHub commits and PRs to Jira issues for project tracking.

Terraform

Manage GitHub repositories, teams, and settings as infrastructure code.

Azure DevOps

Cross-platform CI/CD with GitHub repos and Azure Pipelines.

Solutions

GitHub Free

Free tier with unlimited public and private repos, Actions minutes, and Packages storage.

GitHub Pro

Advanced tools for individual developers with more Actions minutes and Packages.

GitHub Team

Collaboration features for teams with code owners, required reviews, and Pages.

GitHub Enterprise

Enterprise features with SAML SSO, audit log streaming, and advanced security.

Event Specifications

GitHub Webhooks

GitHub Webhooks deliver HTTP POST payloads to a configured URL whenever specified events occur on GitHub, such as pushes, pull requests, issues, releases, and more. Webhooks can...

ASYNCAPI

Semantic Vocabularies

Github Context

85 classes · 451 properties

JSON-LD

API Governance Rules

GitHub API Rules

20 rules · 14 errors 3 warnings 3 info

SPECTRAL

Resources

🔗
Plans
Plans
🔗
RoadMap
RoadMap
🔗
About
About
🔗
Documentation
Documentation
🟢
StatusPage
StatusPage
🔗
CLI
CLI
👥
GitHubOrganization
GitHubOrganization
💬
Support
Support
🔗
Partners
Partners
📜
TermsOfService
TermsOfService
📜
PrivacyPolicy
PrivacyPolicy
🔗
RateLimits
RateLimits
🔗
Pagination
Pagination
🔑
Authentication
Authentication
🚀
GettingStarted
GettingStarted
📦
sdks
sdks
📰
Blog
Blog
🔗
Website
Website
🔗
Login
Login
📝
SignUp
SignUp
🌐
Portal
Portal
📄
ChangeLog
ChangeLog
🔗
Community
Community
👥
StackOverflow
StackOverflow
👥
YouTube
YouTube
🔗
Security
Security
🔧
DeveloperTools
DeveloperTools
🔗
OpenAPI
OpenAPI
🔗
Versioning
Versioning
🔗
Errors
Errors
🚀
Quickstart
Quickstart
🔗
Webhooks
Webhooks
🔗
X
X
📦
SDKs
SDKs
🔗
JSONSchema
JSONSchema
🔗
JSONSchema
JSONSchema
🔗
JSONSchema
JSONSchema
🔗
JSONSchema
JSONSchema
🔗
JSONSchema
JSONSchema
🔗
JSONSchema
JSONSchema
🔗
JSONSchema
JSONSchema
🔗
JSON-LD
JSON-LD