Connecting Aircall to n8n: automating call follow-up and callbacks with AI
Published 20 August 2026 · 6 min read
A missed call on a sales line costs more than an email left unanswered: nobody follows up on their own initiative, and by the time someone notices the notification the prospect has often already dialed a competitor. Aircall centralizes a team's calls well enough — history, recordings, queues — but it doesn't on its own trigger a callback alert, produce a usable summary, or update a CRM. That's exactly the role n8n can play downstream, without routing your phone conversations through yet another third-party service. This guide covers authentication, triggering a workflow from Aircall (a signed webhook, no reliable native node), and three concrete use cases: an instant callback alert on a missed call, an AI summary posted to the CRM, and a context card shown to the agent the moment they pick up.
A study by James B. Oldroyd, Kevin McElheran and David Elkington, The Short Life of Online Sales Leads, published in 2011 in the Harvard Business Review and based on an analysis of 1.25 million leads across more than 2,200 US companies, found that calling back within an hour makes a firm seven times more likely to qualify a lead than waiting one hour longer, and sixty times more likely than waiting 24 hours or more. On a missed call specifically — where the contact has already taken the initiative once — that window closes even faster, which is exactly why a callback triggered automatically beats one merely noted in a weekly report.
No reliable native node: the Webhook + HTTP Request reflex
n8n ships neither an Aircall node nor an Aircall Trigger natively. The robust architecture, independent of a community node's maintenance, comes down to two generic building blocks already proven on other tools without an official integration:
- An n8n Webhook node to receive the events Aircall pushes out (new call, call answered, call ended);
- An HTTP Request node, with a Header Auth credential, to call the Aircall Public API the other way (read call details, post a note, push a context card).
Authentication: api_id and api_token via Basic Auth
Aircall exposes two authentication methods for its Public API: OAuth (reserved for integrations meant for other companies via the App Marketplace) and Basic Auth, more than sufficient for internal use:
- In the Aircall Dashboard, open your company name (top right) → Integrations & API → the API Keys section → Add a new API key. Aircall generates an
api_idand anapi_token: copy theapi_tokenimmediately, since it's shown only once. - In n8n, create a Header Auth credential with header name
Authorizationand valueBasic <base64(api_id:api_token)>— or, simpler, use n8n's generic Basic Auth credential withapi_idas the username andapi_tokenas the password: n8n encodes the header for you. - Every API URL starts with
https://api.aircall.io/v1/(calls, contacts, numbers, users, teams, webhooks).
As with any automation token, create this key on a dedicated technical account rather than an agent's own account: it stays valid even if that person leaves the team.
Triggering a workflow: the signed Aircall webhook
In the Aircall Dashboard, open your company name → Integrations & API → Discover integrations → Webhook → Install integration. Enable the relevant events among call.created (new inbound or outbound call), call.answered, call.hungup (fires immediately at the end of the call) and call.ended (fires roughly 30 seconds later, once the recording and final duration are available), then paste your n8n Webhook node's production URL and confirm with Add webhook.
Every request is signed: an X-Aircall-Signature header carries the HMAC-SHA256 of the raw request body, computed with the secret shown when the webhook was created. A Code node placed right after the Webhook recomputes that signature against the raw body (not the re-parsed JSON, which would make verification fail every time) and compares it to the received header before letting the execution through — the same mechanism covered in our guide on cryptographic signatures in n8n (see also our general guide on securing n8n webhooks).
Use case 1 — Instant callback alert on a missed call
The entry point is call.hungup, filtered on status: missed (or missed_call_hungup depending on your queue configuration). An IF node isolates these calls, then an HTTP Request to GET /v1/contacts?phone_number=... looks up the contact's record if it already exists in Aircall. A Slack node immediately posts an alert to the sales channel with the number, the time, and the contact's name if known, along with a direct link to call back. This scoring-and-routing-by-urgency logic mirrors the approach detailed in our guide on AI-powered support ticket scoring and prioritization — only the triggering event changes from one channel to another.
Use case 2 — AI call summary posted to the CRM
On call.ended, an HTTP Request to GET /v1/calls/:id retrieves the call's metadata, including recording (the recording's URL, if that option is enabled in Aircall). Without depending on Aircall's paid AI Assist add-on, an OpenAI Audio node (the whisper-1 model) transcribes the recording, then an AI Agent with a Structured Output Parser produces a structured summary: reason for the call, decisions made, next action, perceived sentiment — exactly the pipeline covered in our guide on transcribing and summarizing meetings with Whisper, applied here to a call instead of a meeting. The summary then goes into your CRM (HubSpot, Pipedrive, Zoho…) via the matching node, or as a private note through POST /v1/calls/:id/comments on the Aircall side.
This post-call summarization step isn't a trivially solved problem: Alexandra N. Uma and Dmitry Sityaev, in Comparing Methods for Extractive Summarization of Call Centre Dialogue (2022), show that even simple summarization methods can produce output human evaluators rate as useful, but that quality varies significantly by method and remains an active research area. In practice, that's a good reason to treat the generated summary as an aid for a human to review rather than a final truth dropped straight into the customer record.
Use case 3 — Customer context shown to the agent the moment they pick up
On call.created, before the agent even answers, an HTTP Request queries your CRM or Supabase base to pull up the contact's history (last purchase amount, open support tickets, subscription status), then pushes that summary directly into the agent's Aircall interface via POST /v1/calls/:id/insight_cards. The agent sees a context card appear while the phone is still ringing, with no need to open a second tab — just confirm your Aircall plan includes access to this feature before building on it.
GDPR and call recording: what it changes for the workflow
Automating the retrieval of recordings and transcripts shifts the compliance question from the Aircall interface to your n8n pipeline: every stored or transcribed recording must follow the same retention policy communicated to the people being called. Always add a scheduled purge of transcripts and summaries past your defined retention window, following the same principle as our guide on automatic GDPR data purging in n8n, and set up a dedicated Error Workflow (see our guide on error handling in n8n) so an urgent call doesn't silently vanish because of an exceeded API quota.
Summary
Connecting Aircall to n8n comes down to simple Basic Auth (api_id/api_token), an HMAC-signed webhook instead of a native trigger, and the same HTTP Request detour used for any tool without an official node — Chatwoot, Freshdesk, Search Console. The instant callback alert on a missed call reuses exactly the signed-webhook + AI + routing architecture of the Inbox AI Pack (€79), built for prioritizing incoming flows; if your calls also feed into an audit trail or a compliance record, the Complete FlowKit Bundle (€269 instead of €347) covers everything in a single purchase.
FAQ
Frequently asked questions
Is there a native Aircall node in n8n?
No, n8n ships neither an Aircall node nor an Aircall Trigger natively. A community node exists (@velocity-bpa/n8n-nodes-aircall, covering the Call, User, Contact, Number, Team and Webhook resources), but its maintenance depends on a third-party contributor and nothing guarantees compatibility with future n8n or Aircall API versions. The robust, durable approach — the same one used for Freshdesk or Chatwoot — is a Webhook node to receive events and an HTTP Request node to call the Aircall API the other way.
Do you need Aircall's paid AI Assist add-on to follow this guide?
Only if you want to use Aircall's native AI endpoints (transcription, summary, sentiment, topics), reserved for customers who've subscribed to AI Assist. The approach described here for call summaries doesn't depend on that add-on: it simply pulls the recording URL through the standard API, transcribes it with the OpenAI Audio node (whisper-1), and summarizes it with an LLM of your choice — exactly like a meeting recap. The only requirement is having call recording enabled in your Aircall configuration.
How do you stay compliant when recording calls, especially under GDPR?
Recording a business call generally requires informing the person being called (a voice announcement at the start of the call or a contractual notice) and, for employees whose calls are recorded for quality control, prior information to staff representatives and the individuals concerned — the French approach follows CNIL guidance specifically. Technically, this is handled in your Aircall configuration (announcement message, opt-out), not in n8n; on the workflow side, plan a scheduled purge of recordings and transcripts past your defined retention period, following the same principle as our guide on automatic GDPR data purging.
Basic Auth or OAuth to call the Aircall API from n8n?
Basic Auth (api_id and api_token generated from your Aircall company settings) is more than enough for internal use — it's the method Aircall itself recommends for this case. OAuth only matters if you're building an integration meant to be installed by other companies through the Aircall App Marketplace, which is outside the scope of an internal automation built in n8n.
Bundle FlowKit Complet
€269