
Trello: リスト ID 取得
この工程は、Trello のリスト ID を取得します。
Basic Configs
- 工程名
- メモ
Configs for this Auto Step
- conf_ApiKey
- C1: API キーを設定した認証設定 *
- conf_ApiToken
- C2: API トークンを設定した認証設定 *
- conf_BoardId
- C3: ボード ID *
- conf_ListName
- C4: リストの名前 *
- conf_ListId
- C5: リスト ID を保存するデータ項目 *
Notes
- API キー、API トークンを取得するには、
- Power-Up の管理ページを開き、新しい Power-Up を作成してください
- 左メニューの「API キー」を開くと、API キーが表示されます
- API キーの右側の「手動でトークンを生成できます」のリンクから、トークンを取得してください
- ボード ID は、次の手順で取得できます
- ブラウザで Trello のボードを表示します
- アドレスバーの URL の末尾に .json を追加すると、ボード情報の JSON が 表示されます
- 表示された JSON 内の「id」の値がボード ID です
Capture

See Also
Script (click to open)
- 次のスクリプトが記述されている XML ファイルをダウンロードできます
- trello-listid-get.xml (C) Questetra, Inc. (MIT License)
- Professional のワークフロー基盤では、ファイル内容を改変しオリジナルのアドオン自動工程として活用できます
function main() {
//// == 工程コンフィグ・ワークフローデータの参照 / Config & Data Retrieving ==
const authKey = configs.getObject("conf_ApiKey");
const authToken = configs.getObject("conf_ApiToken");
const boardId = configs.get('conf_BoardId');//固定値指定のみ 必須
const listName = configs.get('conf_ListName');//固定値指定のみ 必須
const listIdDef = configs.getObject('conf_ListId');
const apiKey = authKey.getToken();
const apiToken = authToken.getToken();
//// == Calculating / 演算 ==
const listObj = getListInformation(apiKey, apiToken, boardId);
const trelloListId = getListId(listObj, listName);
engine.setData(listIdDef, trelloListId);
}
/**
* ボード内のリスト情報を取得する
* @param {String} auth.apiKey
* @param {String} auth.apiToken
* @param {String} boardId
* @return {Object} list
*/
function getListInformation(apiKey, apiToken, boardId) {
const url = `https://api.trello.com/1/boards/${boardId}/lists?key=${apiKey}&token=${apiToken}`;
const response = httpClient.begin()
.get(url);
const status = response.getStatusCode();
const responseStr = response.getResponseAsString();
if (status !== 200) {
engine.log(responseStr);
throw `Failed to get list information. status: ${status}`;
}
return JSON.parse(responseStr);
}
/**
* リスト情報からリスト名に対応するリスト ID を取得する
* @param {Object} listObj リスト情報の JSON オブジェクト
* @param {String} listName リスト名
* @return {String} listId リスト ID
*/
function getListId(listObj, listName) {
let listId;
let index = listObj.findIndex((listElement) => listElement.name === listName);
if (index !== -1) {
listId = listObj[index].id
} else {
throw `List name: "${listName}" not found in the Board`;
}
return listId;
}