curl --silent --show-error --fail-with-body --request PUT \
--url 'https://response.stateset.com/api/v1/agents/{id}/settings' \
--header "Authorization: Bearer $RESPONSECX_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model_name": "string",
"model_provider": "string",
"model_type": "string",
"temperature": 1.5,
"max_tokens": 1,
"top_p": 1,
"escalation_tag_name": "string",
"escalation_team_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"agent_take_over_tag": "string"
}'
{
"object": "agent.settings",
"configured": true,
"model_name": "string",
"model_provider": "string",
"model_type": "string",
"temperature": 1.5,
"max_tokens": 1,
"top_p": 1.5,
"escalation_tag_name": "string",
"escalation_team_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"agent_take_over_tag": "string"
}
Set model, temperature, token limits and escalation behaviour
The settings after the upsert (a row is created if none existed).
PUT
/
api
/
v1
/
agents
/
{id}
/
settings
curl --silent --show-error --fail-with-body --request PUT \
--url 'https://response.stateset.com/api/v1/agents/{id}/settings' \
--header "Authorization: Bearer $RESPONSECX_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model_name": "string",
"model_provider": "string",
"model_type": "string",
"temperature": 1.5,
"max_tokens": 1,
"top_p": 1,
"escalation_tag_name": "string",
"escalation_team_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"agent_take_over_tag": "string"
}'
{
"object": "agent.settings",
"configured": true,
"model_name": "string",
"model_provider": "string",
"model_type": "string",
"temperature": 1.5,
"max_tokens": 1,
"top_p": 1.5,
"escalation_tag_name": "string",
"escalation_team_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"agent_take_over_tag": "string"
}
Path parameters
string (uuid)
required
The agent id.
Request body
AgentSettings
string
e.g. ‘gpt-4.1’, ‘claude-sonnet-5’. Maximum length:
200.string
e.g. ‘openai’, ‘anthropic’. Maximum length:
100.string
Maximum length:
100.number
Minimum:
0. Maximum: 2.integer
Minimum:
1. Maximum: 128000.number
Minimum:
0. Maximum: 1.string
Maximum length:
200.string
Maximum length:
200.string
Maximum length:
200.Response
object
string
required
Allowed values:
'agent.settings'.boolean
required
False when no settings row exists yet for this agent (every other field is then null).
string,null
required
string,null
required
string,null
required
number,null
required
integer,null
required
number,null
required
string,null
required
string,null
required
string,null
required
Status codes
| Code | Meaning |
|---|---|
200 | The settings after the upsert (a row is created if none existed). |
400 | Invalid request. issues names the offending field(s). |
401 | Missing, invalid, or expired API key. |
403 | The key lacks a required scope. |
404 | Not found, or not in the organization that owns the key. |
429 | Rate limit exceeded. |
Access
| Required scope | agents:write |
| Rate limit | 30 requests per minute |
Using this contract
Read the source OpenAPI document for declared schemas and alternatives. This page also includes documented corrections from the spec overlays. Example IDs and values are illustrative; replace them with records from your workspace.curl --silent --show-error --fail-with-body --request PUT \
--url 'https://response.stateset.com/api/v1/agents/{id}/settings' \
--header "Authorization: Bearer $RESPONSECX_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model_name": "string",
"model_provider": "string",
"model_type": "string",
"temperature": 1.5,
"max_tokens": 1,
"top_p": 1,
"escalation_tag_name": "string",
"escalation_team_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"agent_take_over_tag": "string"
}'
{
"object": "agent.settings",
"configured": true,
"model_name": "string",
"model_provider": "string",
"model_type": "string",
"temperature": 1.5,
"max_tokens": 1,
"top_p": 1.5,
"escalation_tag_name": "string",
"escalation_team_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"agent_take_over_tag": "string"
}
Last modified on September 21, 2026