curlコマンドでTrelloのリストのIDを取得する


シェル(curlコマンド)でTrelloのリストのIDを取得する方法を確認したのでメモ。

TrelloのAPIを利用してカードを投稿するためには、投稿先のリストのIDが必要となるが、このIDの値は事前にシェルなどで確認しておく必要がある。

取得してみる

  • APIキーとAPIトークンを取得

https://trello.com/app-keyよりAPIキーとAPIトークンを取得する。

  • 自分のユーザー名を取得

https://trello.comでページ右上のアイコンより[プロフィールと公開範囲]をクリック

赤枠内の@の右側がユーザー名なので控える。

  • ボードIDを取得

前述の手順で取得したAPIキー、APIトークン、ユーザー名を指定して、curlコマンドでボードID一覧を取得する。

$ key="<APIキー>"
$ token="<APIトークン>"
$ user_name="<ユーザーID>"

$ curl "https://trello.com/1/members/${user_name}/boards?key=${key}&token=${token}&fields=name" | jq .

こんな感じのJSONのリストが返ってくるので、カードを投稿したいリストが含まれるボードのidを控える。

[
  {
    "name": "Board",
    "id": "XXXXXXXXXXXXXXX"
  },
  {
    "name": "task",
    "id": "YYYYYYYYYYYYYYY"
  },
  {
    "name": "trash",
    "id": "ZZZZZZZZZZZZZZZ"
  }
]
  • リストIDを取得

先程控えたボードIDを指定して、curlコマンドでリストID一覧を取得する。

$ board_id="<ボードID>"
$ curl "https://trello.com/1/boards/${board_id}/lists?key=${key}&token=${token}&fields=name" | jq .

こんな感じのJSONのリストが返ってくるので、カードを投稿したいリストのidを控える。

[
  {
    "id": "5e7a20719b46942f3b12d9ca",
    "name": "2020-03-25"
  },
  {
    "id": "5dea89fb416b532c9495f81a",
    "name": "Ready"
  },
  {
    "id": "5dfc9ec2fd1b113a0cb1fdbc",
    "name": "Waiting"
  }
]

参考