Patch by persisted kind: OOTB allows prompt/description/editors/outputFormat; custom keeps partial-update semantics.
For custom agents, omitted fields stay unchanged, explicit null clears nullable fields, and companyId and name are immutable. A custom-only or otherwise protected field sent to an OOTB agent is rejected with 422.
Partial-update body for an agent; send only the fields to change. name and companyId are immutable.
- API EUhttps://api.cloud.hypatos.ai/v2/agents/{id}
- API UShttps://api.cloud.hypatos.com/v2/agents/{id}
- Mock serverhttps://hypatos.redocly.app/_mock/openapi/agents/{id}
curl -i -X PATCH \
'https://api.cloud.hypatos.ai/v2/agents/{id}' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"companyId": "string",
"name": "string",
"description": "string",
"prompt": "string",
"model": "string",
"systemPrompt": "string",
"outputFormat": {},
"configuration": {},
"editors": [
"string"
],
"type": "string",
"toolIds": [
"497f6eca-6276-4993-bfeb-53cbbbba6f08"
]
}'Successful Response
Prompt used for agent. Null in a lean list row — request full=true to load it.
Model UID used for this agent. If not specified, the default model will be used.
System prompt for the agent
Date when Agent was added
Date when Agent was last modified
Lightweight version summaries, populated when withVersionsMetadata=true
Ids of the tools assigned to this agent. On create/update: null or omitted leaves the assignments unchanged (a new agent starts with none), [] removes them all, and a list replaces them with exactly this set (a change creates a new agent version). Populated on by-id reads and on a list with full=true; null in a list otherwise.
Concrete source template agent version used for import
Read-only. The predefined output format of an OOTB agent, which customization may only extend with new properties: the template's, or the stored one when the template is gone. Populated on by-id reads; null when nothing is predefined, for custom agents, and for types whose output format is managed by Hypatos. Ignored on create and update.
The type of agent (BASIC, BASIC_V2, AGENTIC, METADATA, PAGE_BY_PAGE, LLM_OCR, STATIC, CASE_CLASSIFICATION, FILE_SUMMARIZATION, SCRIPT, AGENTIC_DECISION). SCRIPT runs author-provided TypeScript (from the prompt field, rendered with full mustache context) in a sandbox and returns JSON instead of calling an LLM.
{ "id": "dcbc075f-a99c-4199-86ed-fb4ed5684dd9", "rootAgentId": "dcbc075f-a99c-4199-86ed-fb4ed5684dd9", "companyId": "6081acde0377a83b93f05a10", "name": "Agent name", "version": "Agent version", "description": "Some description", "prompt": "Hello GPT, how are you?", "model": "b099cb97-4a5c-458f-8dcf-91139e731214", "systemPrompt": "You are a helpful assistant.", "outputFormat": {}, "createdAt": "2023-10-27T11:38:18.000Z", "createdBy": "2023-10-27T11:38:18.000Z", "updatedBy": "Updater", "updatedAt": "2023-10-27T12:38:18.000Z", "editors": [ "string" ], "versions": [ { … } ], "versionsMetadata": [ { … } ], "configuration": {}, "toolIds": [ "497f6eca-6276-4993-bfeb-53cbbbba6f08" ], "isOotb": false, "sourceTemplateAgentId": "ab8eaaa7-db02-4453-a2db-8710c57d56dd", "sourceTemplateAgentVersion": "string", "predefinedOutputFormat": {}, "type": "BASIC" }