Package Information
Available Nodes
Documentation generating…
Documentation
n8n-nodes-jambonz
Community nodes for using jambonz — the open-source voice CPaaS — from n8n. Build voicebots and IVR flows by receiving jambonz webhooks in n8n, composing verb responses (say, gather, play, dial, llm, …) with no code, and driving calls through the jambonz REST API.
jambonz applications work over HTTP: jambonz sends a webhook when something happens on a call, and your application answers with a JSON array of verbs telling jambonz what to do next. These nodes make n8n a first-class jambonz application server.
Nodes
| Node | Purpose |
|---|---|
| Jambonz Trigger | Webhook trigger for jambonz calling webhooks, call status events, gather/action hooks, … |
| Jambonz Verb | Appends one jambonz verb to the response being built. Chain several to compose the verb array. Covers all documented verbs plus a Custom Verb escape hatch. |
| Jambonz Respond | Sends the accumulated verb array back to jambonz as the HTTP response of the waiting webhook. |
| Jambonz | jambonz REST API: create outbound calls, live call control (whisper, mute, redirect, record, …), send SMS, query recent calls and alerts. |
Installation
In n8n: Settings → Community Nodes → Install and enter n8n-nodes-jambonz.
Self-hosted (npm):
cd ~/.n8n/nodes
npm install n8n-nodes-jambonz
Quickstart: a voicebot in four nodes
- Jambonz Trigger — set Path (e.g.
jambonz/call), leave Respond onUsing 'Jambonz Respond' Node. Copy the production webhook URL. - In the jambonz portal, create an Application whose calling webhook is that URL (method POST).
- Add Jambonz Verb nodes: e.g. one
Say("Welcome!") and oneGather(speech input, action hook back to another n8n webhook or a relative path). - End with Jambonz Respond — it returns the accumulated verbs to jambonz.
Incoming call data (caller, called number, call_sid, …) is available in the trigger output under body, so verb fields can use expressions like {{ $json.body.from }}.
How verbs accumulate
Each Jambonz Verb node appends one verb object to the verbs array on the item (creating it if missing) and passes everything else through. Jambonz Respond sends that array as the JSON response body. Anything the typed fields don't cover can be added per-verb via Additional Verb Options (JSON), or use the Custom Verb operation for verbs/options of your own.
Response modes
- Using 'Jambonz Respond' Node (recommended): the HTTP request waits until a Jambonz Respond node runs — you can branch, call APIs and LLMs, then respond. Note: the core Respond to Webhook node does not work with community triggers; use Jambonz Respond.
- When Last Node Finishes: responds with the
verbsproperty of the last node's first item. - Immediately, With Static Verbs: replies at once with a fixed verb array (useful for status webhooks or fire-and-forget flows), then keeps running the workflow.
Credentials
The Jambonz (REST API) node uses Jambonz API credentials:
- Base URL —
https://api.jambonz.cloudfor jambonz cloud, or your own API server URL if self-hosting. - Account SID — from the jambonz portal.
- API Key — created in the jambonz portal.
The trigger/verb/respond nodes need no credentials.
Example: outbound call with AMD
Use the Jambonz node → Call → Create: pick the application (or a call hook URL), set from and a phone/user/SIP target, optionally enable answering machine detection. The response includes the call_sid, which later Call → Update operations (whisper, redirect, hangup, …) accept for live call control.
Compatibility
- Requires n8n ≥ 1.44 (uses the current community-node API). End-to-end tested on n8n 2.30.7: all three trigger response modes verified against a live instance.
- Verb coverage generated from
@jambonz/verb-specifications0.1.13 (jambonz 0.9.x), validated with the official jambonz verb validator.
Development
npm install
npm run build # compile + copy icons via @n8n/node-cli
npm run lint
npm run dev # run a local n8n with the package hot-reloaded