GitHub provides GraphQL API to create integrations, retrieve data, and automate workflows.
Prerequisites
- GitHub token (Settings → Developer Settings → Personal access tokens)
Integration
Below is an example of retrieving sponsorable users by location.
export async function getUsersBy(location) {
return fetch('https://api.github.com/graphql', {
method: 'POST',
body: JSON.stringify({
query: `query {
search(type: USER, query: "location:${location} is:sponsorable", first: 100) {
edges {
node {
... on User {
bio
login
viewerCanSponsor
}
}
}
userCount
}
}`,
}),
headers: {
ContentType: 'application/json',
Authorization: `Bearer ${process.env.GITHUB_TOKEN}`
}
})
.then((response) => response.json())
.then((response) => response.data?.search?.edges || []);
}
Demo
The demo with the mentioned example is available here.
Top comments (0)