
GitHub Has a Free GraphQL API — Get Repository Data 10x Faster Than REST
The Problem With GitHub REST API To get a repo's stars, description, languages, and latest releases via REST, you need 4 separate API calls . With GraphQL, it's one call . Setup # You need a GitHub personal access token # Settings → Developer settings → Personal access tokens → Generate export GITHUB_TOKEN = "ghp_your_token_here" One Query, All the Data import requests def github_graphql ( query , token ): r = requests . post ( " https://api.github.com/graphql " , json = { " query " : query }, headers = { " Authorization " : f " Bearer { token } " } ) return r . json () query = """ { repository(owner: " facebook " , name: " react " ) { name description stargazerCount forkCount primaryLanguage { name } releases(last: 3) { nodes { name tagName publishedAt } } issues(states: OPEN) { totalCount } pullRequests(states: OPEN) { totalCount } } } """ result = github_graphql ( query , " your_token " ) repo = result [ " data " ][ " repository " ] print ( f " { repo [ name ] } : { repo [ stargazer
Continue reading on Dev.to Tutorial
Opens in a new tab




