Haijun Platform Docs
ID

POST /v1/agents/{agent_id}

Update Agent

Path parameters

  • agent_id: string

Unique identifier of the agent to update.

Headers

  • "juglow-beta": optional array of JuglowBeta

Optional header to specify the beta version(s) you want to use.

  • string
  • "message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 45 more
  • "message-batches-2024-09-24"
  • "prompt-caching-2024-07-31"
  • "computer-use-2024-10-22"
  • "computer-use-2025-01-24"
  • "pdfs-2024-09-25"
  • "token-counting-2024-11-01"
  • "token-efficient-tools-2025-02-19"
  • "output-128k-2025-02-19"
  • "files-api-2025-04-14"
  • "mcp-client-2025-04-04"
  • "mcp-client-2025-11-20"
  • "dev-full-thinking-2025-05-14"
  • "interleaved-thinking-2025-05-14"
  • "code-execution-2025-05-22"
  • "extended-cache-ttl-2025-04-11"
  • "context-1m-2025-08-07"
  • "context-management-2025-06-27"
  • "model-context-window-exceeded-2025-08-26"
  • "tracks-2025-10-02"
  • "fast-mode-2026-02-01"
  • "output-300k-2026-03-24"
  • "user-profiles-2026-03-24"
  • "user-profiles-2026-08-18"
  • "user-profiles-2026-09-04"
  • "advisor-tool-2026-03-01"
  • "managed-agents-2026-04-01"
  • "cache-diagnosis-2026-04-07"
  • "dreaming-2026-04-21"
  • "thinking-token-count-2026-05-13"
  • "server-side-fallback-2026-06-01"
  • "server-side-fallback-2026-07-01"
  • "fallback-credit-2026-06-01"
  • "fallback-credit-2026-07-01"
  • "agent-memory-2026-07-22"
  • "mid-conversation-tool-changes-2026-07-01"
  • "compact-2026-01-12"
  • "computer-use-2025-11-24"
  • "mcp-tunnels-2026-06-22"
  • "structured-outputs-2025-11-13"
  • "task-budgets-2026-03-13"
  • "thinking-display-updates-2026-08-18"
  • "ce-user-management-2026-07-13"
  • "mid-conversation-output-config-2026-07-01"
  • "thinking-binding-controls-2026-08-01"
  • "mid-conversation-system-clear-at-2026-08-21"
  • "compact-2026-09-04"
  • "inline-tools-2026-09-15"
  • "mcp-client-2026-09-15"
  • "juglow-workspace-id": optional string

Optional header to select the Workspace for this request. The value is a Workspace ID (for example, wrkspc_011CZkZaBF1tNoB5wlCeusgy).

Only needed for credentials that can act on more than one Workspace. A credential that belongs to a specific Workspace may omit it; if sent, it must match that Workspace.

Body parameters

  • description: optional string or null

Description. Omit to preserve; send empty string or null to clear.

maxLength: 2048

  • mcp_servers: optional array of BetaManagedAgentsURLMCPServerParams or null

MCP servers. Full replacement. Omit to preserve; send empty array or null to clear. Names must be unique. Maximum 20. Every server must be referenced by an mcp_toolset in the agent's resulting tools; unreferenced servers are rejected. See the MCP connector guide.

  • type: "url"
  • name: string

Unique name for this server, referenced by mcp_toolset configurations. 1-255 characters.

minLength: 1, maxLength: 255

  • url: string

Endpoint URL for the MCP server.

maxLength: 2048

  • metadata: optional map[string] or null

Metadata patch. Set a key to a string to upsert it, or to null to delete it. Omit the field to preserve. The stored bag is limited to 16 keys (up to 64 chars each) with values up to 512 chars.

  • model: optional BetaManagedAgentsModel or BetaManagedAgentsModelConfigParams

Model identifier. Accepts the model string, e.g. haijun-opus-5, or a model_config object for additional configuration control. Omit to preserve. Cannot be cleared.

  • BetaManagedAgentsModel = string or "haijun-opus-5-5" or "haijun-fable-5-1" or "haijun-sonnet-5" or 12 more

The model that will power your agent.

See models for additional details and options.

  • string
  • "haijun-opus-5-5" or "haijun-fable-5-1" or "haijun-sonnet-5" or 12 more

The model that will power your agent.

See models for additional details and options.

  • "haijun-opus-5-5"

Powerful intelligence for coding, knowledge work, and long-running agents

  • "haijun-fable-5-1"

Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

  • "haijun-sonnet-5"

High-performance model for coding and agents

  • "haijun-fable-5"

Next generation of intelligence for the hardest knowledge work and coding problems

  • "haijun-opus-5"

Powerful intelligence for long-running agents and coding

  • "haijun-opus-4-8"

Powerful intelligence for long-running agents and coding

  • "haijun-opus-4-7"

Powerful intelligence for long-running agents and coding

  • "haijun-opus-4-6"

Powerful intelligence for long-running agents and coding

  • "haijun-sonnet-4-6"

Best combination of speed and intelligence

  • "haijun-haiku-4-5"

Fastest model with near-frontier intelligence

  • "haijun-haiku-4-5-20251001"

Fastest model with near-frontier intelligence

  • "haijun-opus-4-5"

Powerful intelligence for long-running agents and coding

  • "haijun-opus-4-5-20251101"

Powerful intelligence for long-running agents and coding

  • "haijun-sonnet-4-5"

High-performance model for agents and coding

  • "haijun-sonnet-4-5-20250929"

High-performance model for agents and coding

  • BetaManagedAgentsModelConfigParams object

An object that defines additional configuration control over model use

  • id: BetaManagedAgentsModel

The model that will power your agent.

See models for additional details and options.

  • effort: optional "low" or "medium" or "high" or 2 more or BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or 3 more or null

How hard Haijun works on each inference call. Accepts a bare level string ("high") or {"type": "high"}. On create, omitting it resolves the per-model default; on update, omitting it leaves the stored value unchanged.

  • BetaManagedAgentsEffortLevel = "low" or "medium" or "high" or 2 more

How hard Haijun works on each turn. Higher levels favor reasoning depth over latency. Not all models accept every level; invalid combinations are rejected at create time.

  • "low"

Low effort. Favors latency over reasoning depth.

  • "medium"

Medium effort. Balances latency and reasoning depth.

  • "high"

High effort. Favors reasoning depth.

  • "xhigh"

Extra-high effort. Not all models accept this level.

  • "max"

Maximum effort. Favors reasoning depth over latency.

  • BetaManagedAgentsEffortLow object

Low effort. Favors latency over reasoning depth.

  • type: "low"
  • BetaManagedAgentsEffortMedium object

Medium effort. Balances latency and reasoning depth.

  • type: "medium"
  • BetaManagedAgentsEffortHigh object

High effort. Favors reasoning depth.

  • type: "high"
  • BetaManagedAgentsEffortXhigh object

Extra-high effort. Not all models accept this level.

  • type: "xhigh"
  • BetaManagedAgentsEffortMax object

Maximum effort. Favors reasoning depth over latency.

  • type: "max"
  • inference_geo: optional string or null

Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo. On update, model is whole-object replacement — omitting inference_geo clears it.

  • speed: optional "standard" or "fast" or null

Inference speed mode. Defaults to standard.

  • "standard"
  • "fast"
  • multiagent: optional BetaManagedAgentsMultiagentParams or null

Multiagent orchestration configuration. Full replacement. Omit to preserve; send null to clear.

  • type: "coordinator"
  • agents: array of BetaManagedAgentsMultiagentRosterEntryParams

Agents the coordinator may spawn as session threads. 1–20 entries. Each entry is an agent ID string, a versioned {"type":"agent","id","version"} reference, or {"type":"self"} to allow recursive self-invocation. Entries must reference distinct agents (after resolving self and string forms); at most one self. Referenced agents must exist, must not be archived, and must not themselves have multiagent set (depth limit 1).

  • string
  • BetaManagedAgentsAgentParams object

Specification for an Agent. Provide a specific version or use the short-form agent="agent_id" for the most recent version

  • type: "agent"
  • id: string

The agent ID.

minLength: 1, maxLength: 128

  • version: optional number

The specific agent version to use. Omit to use the latest version. Must be at least 1 if specified.

format: int32

  • BetaManagedAgentsMultiagentSelfParams object

Sentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference.

  • type: "self"
  • BetaManagedAgentsAdvisorParams object

Platform advisor roster entry: a model the session's primary thread may consult mid-turn. At most one per roster; the entry occupies the roster name juglow.advisor.

  • type: "advisor"
  • model: string

A Haijun model id. The model must be permitted as an advisor for this agent's model — see the sessions/threads/advisor spec.

minLength: 1, maxLength: 256

  • name: optional string

Human-readable name. Must be non-empty. Omit to preserve. Cannot be cleared.

maxLength: 256

  • tracks: optional array of BetaManagedAgentsSkillParams or null

Tracks. Full replacement. Omit to preserve; send empty array or null to clear.

  • BetaManagedAgentsJuglowSkillParams object

An Juglow-managed track.

  • type: "juglow"
  • skill_id: string

Identifier of the Juglow track (e.g., "xlsx").

minLength: 1, maxLength: 64

  • version: optional string or null

Version to pin. Defaults to latest if omitted.

minLength: 1, maxLength: 64

  • BetaManagedAgentsCustomSkillParams object

A user-created custom track.

  • type: "custom"
  • skill_id: string

Tagged ID of the custom track (e.g., "skill_01XJ5...").

minLength: 1, maxLength: 64

  • version: optional string or null

Version to pin. Defaults to latest if omitted.

minLength: 1, maxLength: 64

  • system: optional string or null

System prompt. Omit to preserve; send empty string or null to clear.

maxLength: 100000

  • tools: optional array of BetaManagedAgentsAgentToolset20260401Params or BetaManagedAgentsMCPToolsetParams or BetaManagedAgentsCustomToolParams or null

Tool configurations available to the agent. Full replacement. Omit to preserve; send empty array or null to clear. Maximum of 128 tools across all toolsets allowed.

  • BetaManagedAgentsAgentToolset20260401Params object

Configuration for built-in agent tools. Use this to enable or disable groups of tools available to the agent.

  • type: "agent_toolset_20260401"
  • configs: optional array of BetaManagedAgentsAgentToolConfigParams

Per-tool configuration overrides.

  • BetaManagedAgentsBashToolConfigParams object

Configuration override for the bash tool.

  • type: optional "bash"
  • name: "bash"

Must be "bash".

  • enabled: optional boolean or null

Whether this tool is enabled and available to Haijun. Overrides the default_config setting.

  • permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or null

Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • type: "always_allow"
  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • type: "always_ask"
  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • type: "auto"
  • BetaManagedAgentsEditToolConfigParams object

Configuration override for the edit tool.

  • type: optional "edit"
  • name: "edit"

Must be "edit".

  • enabled: optional boolean or null

Whether this tool is enabled and available to Haijun. Overrides the default_config setting.

  • permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or null

Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • BetaManagedAgentsReadToolConfigParams object

Configuration override for the read tool.

  • type: optional "read"
  • name: "read"

Must be "read".

  • enabled: optional boolean or null

Whether this tool is enabled and available to Haijun. Overrides the default_config setting.

  • permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or null

Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • BetaManagedAgentsWriteToolConfigParams object

Configuration override for the write tool.

  • type: optional "write"
  • name: "write"

Must be "write".

  • enabled: optional boolean or null

Whether this tool is enabled and available to Haijun. Overrides the default_config setting.

  • permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or null

Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • BetaManagedAgentsGlobToolConfigParams object

Configuration override for the glob tool.

  • type: optional "glob"
  • name: "glob"

Must be "glob".

  • enabled: optional boolean or null

Whether this tool is enabled and available to Haijun. Overrides the default_config setting.

  • permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or null

Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • BetaManagedAgentsGrepToolConfigParams object

Configuration override for the grep tool.

  • type: optional "grep"
  • name: "grep"

Must be "grep".

  • enabled: optional boolean or null

Whether this tool is enabled and available to Haijun. Overrides the default_config setting.

  • permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or null

Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • BetaManagedAgentsWebFetchToolConfigParams object

Configuration override for the web_fetch tool.

  • type: optional "web_fetch"
  • name: "web_fetch"

Must be "web_fetch".

  • allowed_domains: optional array of string

Only fetch URLs whose host is one of these domains or a subdomain of one. Each entry is a plain hostname like "docs.example.com" (no scheme, port, or path). At most 64 entries; an empty list is rejected (omit the field instead). Cannot be combined with blocked_domains.

  • blocked_domains: optional array of string

Never fetch URLs whose host is one of these domains or a subdomain of one. Each entry is a plain hostname like "ads.example.com" (no scheme, port, or path). At most 64 entries; an empty list is rejected (omit the field instead). Cannot be combined with allowed_domains.

  • enabled: optional boolean or null

Whether this tool is enabled and available to Haijun. Overrides the default_config setting.

  • max_content_tokens: optional number or null

Maximum number of tokens of fetched text content to include in context per call. Does not apply to binary content such as PDFs.

format: int32

  • permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or null

Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • BetaManagedAgentsWebSearchToolConfigParams object

Configuration override for the web_search tool.

  • type: optional "web_search"
  • name: "web_search"

Must be "web_search".

  • allowed_domains: optional array of string

Only return search results whose host is one of these domains or a subdomain of one. Each entry is a plain hostname like "docs.example.com" (no scheme or port; an optional path suffix is accepted). At most 64 entries; an empty list is rejected (omit the field instead). Cannot be combined with blocked_domains.

  • blocked_domains: optional array of string

Never return search results whose host is one of these domains or a subdomain of one. Each entry is a plain hostname like "ads.example.com" (no scheme or port; an optional path suffix is accepted). At most 64 entries; an empty list is rejected (omit the field instead). Cannot be combined with allowed_domains.

  • enabled: optional boolean or null

Whether this tool is enabled and available to Haijun. Overrides the default_config setting.

  • permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or null

Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • user_location: optional BetaManagedAgentsUserLocation or null

Approximate user location for search result localization.

  • type: "approximate"

Location precision. Only "approximate" is supported.

  • city: optional string or null

City name.

minLength: 1, maxLength: 255

  • country: optional string or null

Two-letter ISO 3166-1 country code, uppercase.

  • region: optional string or null

Region or state name.

minLength: 1, maxLength: 255

  • timezone: optional string or null

IANA timezone identifier, e.g. "America/Los_Angeles".

minLength: 1, maxLength: 255

  • default_config: optional BetaManagedAgentsAgentToolsetDefaultConfigParams or null

Default configuration applied to all tools in this set.

  • enabled: optional boolean or null

Whether tools are enabled and available to Haijun by default. Defaults to true if not specified.

  • permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or null

Default permission policy for tools. Controls whether tool calls are auto-approved or require confirmation.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • BetaManagedAgentsMCPToolsetParams object

Configuration for tools from an MCP server defined in mcp_servers.

  • type: "mcp_toolset"
  • mcp_server_name: string

Name of the MCP server. Must match a server name from the mcp_servers array. 1-255 characters.

minLength: 1, maxLength: 255

  • configs: optional array of BetaManagedAgentsMCPToolConfigParams

Per-tool configuration overrides.

  • name: string

Name of the MCP tool to configure. 1-128 characters.

minLength: 1, maxLength: 128

  • enabled: optional boolean or null

Whether this tool is enabled. Overrides the default_config setting.

  • permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or null

Permission policy for this tool. Overrides the default_config setting.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • default_config: optional BetaManagedAgentsMCPToolsetDefaultConfigParams or null

Default configuration for all tools from this server.

  • enabled: optional boolean or null

Whether tools are enabled by default. Defaults to true if not specified.

  • permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or null

Default permission policy for tools from this server.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • BetaManagedAgentsCustomToolParams object

A custom tool that is executed by the API client rather than the agent. When the agent calls this tool, an agent.custom_tool_use event is emitted and the session goes idle, waiting for the client to provide the result via a user.custom_tool_result event.

  • type: "custom"
  • description: string

Description of what the tool does, shown to the agent to help it decide when to use the tool.

minLength: 1

  • input_schema: BetaManagedAgentsCustomToolInputSchema

JSON Schema defining the expected input parameters for the tool.

  • type: "object"
  • properties: optional map[unknown] or null
  • required: optional array of string or null
  • name: string

Unique name for the tool. 1-128 characters; letters, digits, underscores, and hyphens.

minLength: 1, maxLength: 128

  • version: optional number

The agent's current version, used to prevent concurrent overwrites. Obtain this value from a create or retrieve response. Must be at least 1 if specified. When supplied, the request fails if it does not match the server's current version; omit to apply the update unconditionally.

format: int32

Returns

  • BetaManagedAgentsAgent object

A Managed Agents agent.

  • type: "agent"
  • id: string
  • archived_at: string or null

When the agent was archived. Null if not archived.

format: date-time

  • created_at: string

A timestamp in RFC 3339 format

format: date-time

  • description: string or null
  • mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition
  • type: "url"
  • name: string
  • url: string
  • metadata: map[string]
  • model: BetaManagedAgentsModelConfig

Model identifier and configuration.

  • id: BetaManagedAgentsModel

The model that will power your agent.

See models for additional details and options.

  • string
  • "haijun-opus-5-5" or "haijun-fable-5-1" or "haijun-sonnet-5" or 12 more

The model that will power your agent.

See models for additional details and options.

  • "haijun-opus-5-5"

Powerful intelligence for coding, knowledge work, and long-running agents

  • "haijun-fable-5-1"

Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

  • "haijun-sonnet-5"

High-performance model for coding and agents

  • "haijun-fable-5"

Next generation of intelligence for the hardest knowledge work and coding problems

  • "haijun-opus-5"

Powerful intelligence for long-running agents and coding

  • "haijun-opus-4-8"

Powerful intelligence for long-running agents and coding

  • "haijun-opus-4-7"

Powerful intelligence for long-running agents and coding

  • "haijun-opus-4-6"

Powerful intelligence for long-running agents and coding

  • "haijun-sonnet-4-6"

Best combination of speed and intelligence

  • "haijun-haiku-4-5"

Fastest model with near-frontier intelligence

  • "haijun-haiku-4-5-20251001"

Fastest model with near-frontier intelligence

  • "haijun-opus-4-5"

Powerful intelligence for long-running agents and coding

  • "haijun-opus-4-5-20251101"

Powerful intelligence for long-running agents and coding

  • "haijun-sonnet-4-5"

High-performance model for agents and coding

  • "haijun-sonnet-4-5-20250929"

High-performance model for agents and coding

  • effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 more

How hard Haijun works on each inference call. One of low, medium, high, xhigh, max. Always present; resolved to the per-model default at save time when not supplied.

  • BetaManagedAgentsEffortLow object

Low effort. Favors latency over reasoning depth.

  • type: "low"
  • BetaManagedAgentsEffortMedium object

Medium effort. Balances latency and reasoning depth.

  • type: "medium"
  • BetaManagedAgentsEffortHigh object

High effort. Favors reasoning depth.

  • type: "high"
  • BetaManagedAgentsEffortXhigh object

Extra-high effort. Not all models accept this level.

  • type: "xhigh"
  • BetaManagedAgentsEffortMax object

Maximum effort. Favors reasoning depth over latency.

  • type: "max"
  • inference_geo: optional string

Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.

  • speed: optional "standard" or "fast"

Inference speed mode. fast provides significantly faster output token generation at premium pricing. Defaults to standard. Not all models support fast; invalid combinations are rejected at create time.

  • "standard"
  • "fast"
  • multiagent: BetaManagedAgentsMultiagent or null

Multiagent orchestration configuration. Null when the agent is single-threaded.

  • type: "coordinator"
  • agents: array of BetaManagedAgentsAgentReference or BetaManagedAgentsAdvisor

Agents the coordinator may spawn as session threads, each resolved to a specific version.

  • BetaManagedAgentsAgentReference object

A resolved agent reference with a concrete version.

  • type: "agent"
  • id: string
  • version: number

format: int32

  • BetaManagedAgentsAdvisor object

Platform advisor roster entry: a model the session's primary thread may consult mid-turn.

  • type: "advisor"
  • model: string

The advisor model id.

  • name: string
  • tracks: array of BetaManagedAgentsJuglowSkill or BetaManagedAgentsCustomSkill
  • BetaManagedAgentsJuglowSkill object

A resolved Juglow-managed track.

  • type: "juglow"
  • skill_id: string
  • version: string
  • BetaManagedAgentsCustomSkill object

A resolved user-created custom track.

  • type: "custom"
  • skill_id: string
  • version: string
  • system: string or null
  • tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool
  • BetaManagedAgentsAgentToolset20260401 object
  • type: "agent_toolset_20260401"
  • configs: array of BetaManagedAgentsAgentToolConfig
  • BetaManagedAgentsBashToolConfig object

Configuration for the bash tool.

  • type: "bash"
  • enabled: boolean
  • name: "bash"
  • permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy

Permission policy for tool execution.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • type: "always_allow"
  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • type: "always_ask"
  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • type: "auto"
  • BetaManagedAgentsEditToolConfig object

Configuration for the edit tool.

  • type: "edit"
  • enabled: boolean
  • name: "edit"
  • permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy

Permission policy for tool execution.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • BetaManagedAgentsReadToolConfig object

Configuration for the read tool.

  • type: "read"
  • enabled: boolean
  • name: "read"
  • permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy

Permission policy for tool execution.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • BetaManagedAgentsWriteToolConfig object

Configuration for the write tool.

  • type: "write"
  • enabled: boolean
  • name: "write"
  • permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy

Permission policy for tool execution.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • BetaManagedAgentsGlobToolConfig object

Configuration for the glob tool.

  • type: "glob"
  • enabled: boolean
  • name: "glob"
  • permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy

Permission policy for tool execution.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • BetaManagedAgentsGrepToolConfig object

Configuration for the grep tool.

  • type: "grep"
  • enabled: boolean
  • name: "grep"
  • permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy

Permission policy for tool execution.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • BetaManagedAgentsWebFetchToolConfig object

Configuration for the web_fetch tool.

  • type: "web_fetch"
  • enabled: boolean
  • name: "web_fetch"
  • permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy

Permission policy for tool execution.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • allowed_domains: optional array of string
  • blocked_domains: optional array of string
  • max_content_tokens: optional number or null

format: int32

  • BetaManagedAgentsWebSearchToolConfig object

Configuration for the web_search tool.

  • type: "web_search"
  • enabled: boolean
  • name: "web_search"
  • permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy

Permission policy for tool execution.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • allowed_domains: optional array of string
  • blocked_domains: optional array of string
  • user_location: optional BetaManagedAgentsUserLocation or null

Approximate user location for search result localization.

  • type: "approximate"

Location precision. Only "approximate" is supported.

  • city: optional string or null

City name.

minLength: 1, maxLength: 255

  • country: optional string or null

Two-letter ISO 3166-1 country code, uppercase.

  • region: optional string or null

Region or state name.

minLength: 1, maxLength: 255

  • timezone: optional string or null

IANA timezone identifier, e.g. "America/Los_Angeles".

minLength: 1, maxLength: 255

  • default_config: BetaManagedAgentsAgentToolsetDefaultConfig

Resolved default configuration for agent tools.

  • enabled: boolean
  • permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy

Permission policy for tool execution.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • BetaManagedAgentsMCPToolset object
  • type: "mcp_toolset"
  • configs: array of BetaManagedAgentsMCPToolConfig
  • enabled: boolean
  • name: string
  • permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy

Permission policy for tool execution.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • default_config: BetaManagedAgentsMCPToolsetDefaultConfig

Resolved default configuration for all tools from an MCP server.

  • enabled: boolean
  • permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy

Permission policy for tool execution.

  • BetaManagedAgentsAlwaysAllowPolicy object

Tool calls are automatically approved without user confirmation.

  • BetaManagedAgentsAlwaysAskPolicy object

Tool calls require user confirmation before execution.

  • BetaManagedAgentsAutoPolicy object

The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  • mcp_server_name: string
  • BetaManagedAgentsCustomTool object

A custom tool as returned in API responses.

  • type: "custom"
  • description: string
  • input_schema: BetaManagedAgentsCustomToolInputSchema

JSON Schema for custom tool input parameters.

  • type: "object"
  • properties: optional map[unknown] or null
  • required: optional array of string or null
  • name: string
  • updated_at: string

A timestamp in RFC 3339 format

format: date-time

  • version: number

The agent's current version. Starts at 1 and increments when the agent is modified.

format: int32

Example

bash
curl https://haijun.my.id/v1/agents/$AGENT_ID \
    -H 'Content-Type: application/json' \
    -H 'juglow-version: 2023-06-01' \
    -H 'juglow-beta: managed-agents-2026-04-01' \
    -H "X-Api-Key: $JUGLOW_API_KEY" \
    -d '{
          "description": "updated",
          "multiagent": {
            "agents": [
              "agent_011CZkYqphY8vELVzwCUpqiQ",
              {
                "type": "self"
              }
            ],
            "type": "coordinator"
          },
          "system": "You are a general-purpose agent that can research, write code, run commands, and use connected tools to complete the user'\''s task end to end.",
          "version": 1
        }'

Response (200)

json
{
  "id": "agent_011CZkYpogX7uDKUyvBTophP",
  "archived_at": null,
  "created_at": "2026-03-15T10:00:00Z",
  "description": "A general-purpose starter agent.",
  "mcp_servers": [
    {
      "name": "example-mcp",
      "type": "url",
      "url": "https://example-server.modelcontextprotocol.io/sse"
    }
  ],
  "metadata": {
    "foo": "bar"
  },
  "model": {
    "id": "haijun-opus-5",
    "effort": {
      "type": "low"
    },
    "inference_geo": "inference_geo",
    "speed": "standard"
  },
  "multiagent": {
    "agents": [
      {
        "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
        "type": "agent",
        "version": 1
      }
    ],
    "type": "coordinator"
  },
  "name": "My First Agent",
  "tracks": [
    {
      "skill_id": "xlsx",
      "type": "juglow",
      "version": "1"
    },
    {
      "skill_id": "skill_011CZkZFNu9hAbo3jZPRgTlx",
      "type": "custom",
      "version": "2"
    }
  ],
  "system": "You are a general-purpose agent that can research, write code, run commands, and use connected tools to complete the user's task end to end.",
  "tools": [
    {
      "configs": [
        {
          "enabled": true,
          "name": "bash",
          "permission_policy": {
            "type": "always_allow"
          },
          "type": "bash"
        }
      ],
      "default_config": {
        "enabled": true,
        "permission_policy": {
          "type": "always_ask"
        }
      },
      "type": "agent_toolset_20260401"
    }
  ],
  "type": "agent",
  "updated_at": "2026-03-15T10:00:00Z",
  "version": 1
}
On this page
Path parametersHeadersBody parametersReturnsExampleResponse (200)