Skip to main content
Bolna publishes a verified community node for n8n — n8n-nodes-bolna. Install it once and you get two native nodes in the n8n editor, no HTTP Request wiring required.

Bolna

Action node. Make outbound calls, run batch campaigns, run workflows and workflow campaigns, and manage agents.

Bolna Trigger

Trigger node. Starts your workflow when Bolna posts a call execution update, and registers its own webhook on the agent.

Installation

Open Community Nodes

In n8n, go to Settings → Community Nodes → Install.

Install the package

Enter n8n-nodes-bolna and confirm.Self-hosted or npm-based setups without the GUI installer: see n8n’s installation guide.

Add your credential

Create a Bolna API credential with your API key from the Bolna dashboard under Developers → API Keys.See the API quickstart for generating keys.

Bolna node operations

Create reads the recipients CSV from an input binary field (default data). Wire up an upstream node that produces a CSV binary — Read/Write Files, HTTP Request, or Spreadsheet File.
Upload Entries accepts either a binary CSV or a JSON array of contact rows.
Create builds a single-task conversation agent from three required fields: name, welcome message, and system prompt.
  • LLM, synthesizer, transcriber, and telephony choices live under Additional Fields.
  • Additional Agent Config (JSON) merges into agent_config for anything else — webhook URL, guardrails, multilingual config, API tools, routes.
  • The node does not expose Bolna’s full nested agent schema as individual fields. For that, use the Agent API directly.

Bolna Trigger node

Bolna has no webhook-subscription API, but an agent’s webhook_url can be set via PATCH /v2/agent/{agent_id}. The trigger uses exactly that:

Pick an agent

Select the agent whose call events should start this workflow.

Activate the workflow

The trigger points that agent’s webhook_url at its own URL, overwriting whatever was configured before.

Deactivate to clear

Deactivating the workflow resets the agent’s webhook_url back to empty.
Filtering events — use the Trigger On Statuses field:
  • Defaults to completed, since cost, duration, recording, and extracted-data fields aren’t finalized until then.
  • Leave it empty to receive every update Bolna sends, including in-progress pre-call webhooks fired by function tools.
Your n8n instance must be reachable from the public internet for the trigger to receive events — a real deployment, or a tunnel like ngrok in development. Bolna’s servers can’t reach a bare localhost URL.
Because Bolna can’t report back whether a webhook is already registered, the trigger re-registers on every activation instead of checking first. Harmless — it overwrites the same value.

Resources

n8n integrations page

Bolna’s listing on n8n’s directory

npm package

n8n-nodes-bolna

Source code

GitHub repository

Bolna API reference

The REST API this node wraps