Backlog API は、Nulab のプロジェクト管理ツール「Backlog」の課題・Wiki・Git リポジトリをプログラムから操作するための API だ。Backlog をチームの中心に据えている開発現場で、周辺ツールとの連携を作る入口になる。

自動化のパターン

よく使われるのは二方向の連携だ。ひとつは Backlog 発の通知で、課題のステータス変更を Slack や Chatwork に流して、Backlog を見ていないメンバーにも動きを届ける。Webhook を使えばイベントドリブンに実装できる。もうひとつは Backlog への書き込みで、CI/CD パイプラインからチケットのステータスを自動更新したり、デプロイ完了をコメントとして残したりできる。課題の検索 API が使えるので、特定条件のチケットを集計してダッシュボードを作るような用途にも向く。

認証とスペースの単位

Backlog は「スペース」という単位で契約され、API のエンドポイントはスペースごとのドメインに紐づく。複数スペースをまたぐ集計をしたいなら、それぞれに対して認証と接続を用意する必要がある。認証は API キーと OAuth の二方式があり、特定ユーザーに紐づく操作(コメントの投稿者など)を正しく記録したいなら OAuth、サーバー間のバッチなら API キー、という使い分けが素直だ。

料金と前提

フリープランでも API は利用できるが、プロジェクト数やユーザー数に制限がある。チームの規模が大きくなれば有料プラン(月額数千円台から)が前提になり、その制限の中で API 連携を設計することになる。

当然の制約

Backlog API は Backlog 専用で、Jira や GitHub Issues など他のツールはそれぞれ独自の API を持つ。複数のプロジェクト管理ツールを横断する統合基盤が必要なら、各 API を個別に扱う覚悟が要る。Backlog に一本化されている環境でこそ、この API の連携価値がきれいに出る。