📖
GitHub GraphQL APIを利用してリポジトリの検索を行う方法
概要
GitHub GraphQL APIを利用してリポジトリの検索を行う方法を記載します。
やってみる
名前にhを含むリポジトリを検索する
{
search(query: "h", type: REPOSITORY, first: 3) {
edges {
node {
... on Repository {
nameWithOwner
}
}
}
}
}
レスポンスは、以下になります。
{
"data": {
"search": {
"edges": [
{
"node": {
"nameWithOwner": "hypothesis/h"
}
},
{
"node": {
"nameWithOwner": "cisco/openh264"
}
},
{
"node": {
"nameWithOwner": "fyhertz/libstreaming"
}
}
]
}
}
}
Julia言語のリポジトリを検索する
{
search(query: "language:julia", type: REPOSITORY, first: 3) {
edges {
node {
... on Repository {
nameWithOwner
}
}
}
}
}
レスポンスは、以下になります。
{
"data": {
"search": {
"edges": [
{
"node": {
"nameWithOwner": "JuliaLang/julia"
}
},
{
"node": {
"nameWithOwner": "fonsp/Pluto.jl"
}
},
{
"node": {
"nameWithOwner": "FluxML/Flux.jl"
}
}
]
}
}
}
星が31729以上のリポジトリを検索する
{
search(query: "stars:>=31729", type: REPOSITORY, first: 3) {
edges {
node {
... on Repository {
nameWithOwner
}
}
}
}
}
レスポンスは、以下になります。
{
"data": {
"search": {
"edges": [
{
"node": {
"nameWithOwner": "freeCodeCamp/freeCodeCamp"
}
},
{
"node": {
"nameWithOwner": "EbookFoundation/free-programming-books"
}
},
{
"node": {
"nameWithOwner": "996icu/996.ICU"
}
}
]
}
}
}
Discussion