Managed Runtime API

Managed Runtime API を使用して、Commerce Cloud の Managed Runtime にデプロイされたアプリケーションをコントロールします。Runtime Admin Web アプリケーションと同じ機能をもち、より多くの管理機能と構成オプションを利用するためのカスタムツールを作成できます。

Managed Runtime API は管理作業専用です。 ストアフロントコードでこの API へのリクエストは 行わないでくださいレート制限を超える要求はブロックされます。

  • ストアフロントから環境変数を読み取るには、process.envを使用します。
  • リダイレクトを読み取って読み込むには、マネージド エンドポイント/mobify/redirects/$pathを使用します。

このガイドでは、ユーザーがすでに Managed Runtime と関連する概念 (プロジェクト、環境、バンドル、デプロイなど) に精通していると仮定しています。詳細については、Managed Runtime の概要を参照してください。

Mobify のブランド名は、Managed Runtime API のベース URL のmobify.com ドメインに引き続き表示されます。新しい Salesforce ドメインが最終的には Mobify ドメインを置き換えますが、Mobify ドメインのサポートは継続されます。

API リクエストを行うには、HTTP リクエスト Authorization ヘッダーに値 Bearer $API_KEY で API キーを含める必要があります。

API キーを見つけるには、Runtime Admin ツールにログインし、Account Settings (アカウント設定) ページを開きます。

API キーを使用すると、スクリプトで操作を実行することができます。このため、API キーはパスワードと同様に取り扱ってください。

以下に、手短なチュートリアルを使用して API を使用する方法を説明します。このチュートリアルは、curl コマンドの形式をもつリクエストの例に基づいています。

コマンドを実行する前に、すべてのプレースホルダーを実際の値に置き換えてください。プレースホルダーは $PLACEHOLDER の形式になっています。

ほとんどのリクエストでは、$PROJECT_ID を実際のプロジェクト ID に置き換える必要があります。プロジェクト ID を見つけるには、Runtime Admin ツールにログインし、プロジェクトの設定ページを開きます。

プロジェクト ID は最大 20 文字で、グローバルに一意である必要があります。

Managed Runtime API への最初のリクエストでは、プロジェクトに属するすべての環境 (API で「ターゲット」と呼ばれるもの) を一覧表示します:

projects_target_list API エンドポイントを呼び出して、環境を一覧表示します。

次に、production にデプロイする前に変更の確認に使用する、staging という名前の環境を作成します:

まず、projects_target_create API エンドポイントを呼び出します。プロジェクトを作成する場合は、projects_create API エンドポイントを呼び出して環境を作成することもできます。

次に、cc_b2c_target_info_update API エンドポイントを呼び出して、Commerce Cloud インスタンスと 1 つ以上のサイトを環境に接続します。

新しい環境を使用するには、その環境にバンドルをデプロイする必要があります。

projects_target_retrieve API エンドポイントを呼び出して、作成した staging 環境の詳細を確認しましょう。

最後に、projects_target_partial_update API エンドポイントを呼び出して、staging のプロキシ構成を変更しましょう。

構成を変更すると、デプロイされたバンドルが再デプロイされ、構成の更新が有効になります。

API の使用で問題が発生した場合は、以下のトラブルシューティングの手順を試してください。

  • --fail 引数を curl コマンドに追加します。
  • API キーを確認します。
  • プロジェクトの ID を確認します。

API エンドポイントはブラウザーでも機能します。Runtime Admin ツールにログインして、ブラウザーで直接使用しているエンドポイントを開きます。

Managed Runtime API を使用した継続的な統合とデプロイをサポートするには、オートメーション用の Account Manager ユーザーを作成します。

  • Google グループなどの共有メールアドレスを使用して、Account Manager でユーザーアカウントを作成します。関連する認証情報と MFA コードを LastPass などのパスワードマネージャーに保存します。
  • Managed Runtime User の役割をユーザーに割り当てます。
  • Runtime Admin で必要な権限をユーザーに割り当てます。ユーザーの Managed Runtime API キーは、ユーザー権限で許可されているものにのみアクセスできます。CI/CD がやりとりする必要があるプロジェクトに固有のものにしてください。
  • ユーザーの API キーを作成し、継続的インテグレーションシステムに保存します。

Managed Runtime API キーをアクティブな状態に保つには、組織の Account Manager 構成の要求に応じてパスワードを更新し、関連する Account Manager のアカウントをアクティブな状態に保つ必要があります。ユーザーが非アクティブにされている場合は、パスワードをリセットして API キーを再度有効にし、ユーザーを再びアクティブ化します。

Managed Runtime API には、単位時間あたりに許可されるリクエスト数のレート制限が設けられています。レート制限はユーザーごとに適用され、すべてのユーザーに対し公平なアクセスを確保するのに役立ちます。

リクエストがレート制限を超えた場合、API は HTTP 429 Too Many Requests エラーと、再試行できるまで待機する秒数を示す Retry-After HTTP ヘッダーを返します。

レート制限は調整できません。

以下の表は、さまざまな API ファミリーのレート制限を表しています。

一部のエンドポイントには累積レート制限があります。つまり、エンドポイントごとに制限されないことを意味します。代わりに、累積レート制限によって複数のエンドポイントにわたるリクエストの合計数が抑制されます。すべての GET リクエストには累積レート制限があります。同様に、次の表で個別に呼び出されないエンドポイントに対するすべての POST、PATCH、および DELETE リクエストには累積レート制限があります。これらの制限については以下で説明します。

メソッドエンドポイント
POST/api/projects/
PATCH/api/projects/*/
DELETE/api/projects/*/
POST/api/projects/*/builds/*/
POST/api/projects/*/target/
PATCH/api/projects/*/target/*/
DELETE/api/projects/*/target/*/
POST/api/projects/*/target/*/deploy/
累積 1 分間の制限累積 1 時間の制限
10100
メソッドエンドポイント5 分間の制限1 時間の制限
POST/api/projects/*/target/*/invalidation/15100
メソッドエンドポイント1 分間の制限1 時間の制限
GETすべてのエンドポイントの組み合わせ。1000該当なし
POST、PATCH、DELETE残りのすべてのエンドポイントの組み合わせ。100該当なし

ここでは、API の使用方法を学習し、リクエストのサンプルを作成しました。

API の詳細については、API の仕様を参照してください。

API の Open API スキーマは、次の場所で入手できます。