github projectsからバーンダウンチャートを作る 調査編
自力でバーンダウンチャートが作りたいなと思ってAPI仕様書を読んだのでメモ
GitHub API v3 | GitHub Developer Guide
認証
BASIC認証
もはやcurlの使い方だけどとりあえずメモ
curl -u "username" https://api.github.com
これを叩くとパスワードを聞かれるので入力すると認証完了
username
のところにパスワードも書いて
curl -u "username:password" https://api.github.com
にするとパスワード入力をスキップできる
ただしパスワードが丸見えなのでオススメはしない
認証トークン
認証トークンの載せ方は2つある
認証トークンをヘッダに載せる
curl -H "Authorization: token OAUTH-TOKEN" https://api.github.com
認証トークンをqueryに載せる
curl https://api.github.com/?access_token=OAUTH-TOKEN
Project(カンバン)の情報を取得する
ここからが本題
以下のサンプルでは認証はBASIC認証で記します
事前準備
リポジトリ単位で取得するのリポジトリのオーナー名
とリポジトリ名
を調べておいてください
リポジトリ内のプロジェクト一覧を取得する
curl -u "username" -H 'Accept:application/vnd.github.inertia-preview+json' https://api.github.com/repos/:owner/:repo/projects
:owner
と:repo
に先ほど調べた値を入れる
これでリポジトリ内のプロジェクト一覧が取れるので、見たいプロジェクトIDをメモる
プロジェクトのカラムを取得する
curl -u "username" -H 'Accept:application/vnd.github.inertia-preview+json' https://api.github.com/projects/:projectid/columns
カラム単位でカード一覧を取得する
curl -u "username" -H 'Accept:application/vnd.github.inertia-preview+json' https://api.github.com/projects/columns/:columnid/cards
これでバーンダウンチャートに必要な情報がとれた
情報を定期的に取得して集計すればバーンダウンチャートが作れる