runlot
リファレンスAPI

プロジェクト

project カテゴリの API オペレーションを 5 個カバーします。

メソッドパス説明
GET/v1/orgs/{orgSlug}/projects
POST/v1/orgs/{orgSlug}/projectsプロジェクトを作成します
GET/v1/orgs/{orgSlug}/projects/{projectName}
DELETE/v1/orgs/{orgSlug}/projects/{projectName}project の削除(runlot project delete
GET/v1/orgs/{orgSlug}/projects/{projectName}/overviewプロジェクト概要(ダッシュボードホーム)

GET /v1/orgs/{orgSlug}/projects

operationId listProjects

ステータスコード説明レスポンスボディ
200組織のプロジェクトobject
403
404

POST /v1/orgs/{orgSlug}/projects

プロジェクトを作成すると、ホスト名も発行されます。アサインメントはまだ作成されません — 最初のデプロイ時に作成されます。コードのないプロジェクトにノードをアサインすると、提供するものが何もないプロセスが起動してしまいます。

プロジェクト数の上限はここで強制されます(docs/limits.md §2)。組織の行をロックしてカウントするため、同時作成でも上限を超えることはありません。

operationId createProject

リクエストボディ: application/jsonobject

ステータスコード説明レスポンスボディ
201作成されたプロジェクトProject
403
409名前が既に使用されている(project_name_takenhostname_taken)か、プランのプロジェクト上限を超えています(project_limit)。project_limitdetails{limit, count, plan} です。メッセージから正規表現で数値を抜き出す実装は、文言が調整された日に静かに壊れます。再試行しても結果は変わらないため 409 です(403 は権限、429 は待ってから再試行すればうまくいくことを意味します)。Error

GET /v1/orgs/{orgSlug}/projects/{projectName}

operationId getProject

ステータスコード説明レスポンスボディ
200プロジェクトProjectDetail
403
404

DELETE /v1/orgs/{orgSlug}/projects/{projectName}

admin 以上が必要です。これは取り消せず、復旧用の世代も残りません。 戻る先の project がなくなるため、削除前の世代は誰も使えない blob になります。必要なデータは事前に runlot pg export でエクスポートしてください。

confirm フィールドには project の名前を正確に指定する必要があります。サーバーがこれをチェックする理由は org の削除と同じです — ダッシュボード・CLI・スクリプトという 3 つの呼び出し元がこのサーフェスを利用しています。

ティアダウンは、ルーティング → 処理中のリクエストとコミット → ノードのデータとオブジェクトストレージ → git リポジトリとバックアップ → メタデータ、の順に進みます。202 は開始したことを意味します。完了は GET /v1/orgs/{orgSlug}/operations/{opId} で確認してください。

operationId deleteProject

リクエストボディ: application/jsonobject

ステータスコード説明レスポンスボディ
202ティアダウンオペレーションの開始OperationStarted
400
403
404
409別のオペレーションが進行中(op_in_flightError

GET /v1/orgs/{orgSlug}/projects/{projectName}/overview

プロジェクトを開いたときに概要画面が一度の呼び出しで取得する内容です — 現在配信中のデプロイとそのアップロード者、直近のデプロイいくつか、データベースの最新バックアップ、宣言済みリソースがプロビジョニングされているか、そしてこのプロジェクトの最近の通知です。これが答えるのは「今どうなっているか」であり、履歴ではありません — 履歴はタブがすべて提供します。

使用量はここには含まれません。cp-core が一定の期間で計算するため、getUsage を別途呼び出してください — 1 つのレスポンスにまとめると、cp-core が遅い日には概要全体がその分だけ長く待たされることになります。viewer 以上が必要です。

operationId getProjectOverview

ステータスコード説明レスポンスボディ
200OverviewProjectOverview
403
404

このページの目次