この記事は コラボフロー Advent Calendar 2023 の 17日目 の記事です。
今回は、API実行シリーズに殴り込みです。
(Qといえば、やっぱりスタートレックのQだよね🤔・・・分からんかぁ😢)
API試すシリーズ追加ぁ🍺
コラボフローのREST APIを試すシリーズは、いくつかあります。
- コラボフロー REST APIをInsomniaで簡単実行しちゃお! - Qiita
- コラボフロー REST APIって叩いてみた? - Qiita
- PowerShellでコラボフローのREST APIを実行してみよう! - Qiita
Insomniaの簡単実行は、かなり強力、、、
同じくらい楽は出来ないのか・・・😇
Postman の APIネットワーク を使うよー
ということで!
Postman を使います。(Postmanのロゴ、かわいい~🧑🚀)
以下の資料と記事を参考に、
爆速で利用できるよう Postman APIネットワークへ
コラボフローAPIを追加しました🚀
やってくぞ🚀
0️⃣ 大前提
コラボフローのクラウド環境を有しており、
APIキーの発行が完了している状況を前提とした記事になってます🙏
※認証キーの生成は、自動で行うのでAPIキーの取得のみで問題ないです🙌
1️⃣ サインイン
まずは、Postmanのアプリをダウンロードして起動💁
起動後にサインイン!💁💁
2️⃣ ワークスペースを探す
Postmanの上部メニューの Search Postman をクリックして
「collaboflow」 と入力すると、 collaboflow API の workspace が見つかります。
※見つからない人は、ここをクリックしてね😘
3️⃣ フォークする
3️⃣-1️⃣ コレクションのフォーク
collaboflow workspace の Collections から collaboflow API を選択して、
三点リーダーから Creating A fork をクリックします。
コレクションの名称は、任意に変更して、
Fork Collection ボタンをクリックします。
コレクション内の pre-request script について
Pre-request Script にて、API実行前にAPIキー認証を生成して設定するようにしてあります😶🌫️
設定コード:
// 環境変数から認証に必要な情報を取得する
const userId = pm.environment.get('userId');
const apiKey = pm.environment.get('apiKey');
// APIキー認証のフォーマットで、Base64 Encoded
const base64encodedAuthorization = CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(`${userId}/apikey:${apiKey}`));
// 環境変数の認証情報変数に設定
pm.environment.set("base64EncodedAuthorization", base64encodedAuthorization);
参考:
3️⃣-2️⃣ 環境のフォーク
collaboflow workspace の Envrionments から Example を選択して、
三点リーダーから Creating A fork をクリックします。
Environment の名称は、任意に変更して、
Fork Environment ボタンをクリックします。
環境変数を変更する
サイドバーメニューの Environments をクリックします。
以下の変数の Current value に、
自分の有しているコラボフローの環境情報を入力して Save します。
Variables | 補足 |
---|---|
userId | APIを実行するユーザー |
apiKey | APIキー |
instance | コラボフローのインスタンス名 |
設定例:
※注:Current valueを変更しても、自環境にしか保存されていません。安心・・・😌
4️⃣ APIを実行する
右上の Environments からAPIの環境情報を選択します。
試したいAPIをクリックして展開し、文書IDなどAPI実行に必要なパラメーターを入力して・・・
Send ボタンをクリック~🥳
※注:PostやDeleteしたデータは、元に戻せませんのでご注意ください🛐
Postmanを使うメリット💡
自分のワークスペースにコレクションや環境情報をフォークすることで、
コレクションを編集したり、テスト用の環境情報を増やしたり、
別のサービスのAPIコレクションを追加したり、
また、チームで利用する各種APIを試す環境を整えれば、有効に活用できると思います🤚
いっじょう~🧑🚀🚀
18日目は、 @narubo さんです~
お楽しみに😘