Skip to main content
Credentials

Credential の更新

Forward API リファレンス。

説明

指定した Vault にある active 状態の Credential をその場で更新します。リクエストは Merge Patch 形式で、指定しないフィールドは現在の値を維持します。そのため、Credential を作り直さずにシークレットをローテーションできます。Forward は、呼び出し元が所属する Vault への書き込み権限を持つことを確認します。機密性の高い認証フィールドは書き込み専用で、レスポンスには返されません。

パス

POST /api/v1/forward/vaults/{id}/credentials/{cred_id}

リクエストヘッダー

ヘッダー必須説明
AuthorizationはいBearer <PAT または SAT>
Content-Typeはいapplication/json

パスパラメーター

パラメーター型必須説明
idstringはいVault ID。
cred_idstringはいCredential ID。

クエリパラメーター

ParameterTypeRequiredDescription
identity_idstringNoIdentity に属するリソースを操作する場合のみ使用する任意のパラメーターです。PAT では明示的に指定でき、省略時は管理者スコープになります。SAT では Identity スコープのトークンを発行し、このパラメーターを明示的に指定しないでください。指定すると HTTP 400 が返されます。Identity の帰属.

リクエストボディ

リクエストは部分更新セマンティクスを使用します。auth と metadata のみを受け付け、少なくとも 1 つのフィールドが必要です。
フィールド型必須説明
authobjectいいえ現在の Credential タイプの認証情報を部分更新します。指定する場合は、現在のタイプと一致する type が必要です。
metadataobject | nullいいえ既存の metadata に Merge Patch を適用します。オブジェクト内の null は対応するキーを削除し、トップレベルの null は metadata 全体を消去します。created_by は予約済みで、更新できません。
Credential タイプ、MCP Server URL、環境変数の secret_name、および OAuth refresh 設定の client_id と token_endpoint は、このエンドポイントでは変更できません。

static_bearer

フィールド型必須説明
typestringはいstatic_bearer 固定。
tokenstringいいえBearer token を置き換えます。書き込み専用で、レスポンスには返されません。

mcp_oauth

フィールド型必須説明
typestringはいmcp_oauth 固定。
access_tokenstringいいえAccess token を置き換えます。
expires_atstring | nullいいえRFC 3339 形式の時刻。null で有効期限を消去します。
refreshobjectいいえ既存の refresh 設定を部分更新します。refresh 設定がない Credential に新しく追加することはできません。
refresh オブジェクトでサポートされるフィールド:
フィールド型必須説明
refresh_tokenstringいいえRefresh token を置き換えます。
scopestring | nullいいえScope を置き換えるか消去します。
token_endpoint_authobjectいいえToken endpoint の認証設定を更新します。

environment_variable

フィールド型必須説明
typestringはいenvironment_variable 固定。
secret_valuestringいいえシークレット値を置き換えます。書き込み専用で、レスポンスには返されません。

リクエスト例

curl -X POST "https://api.qoder.com/api/v1/forward/vaults/vault_xxx/credentials/vcred_xxx" \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d '{
    "auth": {
      "type": "static_bearer",
      "token": "new-secret-token"
    },
    "metadata": {
      "rotated_by": "console"
    }
  }'

レスポンス例

HTTP 200 OK
{
  "id": "vcred_xxx",
  "type": "vault_credential",
  "vault_id": "vault_xxx",
  "auth": {
    "type": "static_bearer",
    "mcp_server_url": "https://mcp.example.com"
  },
  "display_name": "",
  "metadata": {
    "rotated_by": "console"
  },
  "archived_at": null,
  "created_at": "2026-07-23T10:00:00Z",
  "updated_at": "2026-08-27T12:00:00Z"
}
レスポンスは Vault credential object です。token、secret などの機密フィールドは返されません。
Credential の更新は書き込み専用です。クライアントが成功レスポンスを受け取れなかった場合、その後の GET ではマスクされた状態しか取得できず、新しいシークレットが有効になったかどうかを確認できません。シークレット更新を自動的に再試行しないでください。

エラー

HTTPType発生条件
400invalid_request_errorリクエストボディまたはパスパラメーターが無効です。更新可能なフィールドがない、未サポートのフィールドがある、auth.type がないか現在のタイプと一致しない、フィールド値が無効、refresh 設定がない Credential の refresh を更新しようとした場合などが含まれます。
400invalid_request_error予約済みキー created_by を指定した場合、message は metadata key "created_by" is reserved になります。
401authentication_error認証トークンがないか、無効です。
403permission_error呼び出し元には所属する Vault または Credential へのアクセス権がありません。
404not_found_errorVault または Credential が存在しないか、表示できません。
409conflict_errorVault または Credential がアーカイブ済みか、リソースの状態が競合しています。
500/502/503api_errorForward または依存サービスでエラーが発生しました。
Credential リクエストの認証情報は機密データです。一部の詳細な検証メッセージは統一されたマスク済みメッセージに置き換えられますが、HTTP ステータスとエラー type は変わりません。
Credential の更新 - Qoder