LoginSignup
5
2
お題は不問!Qiita Engineer Festa 2024で記事投稿!
Qiita Engineer Festa20242024年7月17日まで開催中!

TROCCO®のHTTPコネクタを活用してBacklogのプロジェクトの課題一覧をBigQueryに転送する

Posted at

はじめに

Backlogとは株式会社ヌーラボが提供するプロジェクト管理ツールです。

プロジェクト管理をする際に、複数のプロジェクトで俯瞰的に各タスクの状況を把握する場合があります。Backlog上からでは、プロジェクト横断的に各タスクの状況を見れる機能がないため、タスク管理をする上で難しさを感じることがあります。

Backlog APIでは、「課題一覧」というタスク状況のわかるデータが取得できます。
API経由で複数プロジェクトの「課題一覧」のデータを取得し、集計して可視化を行うことで、複数プロジェクトのタスク管理を同時並行で進めることができます。

今回の記事ではTROCCO®のHTTPコネクタを活用し、Backlog APIから取れるプロジェクトの「課題一覧」のデータを、BigQueryに転送する方法を紹介します。

事前準備

TROCCO®アカウントの作成

TROCCO®アカウントの作成をお願いします。
TROCCO®には無料で始められるフリープランがあります。

Backlogの作成

すでにBacklogアカウントがあり、プロジェクトが存在していることを前提とします。

OAuth2.0認証と認可の設定

Backlog APIとTROCCO®との接続にはOAuth2.0を用いて行います。
Backlog DeveloperサイトからBacklogアプリケーションの登録を行い、アプリケーションの情報をTROCCO®上に登録させる必要があります。

まず、TROCCO®のホーム画面の「接続情報一覧」から「接続情報の新規作成(サービスの選択)」を行い、「HTTP・HTTPS」を選択します。

スクリーンショット 2024-06-27 10.16.03 2.png

「HTTP・HTTPS」選択後、「接続情報の作成・設定」画面に飛び、Backlog Developer上で必要な、TROCCO®のリダイレクトエンドポイントを確認します。

スクリーンショット 2024-06-27 10.10.13 2.png

次にBacklog Developerサイトから、Backlogアプリケーションの登録を行います。
TROCCO®のリダイレクトエンドポイントを記載し、作成ボタンを押します。

スクリーンショット 2024-06-25 16.56.42 2.png

作成ボタンを押すと、TROCCO®と接続するためのClinet Idと Client Secretが発行されます。

スクリーンショット 2024-06-25 16.55.07 2.png

最後にTROCCO®上でBacklogアプリケーションの接続情報を登録します。

TROCCO®の「接続情報の作成・設定」から「作成したアプリ情報の入力へ」のページに飛び、Backlogアプリケーションで作成したClinet Idと Client Secretを登録します。

スクリーンショット 2024-06-25 18.33.20 2.png

認可URL、アクセストークンURLに関してはBacklog API公式HPの「認証と認可」を参考にし、以下のように記載します。

- 認可URL
https://[スペースID].backlog.com/OAuth2AccessRequest.action

- アクセストークンURL
https://[スペースID].backlog.com/api/v2/oauth2/token

[スペースID]は、Backlog ヘルプセンター「スペースIDとは?」を参考に、BacklogのURL上から確認することができます。

最後に接続認証を行って、疎通が確認できれば設定完了です。

転送設定の実装

TROCCO®にログインし、転送設定の新規作成に進みます。
転送元 : HTTP・HTTPS
転送先 : BigQuery
を選択します。

転送元設定

はじめに、OAuth2.0の「利用する」にチェックをつけ、「HTTP・HTTPS接続情報」には事前準備で作成したTROCCO上の接続情報を選択します。

スクリーンショット 2024-06-25 16.11.42(2).png

カスタム変数機能についても設定を行います。
今回はBacklogAPIのパラメータprojectId[] を指定する際に使用します。

スクリーンショット 2024-06-25 18.22.48 2.png

次に、Backlog APIの設定に移ります。

今回は、Backlog APIの「課題一覧の取得」を使用します。
元となっているBacklog APIのURLは以下の通りです。

https://[スペースID].backlog.com/api/v2/issues?projectId[]=$projectid$

TROCCO®で設定する際は以下表の通りとなります。
表にない項目はデフォルトの値で問題ありません。

設定項目名 設定内容
URL https://[スペースID].backlog.com/api/v2/issues?
HTTPメソッド GET
文字エンコーディング UTF-8
ファイル入力形式 JSONPath
JSONPath $.*
パラメータprojectId[] $projectid$
HTTPヘッダContent-Type application/json 

スクリーンショット 2024-06-25 18.26.53 2.png

projectId[]は、Backlog画面上の「プロジェクト設定」ページのURLから確認ができます。

スクリーンショット 2024-06-25 18.36.08 2.png

また、projectId[]を指定しない場合でも、「課題一覧」を取得することができます。
その場合は、Backlogアカウントで権限があるすべてのプロジェクトの「課題一覧」が取得されます。

転送先設定

転送先設定にて、Google BigQuery接続情報、データセット、テーブル、データセットのロケーション、転送モードを設定します。

スクリーンショット 2024-06-27 14.18.38 2.png

STEP2の画面に進むと、転送するデータのプレビューを確認することができます。

スクリーンショット 2024-06-23 14.20.38(2).png

取得できる項目はBacklogAPI公式HPの「課題一覧の取得」からご確認ください。

テーブル定義やデータ型などは自動設定のままで問題ないので、確認・保存と進みます。

実行結果

転送実行後、BigQueryのプレビュー画面で、転送したデータが入っていることを確認できました。

スクリーンショット 2024-06-23 14.13.11 2.png

まとめ

今回の記事ではTROCCO®を用いて、Backlog APIのプロジェクトの「課題一覧」のデータを、BigQueryに転送する方法を紹介しました。

Backlog APIの「課題一覧」のデータは、プロジェクト管理をする上で有用な手段の一つとなってくれます。プロジェクトを管理する際には、ぜひご活用ください!

5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2