POST /api/v1/forward/identities/{identity_id}/templates/{template_id}/config
config が存在しない場合は作成し、存在する場合は既存のアクティブな config を更新します。Identity Config は Template のベースラインに対するユーザーレベルのオーバーライドです。
Headers
| Header | Required | Description |
|---|---|---|
Authorization | Yes | Bearer <PAT> |
Content-Type | Yes | application/json |
Idempotency-Key | No | 安全でないリクエストに対する任意のべき等性キー。 |
Path parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
identity_id | string | Yes | Forward Identity ID。 |
template_id | string | Yes | Forward Template ID。 |
Body parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | No | Config の表示名。 |
identity_config | object | Yes | ユーザーレベルのオーバーライド構成。 |
metadata | object | No | カスタムメタデータ。指定した場合は既存のメタデータを置き換えます。 |
Identity config object
identity_config は保存されるユーザーレベルのオーバーライド DSL です。これは Get Effective Config が返すコンパイル済みのランタイム構成ではありません。
| Field | Internal target | Description |
|---|---|---|
system | Agent | システムプロンプトのオーバーライドまたは追加ルール。 |
model | Agent | モデルのオーバーライド。 |
tools | Agent | ツール名をキーとする組み込みツールのオーバーライド。 |
mcp_servers | Agent | MCP サーバー名をキーとする MCP サーバーのオーバーライド。 |
skills | Agent | Skill ID をキーとする Skill のオーバーライド。 |
toolsets | Agent | 主に MCP ツールセットや組み込みツールグループを対象とする、ツールセットレベルのオーバーライド。 |
agent_metadata | Agent | コンパイルされた agent メタデータにマージされるメタデータ。 |
vaults | Session | Vault ID をキーとする Vault リソースのオーバーライド。 |
files | Session | File ID をキーとする File リソースのオーバーライド。Forward が mount_path を注入するため、呼び出し元はここで指定しません。 |
environment / environment_id | Unsupported | Identity Config は Template の environment をオーバーライドできません。これらのフィールドを含むリクエストは 400 invalid_request_error で失敗します。 |
Update semantics
| Request shape | Semantics |
|---|---|
| フィールドが省略されている | 既存の値を保持します。 |
| フィールドが非 null 値で存在する | そのフィールドを更新します。 |
フィールドが null で存在する | 現在の Identity Config からそのフィールドを削除します。 |
metadata が省略されている | 既存のメタデータを保持します。 |
metadata オブジェクト | 既存のメタデータを置き換えます。 |
metadata null | メタデータをクリアします。 |
Resource map semantics
skills、vaults、files はリソース ID をマップキーとして使用します。マップ項目の内部に skill_id、vault_id、file_id、id、resource_id を含めないでください。これらのランタイムフィールドは、Forward がコンパイルした Effective Config にのみ現れます。
| Map item value | Semantics |
|---|---|
{ "enabled": true } | リソースを明示的に有効化またはオーバーライドします。 |
{ "enabled": false } | Template のベースラインに存在していても、リソースを明示的に無効化します。 |
| 項目が省略されている | Template のベースラインを継承します。 |
項目の値が null | このオーバーライドを削除し、Template の継承を復元します。 |
Example request
Example response
HTTP 200 OKResponse fields
| Field | Type | Description |
|---|---|---|
type | string | 常に config。 |
identity_id | string | Forward Identity ID。 |
template_id | string | Forward Template ID。 |
name | string | Config の表示名。 |
status | string | Config のステータス。 |
effective_hash | string | コンパイルされた有効な構成のハッシュ。 |
created_at | string | 作成タイムスタンプ。 |
updated_at | string | 更新タイムスタンプ。 |
Errors
| HTTP | Type | Trigger |
|---|---|---|
| 400 | invalid_request_error | config フィールドが無効、サポートされていない environment のオーバーライド、または無効なボディです。 |
| 401 | authentication_error | PAT が無効または期限切れです。 |
| 404 | not_found_error | Identity、Template、Skill、Vault、または File が存在しません。 |
| 409 | conflict_error | config の状態が競合しています。 |
Notes
- 省略された config フィールドは変更されません。
- フィールドを
nullに設定すると、現在の Identity Config からそのフィールドが削除されます。 - リソースマップは、そのリソース ID をマップキーとして使用します。1 つのリソースの継承を復元するには、そのマップエントリを
nullに設定します。 - Identity Config は
environment_idのオーバーライドをサポートしていません。