LoginSignup
3
0

More than 1 year has passed since last update.

API Connect製品提供のREST APIを使用して環境設定を自動化する

Posted at

はじめに

以前、こちらの記事で環境のセットアップをToolkitで自動化することができることを紹介しました。
こられのコマンドは、裏で製品提供のREST APIが呼ばれています。この仕様は、Open API Explorer Documentation のサイトにまとまっています。

具体的なAPI呼び出しの詳細は、以下のような方法で確認することも可能です。

  • Toolkitコマンドのデバッグオプションで確認(--debug)
  • API Manager等のブラウザー操作をトレースで確認

この記事では、製品提供のREST APIを使用して環境設定を自動化する方法を紹介します。

前提と準備

今回の稼働確認は、API Connect v10.0.1.2の環境で行っています。
まず、REST APIを呼び出すためのCredential情報を取得する必要があります。Cloud ManagerやAPI ManagerからToolkitをダウンロードする際に、資格情報ファイルをダウンロードできます。

image.png

このファイルのデータは以下のような構造となり、今回使用するのは"toolkit"内の情報となります。

credentials.json
{
  "cloud_id": "****",
  "toolkit": {
    "endpoint": "https://xxx.com/api",
    "client_id": "****",
    "client_secret": "****"
  },
  "consumer_toolkit": {
    "endpoint": "https://xxx.com/consumer-api",
    "client_id": "****",
    "client_secret": "****"
  }
}

環境設定の流れ

GUI操作と同様に以下の流れで環境設定をREST APIで実施できます。
リクエストで必要なHTTPパラメーターは「はじめに」に記載の仕様で確認できます。

プロバイダー組織の登録

  • 1.1 CMCログイン
    • ログインで発行されるアクセストークンを取得して後続の処理で使用します
  • 1.2 プロバイダー組織所有者の登録
    • プロバイダー組織所有者に割り当てられるowner_urlを取得して次の処理で使用します
  • 1.3 プロバイダー組織の登録

カタログとコンシューマー組織の登録

  • 2.1 APIMへログイン
    • ログインで発行されるアクセストークンを後続の処理で使用します
  • 2.2 カタログを作成
  • 2.3 (オプション)カタログのGatewayService登録(CMCにてカタログのデフォルトGatewayServiceを指定してあれば不要です)
  • 3.1 コンシューマー組織所有者の登録
    • プロバイダー組織所有者に割り当てられるowner_urlを取得して次の処理で使用します
  • 3.2 コンシューマー組織の登録
  • 3.3 アプリケーションの登録

APIの公開とテスト

  • 2.1 APIMへログイン
    • ログインで発行されるアクセストークンを後続の処理で使用します
  • 4.1 ドラフトAPIの作成
  • 4.2 ドラフト製品の作成
    • ドラフト製品に割り当てられるprouct_urlを取得して次の処理で使用します
  • 4.3 ドラフト製品の公開
    • 公開製品に割り当てられるproduct_urlを取得して次の処理で使用します
  • 4.4 サブスクリプションの登録
  • 4.5 公開したAPIのテスト呼び出し

(オプション)環境の削除

以下の流れで上記の設定情報を削除できます。

  • 1.1 CMCログイン
    • ログインで発行されるアクセストークンを取得して後続の処理で使用します
  • 5.1 プロバイダー組織の削除
  • 5.2 プロバイダー組織所有者の削除

環境設定自動化例

上記の流れを自動化したサンプルJMeterシナリオをこちらで公開していますので、参考にしていただければと思います。
以下のような環境情報を設定する必要があります。

image.png

以上

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0