agent row plus model / TTS / STT / VAD patches. Kupe Hub stores one agent document: name, system_prompt, greeting, catalog ids, and config.
Kupe App
DELETE /api/v1/agents/{agent_id} hard-deleted. Kupe Hub uses POST /v1/agents/{agent_id}/archive. There is no public hard-delete.Create
Kupe AppPOST /api/v1/agents required a nested object. POST /api/v1/agents/simple only needed name + description and filled platform defaults.
Kupe Hub has one create: POST /v1/orgs/{org_id}/projects/{project_id}/agents. name and system_prompt are required. There is no description field on AgentBody — put positioning in the spoken prompt.
Request body (diff)
Response (diff)
{ agent, configurations, validation_status }. Kupe Hub returns a single AgentOut (id like agt_..., config, version, …).
Field map
List / get / patch
Kupe Hub adds versions:
POST /v1/agents/{agent_id}/commit, GET .../versions, POST .../revert/{version}. Kupe App had no public version API.
Tools and post-call analysis
Kupe App attached tools by type (endpoint | mcp_server) on the agent, and had a separate post-analysis rule catalog.
Providers and voices
See Voices and Platform features.

