Skip to content

CML2 へ Postman から REST API アクセスする

Cisco CML 2.2 を REST API から操作する場合、まず CML 自体へログインする必要があります。 CML では Bearer Token を利用出来ますが、

Step.1

REST API を利用するには、まず最初に CML2 でログイン処理を実施して Bearer Token を取得する必要があります。 CML2 のログイン処理用 URL は以下です (ADDRESS には CML2 のアドレスを指定します)。 CML2 はヘッダでは無く、Response Body で Bearer Token を応答します。 また、JSON などの構造化フォーマットでは無く、Bearer Token をそのまま文字列で応答するようです。

  • https://ADDRESS/api/v0/authenticate

このままでは取得した Bearer Token を「次に実行したい REST API」で使い回せない為、ここで取得した Bearer Token 値を Postman の Environments に格納すべく、authenticate REST API の Tests タブに以下の JavaScript を記載します。

1
2
3
4
5
let ok = responseCode.code === 200;

if(ok){
    pm.environment.set('token', responseBody.split('"').join(''));
}

Response Body はダブルクォートで括られて応答される為、ダブルクォートを削除する必要があります。 JavaScript の replace メソッドでは「最初に一致した文字の置換しか行わない」為、split メソッドと join メソッドを併用してダブルクォートを削除しました。

file

Step.2

authenticate REST API を実行した後に Environments を確認すると token という変数に Bearer Token が格納されています。

file

Step.3

他の REST API を実行する際、AuthorizationType{{token}} を入力し、Environments に設定した token の値を参照させます。

file

これで authenticate REST API で取得した Bearer Token 値を他の REST API で使い回せるようになりました。