ベース URL とバージョニング
Sandbox.run()、sb.exec()、ファイル操作) に使用するサンドボックスのデータプレーンとは異なります。コントロールプレーンの操作では、サンドボックスを生成するインフラストラクチャを作成・設定します。データプレーンの操作では、実行中のサンドボックスと対話します。
API は v1 でバージョニングされています。追加的で後方互換性のある変更は v1 内で提供されます。互換性を損なう変更は新しいバージョンプレフィックスで提供され、CoreWeave はリリース前に告知します。
以前の v1beta2 サーフェスも引き続き利用でき、プロファイルテンプレートとプロファイルバインディングはそこにあります。これらはポリシーに置き換えられており、v1 には追加されません。新しい統合では v1 を対象にしてください。
認証
すべてのリクエストは、TLS 経由で Bearer トークン認証を使用します。[API-ACCESS-TOKEN] を CoreWeave API アクセストークンに置き換えてください:
SANDBOX_ADMIN: ランナーの作成、読み取り、更新、削除、およびランナーに設定するポリシーの指定ができます。このページに記載されているエンドポイントは、読み取り系も含めてすべてこの action が必要です。SANDBOX_USERを含みます。SANDBOX_USER: サンドボックスの作成と操作ができます。このページのエンドポイントへのアクセス権は付与されません。
google.rpc.Status 形式の本文とともに 401 Unauthenticated を返します。
CoreWeave Intelligent CLI (cwic) は、これらの REST エンドポイントをラップします。CLI ユーザーは cwic auth login で一度認証すると、cwic がローカルの cwic 設定にトークンを保存します。CLI のワークフローについては、サンドボックスポリシーを設定する を参照してください。
コンテンツタイプ
リクエストボディとレスポンスボディはすべて JSON 形式です。curl や fetch 形式のクライアントもそのまま利用できます。gRPC クライアントは不要です。これらのエンドポイントのベースとなっている公開 Protobuf 定義と、そこから生成された SDK については、Protobuf を参照してください。
リソースファミリー
コントロールプレーンは、管理用リソースとしてマネージドランナーを公開します。
ポリシーを個別に指定してアクセスすることはできません。ポリシーはランナーのフィールドであるため、ランナーを取得して読み取り、更新対象を
policy に限定したランナーの更新で書き込みます。書き込みのたびにドキュメント全体が置き換えられます。手順については、サンドボックスポリシーを設定するを参照してください。
プロフィールテンプレートは、ランナーの profile_bindings フィールドとともに、引き続き v1beta2 の /v1beta2/sandbox/profile-templates で利用できます。これらはポリシーに置き換えられており、v1 モデルには含まれず、今後も追加されません。
概念モデルと、ゲートウェイが実行時のリクエストを仲介する仕組みについては、サンドボックスのアーキテクチャを参照してください。このページでは、エンドポイントの仕様を説明します。
ページネーション
List エンドポイントは、カーソルベースのページネーションをサポートしています。pageSize: ページサイズ。デフォルトは50、最大は100です。pageToken: 前のページでnextPageTokenとして返されたカーソル。空文字列の場合、それ以上のページはありません。
Paginate managed runners
cwic sandbox runner get などの一覧表示コマンドの出力を自動的にページ分割します。
更新時のフィールドマスク
更新用のエンドポイントは、オプションのupdate_mask を受け付けます。マスクが指定されている場合は、マスクに列挙されたフィールドのみが適用され、API はリクエストオブジェクト上のその他のフィールドをすべて無視します。マスクが指定されていない場合は、リクエストオブジェクト上の空でない変更可能なフィールドがすべて適用されます。
パスはドット区切り表記と snake_case のフィールド名を使用します (標準の google.protobuf.FieldMask の規則) 。よく使用される変更可能なパスは次のとおりです。
REST インターフェースでは、各パスの JSON (camelCase) 形式を使用して、マスクをカンマ区切りの単一の
updateMask クエリパラメーターとして指定し、リソース自体はラッパーなしでリクエストボディとして送信します。
エラー
エラーは適切な HTTP ステータスとgoogle.rpc.Status 本文を返します。
検証メッセージは安定した公開仕様の一部です。エンドユーザーに直接表示できます。
冪等性
コントロールプレーンAPIは、次の冪等性を保証します。Delete*エンドポイントは冪等です。すでに削除済みのリソースに対してDELETEを呼び出した場合、副作用なしに404が返されます。Create*エンドポイントは冪等ではありません。同じrunnerIdまたはdisplayNameを2回指定すると409 Conflictが返されます。安全に再試行するには、GETでリソースがすでに存在するかどうかを確認してください。Update*エンドポイントは、フィールドマスクを使用し、変更したいフィールドのみを設定していれば、安全に再試行できます。
ハートビート
ランナーのハートビートは、ランナーの生存状態をトラッキングします。コントロールプレーンが生存確認期間内にハートビートを受信しないと、ランナーのconnectionStatus は DISCONNECTED に切り替わります。ランナーに到達できなくなってからコントロールプレーンに反映されるまで、最大 30 秒の遅延が生じます。ランナーの Get 応答から、connectionStatus と関連する installStatus フィールドの両方を読み取れます。
関連情報
- サンドボックスのアーキテクチャ: 4 種類のリソースの分類と、ゲートウェイが実行時リクエストを仲介する仕組みを説明します。
- ポリシーの概要: サンドボックスにポリシーが適用される仕組みを説明します。
- サンドボックスポリシーを設定する: CoreWeave Intelligent CLI のワークフローと、プロフィールの spec の各フィールドを順に説明します。
- ランナーのデプロイと管理: CoreWeave Intelligent CLI と REST を使用したランナーのライフサイクル管理を順に説明します。
- ポリシーリファレンス: プロフィールで設定できるすべてのフィールドを説明します。
- Protobuf: 公開されている Protobuf モジュールの入手先、各サービスを提供するホスト、生成された SDK のインストール方法を説明します。