Create agent
Create a managed agent and publish its first immutable version. The slug is derived from the name when omitted and must be unique within the team (409 on collision). Omitted version fields take defaults: the platform agent model, an unrestricted tool policy, draft publish mode, no media policy, no per-run ceiling and the team’s primary brand (brandId null). A brandId must name one of the team’s brands (404 otherwise).
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Team (workspace) id (UUID). Discover ids via the list teams endpoint or the agent context.
Body
Display name of the agent, 1-120 characters.
1 - 120The agent's standing instructions. Appended to the platform system prompt as a delimited block on every run of this version.
1 - 40000Stable, url-safe identifier unique within the team (lower-case letters, digits and hyphens, 1-64 characters). Derived from the name when omitted.
1 - 64^[a-z0-9]+(?:-[a-z0-9]+)*$"infographic-slideshows"
What the agent is for, shown in the agents list (up to 2000 characters); null clears it.
2000Curated OpenRouter model id. Omit for the platform default agent model.
google/gemini-3.8-flash, anthropic/claude-opus-5.5, openai/gpt-6-sol, anthropic/claude-sonnet-5, openai/gpt-6-luna, x-ai/grok-4.7, deepseek/deepseek-v4.1-flash, qwen/qwen3.8-flash, minimax/minimax-m3, mistralai/mistral-small-2603, moonshotai/kimi-k3, xiaomi/mimo-v2.6-flash, stepfun/step-3.7-flash, google/gemini-3.7-flash, anthropic/claude-opus-5, openai/gpt-5.6-sol, openai/gpt-5.6-terra, x-ai/grok-4.6, deepseek/deepseek-v4-flash-0731, qwen/qwen3.7-plus, moonshotai/kimi-k2.6, xiaomi/mimo-v2.5, google/gemini-3.5-flash, anthropic/claude-opus-4.8, google/gemini-3.1-pro-preview, x-ai/grok-4.5 Reasoning effort requested from the model on every run of this version; null keeps the model default.
max, xhigh, high, medium, low, minimal, none Enable paid native web search by default for this agent. Requires a supported model and search tool permission. Defaults to false on creation; omit on update to keep the current setting.
Tool visibility policy: allow and deny entry lists. Deny wins; an empty allow list means every tool not denied is visible. Omit on create for an unrestricted policy; on update the whole policy is replaced.
auto: unattended runs may call schedule_post and post_now when the tool policy allows them. draft: unattended runs only file drafts for review.
auto, draft Media policy passed through to the media runtime (image source, stock ban, polish passes, CTA end slide); null means no policy.
Team skill ids attached to this version; their names and descriptions are listed in the prompt and bodies load on demand via load_skill.
a Universally Unique Identifier
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$Team remote MCP server ids attached to this version (reserved; the MCP server surface ships separately).
a Universally Unique Identifier
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$Team custom tool ids attached to this version. Each is offered to the model as custom__ (policy capability key custom, operation key custom.); the tool's current version is resolved when a run starts and pinned for that run.
a Universally Unique Identifier
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$Per-run credit ceiling in decimillicents; a run stops before the next model step once reached. null means the firing schedule's ceiling (or none for API runs).
x > 0Brand whose profile (voice, audience, topics) grounds every run of this version, and the default brandId for tools that take one. Must be one of the team's brands. null uses the team's primary brand at run time; a brand deleted later also falls back to the primary brand.
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$Maximum distinct content items produced by one run, including child runs. Cross-posting and revisions of the same item count once.
1 <= x <= 100Maximum cumulative execution time in minutes, including tool waits and excluding queueing, downtime and pauses. Defaults to 60; increasing it never increases credit ceilings.
1 <= x <= 360How a version reports its result. text keeps the free-text answer; json_schema requires a JSON object matching the schema. Managed and scheduled runs without a json_schema contract report with the platform default run report schema.
- Option 1
- Option 2
Response
Success
a Universally Unique Identifier
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$a Universally Unique Identifier
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$Stable, url-safe identifier unique within the team (lower-case letters, digits and hyphens, 1-64 characters). Derived from the name when omitted.
1 - 64^[a-z0-9]+(?:-[a-z0-9]+)*$"infographic-slideshows"
Display name of the agent, 1-120 characters.
1 - 120What the agent is for, shown in the agents list (up to 2000 characters); null clears it.
2000The version new runs pin. Null only transiently while the first version is being written.
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$The current version, embedded so one read shows the live configuration.
When the agent was archived (ISO-8601 UTC); null while live.
Immutable platform role: general or slideshow for the two protected team agents; null for customer-created agents. Bundled agents remain editable but cannot be deleted or archived.
general, slideshow true for the team's protected General agent, provisioned with Slideshow when the team is created. It is used by chat and schedules that name no other agent. Its configuration is editable; its identity cannot be changed, deleted or archived.
Creator of this agent; null only for bundled agents provisioned by the system for an ownerless team.
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$When the agent was created (ISO-8601 UTC).
When the agent or its current version last changed (ISO-8601 UTC).
Advisory notes about the current version, returned by create and update (for example a tool policy that denies search_tools). Absent when there is nothing to flag.