API リファレンス

シークレット

API 経由でプロジェクトシークレットをリスト、作成、更新、削除します。値は書き込み専用 — 平文で返されることはありません。

最終更新:

Secrets API

プロジェクトのシークレット — API キー、トークン、およびデプロイ済みプロジェクトが実行時に process.env から読み取るその他の認証情報を管理します。値は書き込み専用です:これらのエンドポイントを通じて書き込まれ、デプロイ済みプロジェクトのランタイムを通じて使用され、API レスポンスでは返されません。

シークレットの仕組みと保存方法の背景については、 Secrets & Environment Variables ガイドをご覧ください。

シークレット一覧の取得

GET /api/v1/projects/{projectId}/secrets

プロジェクトで定義されたシークレットのセットを返します。キー名、値の末尾 4 文字、およびタイムスタンプのみが返されます。

レスポンス:

{
  "data": {
    "secrets": [
      {
        "key": "STRIPE_SECRET_KEY",
        "lastFour": "aB3x",
        "createdAt": "2026-04-18T09:12:44.000Z",
        "updatedAt": "2026-04-21T15:03:10.000Z"
      }
    ]
  }
}

シークレットの作成または更新

POST /api/v1/projects/{projectId}/secrets
{ "key": "STRIPE_SECRET_KEY", "value": "sk_live_..." }

(projectId, key)による冪等性 — 同じキーを再度 POST すると、保存された値が上書きされます。更新はプロジェクトごとの上限にカウントされません。新しいキーの追加のみがカウントされます。

キー形式:UPPER_SNAKE_CASE、1〜64 文字、文字で始まる必要があります。値の長さ:1〜4096 文字。

レスポンス:

{
  "data": {
    "secret": {
      "key": "STRIPE_SECRET_KEY",
      "lastFour": "aB3x",
      "createdAt": "2026-04-18T09:12:44.000Z",
      "updatedAt": "2026-04-21T15:03:10.000Z"
    }
  }
}

シークレットの削除

DELETE /api/v1/projects/{projectId}/secrets/{key}

シークレットを削除します。冪等性あり — 存在しないキーを削除しても success: true を返し、existed は実際に行が削除されたかどうかを示します。

レスポンス:

{ "data": { "success": true, "existed": true } }

エラー

  • 400 VALIDATION_ERROR — ボディの形式が間違っている、キーが形式チェックに失敗する、または値が空または 4096 文字を超えています。
  • 404 NOT_FOUND — プロジェクトが存在しないか、呼び出し元の API キーがそのプロジェクトにスコープされていません。書き込み / 削除の場合、呼び出し元は所有チームで admin ロールも必要です。
  • 409 SECRET_LIMIT_EXCEEDED — プロジェクトにはすでに 25 個のシークレットがあります。新しいキーを追加する代わりに、既存のキーを削除または更新してください。
  • 429 RATE_LIMITED — API レート制限を超えました。詳細は Error Handling をご覧ください。