Get the compiled runtime config for an Identity and Template.
GET /api/v1/forward/identities/{identity_id}/templates/{template_id}/effective
Returns the effective configuration after applying Identity Config overrides to the Template baseline. The response is designed for runtime execution and does not include Forward DSL fields such as enabled or op.
Headers
| Header | Required | Description |
|---|---|---|
Authorization | Yes | Bearer <PAT or SAT> |
Path parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
identity_id | string | Yes | Forward Identity ID. |
template_id | string | Yes | Forward Template ID. |
Example request
Example response
HTTP 200 OK
Response fields
| Field | Type | Description |
|---|---|---|
type | string | Always effective_spec. |
agent_effective_hash | string | Hash of the compiled agent section. |
session_effective_hash | string | Hash of the compiled session section. |
effective_hash | string | Hash of the full effective config. |
agent | object | Compiled agent configuration. |
session | object | Compiled session defaults. |
session.environment_variables | object | string | Final environment variables after merging the Template and Identity Config. |
Errors
| HTTP | Type | Code | Trigger |
|---|---|---|---|
| 400 | invalid_request_error | - | The Effective Config cannot be compiled. |
| 401 | authentication_error | authentication_required | The PAT is invalid or expired. |
| 404 | not_found_error | - | The Identity or Template does not exist. |
| 422 | invalid_request_error | - | Runtime configuration validation failed. |
Notes
- Identity Config overrides Template fields by field-specific merge rules.
- Missing Identity Config is treated as an empty override layer.
- The response does not include Forward override DSL fields such as
managed_tool_config; do not use it directly as the request body for Upsert Identity Config. - For same-name tools across layers, an Identity custom tool overrides a Template managed tool, while an Identity managed tool overrides a Template custom tool.
- Default memory store injection is handled by the Session creation flow.

