Skip to content

Upsert Agent Overlay

PUT
/api/v3/organizations/{organisation}/ai/agents/{agentId}/overlay
curl --request PUT \
--url https://dashboard.quantcdn.io/api/v3/organizations/example/ai/agents/example/overlay \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "modelId": "example", "temperature": 1, "maxTokens": 1, "disabledSkills": [ "example" ], "additionalSkills": [ "example" ], "additionalTools": [ "example" ], "disabledTools": [ "example" ], "systemPromptAppend": "example", "allowedCollections": [ "example" ], "mcpServers": [ { "server": "example", "tools": [ "example" ] } ], "guardrailPreset": "official", "longContext": true, "filterPolicies": [ "example" ], "reasoningEffort": "low", "version": 1 }'

Creates or replaces the per-organisation overlay for a global agent. PUT is full replacement — omitted optional fields are removed. Include version from a prior GET to enable compare-and-swap (409 on conflict). Omit for last-writer-wins.

organisation
required
string

The organisation ID

agentId
required
string

Global agent identifier

Media typeapplication/json
object
modelId

Override the base agent’s model

string
temperature

Override temperature

number
<= 1
maxTokens

Override max tokens

integer
>= 1
disabledSkills

Global skill IDs to exclude

Array<string>
additionalSkills

Org-owned skill IDs to add

Array<string>
additionalTools

Tool names to add

Array<string>
disabledTools

Tool names to remove

Array<string>
systemPromptAppend

Text appended to base system prompt

string
allowedCollections

Vector DB collections

Array<string>
mcpServers

Registered MCP servers to attach. The agent gets the tools of each server in dashboard chat and in QuantCode. The overlay PUT replaces the whole overlay: omit the field or send an empty array to remove every attachment.

Array<object>
object
server
required

The registered server name

string
/^[a-z0-9][a-z0-9-]{0,62}$/
tools

Optional. Only these tools of the server. Omit for every tool the server allows; an empty array allows none.

Array<string>
guardrailPreset

Guardrail preset

string
nullable
Allowed values: official official-sensitive protected
longContext

Force the 1M context window on (true) or off (false) for this organisation. Omit or null to use the platform default.

boolean
nullable
filterPolicies

Filter policy IDs applied to this agent’s requests for this organisation, with any organisation-wide mandatory policies

Array<string>
reasoningEffort

Override the reasoning effort. Must be one of the levels the effective model lists in capabilities.effortLevels. Omit or null to use the global agent value.

string
nullable
Allowed values: low medium high xhigh max
version

Current version for optimistic concurrency

integer

Overlay created or updated

Media typeapplication/json
object
overlay
object
Examplegenerated
{
"overlay": {}
}

Invalid request parameters

Access denied

Not a global agent

Version conflict — overlay was modified concurrently

Failed to save overlay