---
title: 実録！AIはBacklog APIを使いこなせるのか
tags: 
author: [SUMIDA Yuki](https://convert.docswell.com/user/razon)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/YJ9WDKQ3J3.jpg?width=480
description: jbug広島#14 〜1人で解けないパズルは皆で解こうの会〜 でのLTです https://jbug.connpass.com/event/325704/  作ったプロンプトは↓ https://gist.github.com/shizone/7e090137b74d7915d3eaae5a964324e6
published: September 07, 24
canonical: https://convert.docswell.com/s/razon/ZR2264-2024-09-06-115339
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/YJ9WDKQ3J3.jpg)

AIは
実録！
APIを使いこなせるのか


# Page. 2

![Page Image](https://bcdn.docswell.com/page/GJ8N3RGLED.jpg)

り
被
ダ
ダ
程
日
と
d
l
r
o
W
g
o
）
l
k
目
c
a
回
B
2
り
ぶ
年
1
（
https://gbdaitokai.connpass.com/event/330065/
https://bonenkaigi.connpass.com/event/330155/


# Page. 3

![Page Image](https://bcdn.docswell.com/page/LJLPVKGQER.jpg)

ぼく
SUMIDA Yuki
𝕏: @razon
いろいろあってJBUG岡山の人
後厄のおじさん
中華の鉄人


# Page. 4

![Page Image](https://bcdn.docswell.com/page/47M4G2LKEW.jpg)

これがJBUG岡山の本質情報


# Page. 5

![Page Image](https://bcdn.docswell.com/page/P7RWZMK6E9.jpg)

夏の新作


# Page. 6

![Page Image](https://bcdn.docswell.com/page/PJXP9VLDEX.jpg)

AIは
実録！
APIを使いこなせるのか


# Page. 7

![Page Image](https://bcdn.docswell.com/page/3JKDPQLD7D.jpg)



# Page. 8

![Page Image](https://bcdn.docswell.com/page/LE3RXP3P75.jpg)



# Page. 9

![Page Image](https://bcdn.docswell.com/page/8EDY2L43EG.jpg)

なんとなく動きそうなコード出てきた
（Backlog APIは認識してそう）


# Page. 10

![Page Image](https://bcdn.docswell.com/page/V7P612MPJ8.jpg)

微妙に動作しないのでプロンプトに手をいれる
以下の条件でGASコードを書いてください。
# 概要
Googleスプレッドシートに入力した内容をBacklogの課題に一括登録するGASのスクリプト
# 挙動
- スプレッドシートに入力されたプロジェクトキーを元にプロジェクトIDを取得する
- スプレッドシートに入力された課題種別名を元に課題種別IDを取得する
- スプレッドシートに入力された優先度名を元に優先度IDを取得する
- 取得した各IDとスプレッドシートに入力された内容を元にBacklogの課題として一括追加する
# 必須条件
- スプレッドシートのシートについては先頭のシートを参照する
- BacklogAPIのAPIキーとURLについてはプロパティサービスから取得する
- Backlog APIのリクエストのContent-Typeは `application/json` とする
- 課題追加のAPIは https://developer.nulab.com/ja/docs/backlog/api/2/add-issue/ の仕様を参照する
- プロジェクト一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-project-list/ のAPIから取得する
- 課題種別一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-issue-type-list/ のAPIから取得する
- 優先度一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-priority-list/ のAPIから取得する


# Page. 11

![Page Image](https://bcdn.docswell.com/page/2JV3YD9VEQ.jpg)

できた


# Page. 12

![Page Image](https://bcdn.docswell.com/page/5EG39YZ17L.jpg)

項目が足りないので足したい


# Page. 13

![Page Image](https://bcdn.docswell.com/page/4JQ5WMLN7P.jpg)

足しました
以下の条件でGASコードを書いてください。
# 必須条件
# 概要
- スプレッドシートのシートについては先頭のシートを参照する
- BacklogAPIのAPIキーとURLについてはプロパティサービスから取得する
- Backlog APIのリクエストのContent-Typeは `application/json` とする
- Backlog APIのURLにはAPIキー(apiKey)を必ず含める
- 課題追加のAPIは https://developer.nulab.com/ja/docs/backlog/api/2/add-issue/ の仕様を参照する
- プロジェクト一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-project-list/ のAPIから取得する
- 課題種別一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-issue-type-list/ のAPIから取得する
- 優先度一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-priority-list/ のAPIから取得する
- バージョン一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-version-milestone-list/ のAPIから取得する
- カテゴリー一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-category-list/ のAPIから取得する
- ユーザー一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-user-list/ のAPIから取得する
- 課題一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-issue-list/ のAPIから取得する
- 課題登録時のペイロードのcategoryId、versionId、milestoneIdのリクエストパラメータ名の末尾には&quot;[]&quot;が必要なので付与する
- 複数指定可能なパラメータについては配列を&quot;&amp;&quot;で結合する
- 開始日/終了日については&quot;yyyy-MM-dd&quot;形式で指定する
Googleスプレッドシートに入力した内容をBacklogの課題に一括登録するGASのスクリプト
# スプレッドシートから登録可能な項目
- プロジェクトキー
- タイトル
- 説明
- 種類
- 優先度
- 開始日
- 終了日
- 予定時間
- 実績時間
- カテゴリ
- 発生バージョン
- マイルストーン
- 担当者
- 親課題番号
# 挙動
- スプレッドシートに入力されたプロジェクトキーを元にプロジェクトIDを取得する
- スプレッドシートに入力された課題種別名を元に課題種別IDを取得する
- スプレッドシートに入力された優先度名を元に優先度IDを取得する
- スプレッドシートに入力されたカテゴリ名を元にカテゴリIDを取得する
- スプレッドシートに入力された発生バージョンを元にバージョンIDを取得する
- スプレッドシートに入力されたマイルストーンを元にバージョンIDを取得する
- スプレッドシートに入力された担当者を元に担当者IDを取得する
- スプレッドシートに入力された親課題番号を元に親課題IDを取得する
- 取得した各IDとスプレッドシートに入力された内容を元にBacklogの課題として一括追加する


# Page. 14

![Page Image](https://bcdn.docswell.com/page/K749KVD3E1.jpg)

動いた


# Page. 15

![Page Image](https://bcdn.docswell.com/page/LJ1KX3ZZ7G.jpg)

ほかにも…
リストボックスから選択できるようにしたい
カスタム属性の対応
GASの画面から動かしているが、スプレッドシートから動かしたい
etcetc...


# Page. 16

![Page Image](https://bcdn.docswell.com/page/GJWDNP9672.jpg)

結局これって…
以下の条件でGASコードを書いてください。
# 必須条件
# 概要
- スプレッドシートのシートについては先頭のシートを参照する
- BacklogAPIのAPIキーとURLについてはプロパティサービスから取得する
- Backlog APIのリクエストのContent-Typeは `application/json` とする
- Backlog APIのURLにはAPIキー(apiKey)を必ず含める
- 課題追加のAPIは https://developer.nulab.com/ja/docs/backlog/api/2/add-issue/ の仕様を参照する
- プロジェクト一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-project-list/ のAPIから取得する
- 課題種別一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-issue-type-list/ のAPIから取得する
- 優先度一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-priority-list/ のAPIから取得する
- バージョン一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-version-milestone-list/ のAPIから取得する
- カテゴリー一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-category-list/ のAPIから取得する
- ユーザー一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-user-list/ のAPIから取得する
- 課題一覧については https://developer.nulab.com/ja/docs/backlog/api/2/get-issue-list/ のAPIから取得する
- 課題登録時のペイロードのcategoryId、versionId、milestoneIdのリクエストパラメータ名の末尾には&quot;[]&quot;が必要なので付与する
- 複数指定可能なパラメータについては配列を&quot;&amp;&quot;で結合する
- 開始日/終了日については&quot;yyyy-MM-dd&quot;形式で指定する
Googleスプレッドシートに入力した内容をBacklogの課題に一括登録するGASのスクリプト
# スプレッドシートから登録可能な項目
- プロジェクトキー
- タイトル
- 説明
- 種類
- 優先度
- 開始日
- 終了日
- 予定時間
- 実績時間
- カテゴリ
- 発生バージョン
- マイルストーン
- 担当者
- 親課題番号
仕様書めいてくる…
# 挙動
- スプレッドシートに入力されたプロジェクトキーを元にプロジェクトIDを取得する
- スプレッドシートに入力された課題種別名を元に課題種別IDを取得する
- スプレッドシートに入力された優先度名を元に優先度IDを取得する
- スプレッドシートに入力されたカテゴリ名を元にカテゴリIDを取得する
- スプレッドシートに入力された発生バージョンを元にバージョンIDを取得する
- スプレッドシートに入力されたマイルストーンを元にバージョンIDを取得する
- スプレッドシートに入力された担当者を元に担当者IDを取得する
- スプレッドシートに入力された親課題番号を元に親課題IDを取得する
- 取得した各IDとスプレッドシートに入力された内容を元にBacklogの課題として一括追加する


# Page. 17

![Page Image](https://bcdn.docswell.com/page/4EZG3K9RJ3.jpg)

おしまい
よいBacklogライフを


