update_agent
Update an existing Convocore agent’s settings, prompt, nodes, voice, UI, or funnel configuration with partial patches that preserve unchanged fields.
Instructions
Update an existing Convocore agent (PATCH). For large prompt edits prefer patch_agent_prompt. Main prompt: use systemPrompt → start node instructions. NEVER send vg_instructions or vg_systemPrompt. Do NOT pass nodes[] unless you are changing nodes — omit it for title/UI/funnel/model updates. Partial nodes[] are GET-merged by id; a toolsIds-only start node cannot blank instructions, and toolsIds in a patch are only ever ADDED (tools attached on the dashboard are kept). To detach tools pass allowRemoveTools=true. Lead notify: funnelConfig (steps + notificationRules.recipients). UI Engine: vg_enableUIEngine* + vg_uiEngineChannelConfig. ownerID is read-only.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| light | No | Updated light mode setting | |
| nodes | No | Node patch. MCP merges onto the current graph by node id so partial updates (e.g. toolsIds) cannot blank nodes[0].instructions. Prefer systemPrompt for prompt writes. | |
| theme | No | Updated theme | |
| title | No | Updated title | |
| agentId | Yes | The unique identifier of the agent to update | |
| disabled | No | Updated disabled status | |
| description | No | Updated description | |
| voiceConfig | No | Agent voiceConfig for voice-capable agents. Integrations/API keys generally live at workspace/org level; this config selects providers, models, voices, and call behavior for the agent. | |
| enableVertex | No | Updated Vertex AI setting | |
| funnelConfig | No | AI Funnel & Lead Scoring (built-in). Use this instead of a custom HTTP “notify sales team” webhook. enabled + steps (id/name/description/condition/points/category) + notificationRules (type score_threshold|steps_completed|data_collected, recipients emails, cooldownStrategy). Runtime scores the conversation and emails recipients when a rule fires. | |
| systemPrompt | No | Replace main prompt → nodes[0].instructions (enableNodes forced true). Prefer patch_agent_prompt for surgical edits. | |
| autoOpenWidget | No | Updated auto-open widget setting | |
| additionalConfig | No | Every other agent field the API accepts, typed from the main agent schema. Send only what changes: nested objects (nodesSettings, vg_kb_llm, ui…) are deep-merged into the current value, so existing settings are kept. Do not put the main prompt here (use systemPrompt / patch_agent_prompt). Unknown fields are rejected up front with the valid names. | |
| vg_enableUIEngine | No | MASTER SWITCH for UI Engine. When true the agent can emit structured UI (text, choice/buttons, visual, cardV2, carousel, iFrame, and — if their flags are on — form/input, invoice, calendarBooking). Call get_ui_engine_spec for payloads. Prefer enabling this before toggling individual elements. | |
| leadCollectionRules | No | When to persist a CRM lead. Default: collect when email, phone, or phone_number is present. | |
| vg_maxImagesPerCard | No | Max images per cardV2/carousel card: 1 = imageUrl only; 2–3 allow images[] gallery. Omit for platform default. | |
| vg_enableUIEngineForms | No | Allow form + input UI Engine elements (typically web). Set true to let the agent collect structured fields. Also set vg_uiEngineChannelConfig.web.form / .input as needed. | |
| vg_enableUIEngineInvoice | No | Allow invoice card UI Engine elements (web). Use with vg_uiEngineInvoiceConfig for click notifications. | |
| vg_uiEngineChannelConfig | No | Per-channel allowlist of which UI Engine elements the agent may show. Channels: web, whatsapp, instagram, messenger, telegram. Each channel is an object of type→boolean (choice, visual, cardV2, carousel, iFrame, form, input, invoice, calendarBooking, file, VoiceNote, locationRequest, ctaUrl). Missing type = enabled. Example: { "web": { "choice": true, "cardV2": true, "form": true, "invoice": false }, "whatsapp": { "choice": true, "cardV2": true, "form": false } }. Forms/invoice/calendar still need their global vg_enableUIEngine* flags. | |
| vg_uiEngineInvoiceConfig | No | Invoice card notification settings. | |
| vg_uiEngineCalendarConfig | No | Calendar booking widget config (Google Calendar connection + booking rules). | |
| vg_uiEngineFormNotifyConfig | No | Email notify settings when forms/inputs are submitted. | |
| vg_enableUIEngineCalendarBooking | No | Allow interactive calendar booking widget (web). Requires Google Calendar connectionIds in vg_uiEngineCalendarConfig. |