まずはじめに
Trello の REST API を使用する
Trello API は、Trello のリソースにアクセスするための RESTful Web API です。この API を使用して、ボード、カード、メンバーから情報を取得したり、コンテンツを作成、更新、削除したりできます。
Trello の API を使用するメリット
Trello の API は次の目的で使用できます。
RESTful API リクエストを実行して Trello データにアクセスする
カスタム スクリプトを書いて、Trello と他のシステムとの間でデータを送信する
Trello と他のアプリ (CRM など) との間で情報を共有する
ユーザーに代わって特定のアクションを実行するカスタム Power-Up を作成する
API に関する用語
API の使用を開始する前に、API に関する用語をいくつか紹介します。
用語 | 定義 |
---|---|
API キー | API リクエストを実行するユーザーを識別する、文字と数字の一意の組み合わせ |
トークン | 認証と識別に使用される、文字と数字の一意の組み合わせ。API トークンには、特定のユーザーに付与されるアクセス範囲も含まれています。 |
エンドポイント | API が対象リソースに関するリクエストを受け取るデジタルなロケーション (通常は URL の末尾)。/boards は URL https://api.trello.com/1/boards のエンドポイントです。 |
クライアント | API リクエストを実行するアプリ。一般的なクライアントはウェブ ブラウザーです。以下の例では、クライアントは cURL アプリです。 |
リクエスト メソッド | リクエストの目的を示します。Trello では、GET、POST、PUT、DELETE の各メソッドを使用できます。何をしてほしいかはメソッドを通じて Trello API に伝えます。全 HTTP メソッドについてはこちらをご確認ください。 |
JSON オブジェクト | JSON (JavaScript Object Notation) は、JavaScript オブジェクト構文に似た、構造化された形式でデータを保存および転送する方法です。JSON の詳細についてはこちらをご確認ください。 |
API 呼び出し | データや機能にアクセスするためにクライアントからサーバーに送信されるリクエスト |
ステータス コード | リクエストが成功したかどうかを示す、API 応答の本文にある 3 桁の数字。ステータス コードの詳細についてはこちらをご確認ください。 |
API サーバー | API リクエストを認証して処理してから、適切なレスポンスを返します。 |
API レスポンス | API サーバーによって生成され、クライアントに返される応答 |
API キーとトークンを生成する
Trello の API を使用するには API キーが必要です。API キーを生成するには、まず Trello Power-Up を作成する必要があります。Trello の API にアクセスするには Power-Up を作成する必要があります。Power-Up は API キーの生成プロセスと結びついており、認証プロセス中にキーを識別できるためです。初めての Power-Up を作成する方法については、こちらのガイドをご覧ください。
Power-Up を作成したら、次の手順で API トークン生成します。
https://trello.com/power-ups/admin ページにアクセスします。
Power-Up をクリックしてから [API キー] タブをクリックします。
API キーの右側の段落の末尾にある [トークン] リンクをクリックして、認証ページに進みます。
API トークンは絶対に共有しないでください。パスワードのように厳重に扱ってください。API キーと一緒に使用すると、Trello アカウントのあらゆる要素にフル アクセスできます。
トークンにアカウントへのアクセスを許可する
トークン認証ページでは以下を確認できます。
トークンがアクセスできるアカウント
実行できること (スコープとも呼ばれる)
トークンは無効にするまで有効で、今後アクセス権を取得するすべてのボードとワークスペースにアクセスできます。
トークンでは以下を実行できます。
名前とユーザー名を読み取る
ユーザー本人としてコメントする
メール アドレスを読み取る
Enterprise を読み取る
Enterprise を更新および管理する
すべてのボードとワークスペースを読み取る
カード、リスト、ボード、ワークスペースを作成および更新する
所有している Power-Up を読む
所有している Power-Up を更新する
このトークンでは次のことができなくなります。
Trello のパスワードを見る
[許可] をクリックすると、自分のアカウントへの Power-Up アクセスが許可され、API キーとトークンを含むページにリダイレクトされます。
初めての API 呼び出しを実行する
これで、アカウントの API キーとトークンが用意できたので、API 呼び出しを開始できます。
Trello で最も一般的な API 呼び出しの 1 つが、ボードの API エンドポイントです。API 1/members/{memberId}/boards エンドポイントに GET リクエストを実行して、ユーザーに関連付けられているすべてのボードを一覧表示できます。この例では、コンピューターのターミナル アプリケーションで cURL を使用します。
ターミナル アプリケーションを開いて、次のように入力します。
curl 'https://api.trello.com/1/members/me/boards?key={yourKey}&token={yourToken}'
{yourKey} と {yourToken} のテキストを、以前に生成したキーとトークンの値に置き換えます。中括弧も置き換えます。
Trello の API を使って API 呼び出しを送信するには、次のような多くの方法があります。
JavaScript、Python、PHP、Node.JS などのコーディング言語 (Trello の API とやり取りするスクリプトを書く場合)。
Postman や SoapUI などの API プラットフォーム。これらの API プラットフォームは、API を扱うためのユーザー フレンドリーなインターフェイスを提供します。
どのプラットフォームやコーディング言語がニーズに合っているかは、ご自身で判断できます。
応答を理解する
JSON は人間の代わりにコンピューターが読むように設計されているので、フォーマットされていない長いテキスト ブロックのように見えます。必要に応じて、後からテキスト エディターやその他のツールを使って、JSON を読みやすいようにフォーマットできます。とりあえず、最初のボード ID を見つけます。
最初のボード ID を見つける方法。
最初のリクエストを入力した場所までスクロールして戻ります
リクエストの直後に、次のような形式の 24 文字の ID が表示されます: [{"id":"xxxxxxxxxxxxxxxxxxxxxxxx",
引用符の中の ID をコピーします
最初の呼び出しの情報を使用して別の API 呼び出しを実行する
レスポンスに記載されている情報により、特定のボードの 1 つからより多くの情報を得ることができます。
2 回目の API 呼び出しを行う方法。
JSON レスポンスからボード ID の 1 つをコピーします
次の API 呼び出しの {idBoard} テキストをボード ID に置き換えます:
curl 'https://api.trello.com/1/boards/{idBoard}?key={yourKey}&token={yourToken}'
レスポンスには、その ID のボードに関する情報が含まれます。たとえば、ボードの名前と説明はレスポンスの冒頭にあります。
ここに挙げたのは Trello API を使い始める方法のほんの一例に過ぎず、ここからたくさんの可能性を探ることができます。Trello API の機能について詳しく知るには、Trello API のドキュメントをご覧ください。
その他の API 呼び出しの例
ワークスペースのボードをすべて取得: curl 'https://api.trello.com/1/members/me/organizations/{organizationId}/boards
ボードのカードをすべて取得: curl 'https://api.trello.com/1/boards/{boardId}/cards?key=APIKey&token=APIToken
Trello Enterprise のユーザーをすべて取得: curl 'https://api.trello.com/1/enterprises/{enterpriseId}/members/query?key=APIKey&token=APIToken
カスタム スクリプトやユーザー生成の開発に対するサポートは提供されていませんが、開発者の活発なコミュニティをご利用いただけます。Trello の API の使用に興味を持っていただきありがとうございます。Trello の開発者コミュニティで指導とサポートを求めることを強くお勧めします。
その他のリソース
この内容はお役に立ちましたか?