Add Aircall to your AI agent
Aircall is a cloud-based phone and call-center platform. This toolkit manages users, teams, phone numbers, calls, contacts, and tags on a single Aircall company account via the Public API.
- Things your agent can do in Aircall
- 48
Things your AI can do in Aircall
Your FormWise AI can handle any of these in Aircall — on its own, without you needing to click a button.
Add Contact Method
Add a phone number or an email address to an existing Aircall contact. Set method_type='phone' to add a phone number or method_type='email' to add an email address. The value and any supplied label must be nonblank, but this tool does not impose E.164 or strict email formatting. If the label is omitted, Aircall defaults it to 'Main'. Use when a contact already exists and needs another way to be reached; not for creating the contact itself (AIRCALL_CREATE_CONTACT), and not for changing a method that is already on the contact (AIRCALL_UPDATE_CONTACT_METHOD). Returns the created method as 'contact_method' ({id, method_type, label, value}) — keep its id to update or delete it later.
Add User to Team
Add a User to a Team (membership change). Returns the updated team.
Add Comment to Call
Add a comment/note to a Call (max 5 comments per call; emojis are stripped). Returns success on HTTP 201.
Create Contact
Create a shared Aircall contact. Use when adding someone to the shared address book; not for editing an existing one (AIRCALL_UPDATE_CONTACT), and not for attaching a phone number or email address to a contact that already exists — that is AIRCALL_ADD_CONTACT_METHOD with method_type='phone' or method_type='email'. At least one phone_numbers[] entry is required (1-20); emails[] is optional (max 20). Aircall rejects a name-only contact AND an email-only contact with HTTP 400.
Create Tag
Create a Tag. name must be unique per company; color is a hex string (e.g. #00B388). Aircall does not accept a mutable description field.
Create Team
Create a new Team. Requires a name.
Create User
Create an Aircall user and send them a real invitation email, consuming a licensed seat. Use when adding a new teammate to the account; not for changing someone who already exists (AIRCALL_UPDATE_USER). Requires email, first_name and last_name. role_ids takes role NAME strings, one of owner, supervisor, admin or agent, not numeric ids.
Create Webhook
Create an Aircall webhook targeting a public HTTPS URL. Select one or more events, or explicitly set subscribe_to_all_events=true; omission never silently subscribes the destination to every company event. Aircall permits at most 100 webhooks per company.
Delete Call Media
Request permanent deletion of a Call's audio recording or voicemail, for compliance or data governance. Set media_type='recording' or media_type='voicemail'; a call may have one, both, or neither. The call record is retained, but deleting a recording on an AI Assist/Pro account also permanently removes its transcription and AI insights. Use when an audio artefact and its derived AI data must be purged; not for reading call details (AIRCALL_GET_CALL). Once processed, deletion is irreversible. A successful response means Aircall accepted the request, not that deletion is complete: recordings take 10-15 minutes and voicemails up to 1 minute, and existing download URLs may work during propagation. A recording can arrive up to 24 hours after the call, so retry later when it is not present yet.
Delete Contact
Permanently delete a shared Contact and all of its phone numbers and email addresses. Irreversible — there is no undo. Use to remove a contact entirely; not for removing a single phone number or email from a contact (AIRCALL_DELETE_CONTACT_METHOD). Returns 204 (empty body).
Delete Contact Method
Permanently remove one phone number or email address from an Aircall contact. Set method_type='phone' or method_type='email' to say which kind method_id refers to. Use when a contact should no longer be reachable that way; not for deleting the whole contact (AIRCALL_DELETE_CONTACT), and not for correcting a method's value or label (AIRCALL_UPDATE_CONTACT_METHOD). IRREVERSIBLE: the method is gone and re-adding it mints a new id. Returns {success: true} on HTTP 204.
Delete Tag
Delete a Tag by id. Returns 204 (empty body).
Show 36 more things it can do
Delete Team
Delete a Team by id. Returns 204 (empty body). Does not delete the users in it.
Delete User
Permanently delete a User. The deletion is processed asynchronously and returns HTTP 204 (empty body); it fires a user.deleted webhook. Returns a {success, id} confirmation.
Delete Webhook
Permanently delete an Aircall webhook. Delivery stops and its configuration is lost; use UPDATE_WEBHOOK with active=false instead when a reversible pause is preferable.
Get Call
Retrieve a single Call by id, with optional contact / short-url / timeline enrichment via the fetch_* flags.
Get Company
Retrieve information about the connected Aircall company (name, users_count, numbers_count). This is the best true auth-verify endpoint: a 200 confirms the Basic Auth credentials are valid.
Get Contact
Retrieve a single shared Contact by id, with its nested phone_numbers[] and emails[]. NOTE: contact created_at/updated_at are UNIX-epoch INTEGERS.
Get Number
Retrieve a single Aircall phone Number by its numeric id.
Get Number Registration Status
Check whether an Aircall phone number is registered for compliance (10DLC or other regulatory registration) by reading the `status` field. Use for regulatory registration state only; not for the number's name, availability or Music & Messages (AIRCALL_GET_NUMBER).
Get Tag
Retrieve a single Tag by id.
Get Team
Retrieve a single Team by id, including its member users.
Get User
Retrieve one Aircall user by numeric id or by email address. Both work in the id field. Use when you already have the id or email; not for browsing the roster (AIRCALL_LIST_USERS). The user's assigned phone numbers are not included. Get them from AIRCALL_LIST_USER_NUMBERS.
Get User Availability
Check the current availability of one User. Returns availability ∈ available | offline | do_not_disturb | in_call | after_call_work.
Get Webhook
Retrieve one Aircall webhook by its UUID or legacy numeric id.
List Calls
List the account's calls in chronological order, covering about 6 months of history and at most 10,000 items via pagination. Window past that with the `from` UNIX timestamp. Use for plain date-ordered browsing of call activity; not when filtering by direction, user, phone number or tag, which is what AIRCALL_SEARCH_CALLS is for. An account with no calls returns an empty list with HTTP 200, never 404.
List Contacts
List all shared Contacts (hard-capped at 10,000 items via pagination — window past with the `from` timestamp). Each contact embeds nested phone_numbers[] and emails[] ({id, label, value}). NOTE: contact created_at/updated_at are UNIX-epoch INTEGERS (unlike other resources). Paginated via page/per_page; pass next_cursor back as cursor while has_more is true to retrieve subsequent pages.
List Numbers
List all Aircall phone Numbers in the account. Each number includes id, digits, name, country, availability and a `messages` object of audio URLs. Paginated via page/per_page; to page, pass the response's next_cursor back as cursor (has_more signals whether more pages remain).
List Tags
List all Tags in the account. Each tag = {id, name, color (hex), description}. Paginated via page/per_page; to page, pass the response's next_cursor back as cursor (has_more signals whether more pages remain).
List Teams
List all Teams in the account. Each team embeds its member users (nested user objects). Paginated via page/per_page; to page, pass the response's next_cursor back as cursor (has_more signals whether more pages remain).
List User Numbers (V2)
List all Aircall Numbers assigned to a specific User (V2, paginated). Returns one page plus a next_cursor to fetch the next. The number ids feed AIRCALL_START_OUTBOUND_CALL. Targets the /v2 API.
List Users
List the users in the Aircall account, one page at a time with a next_cursor to continue. Use when you need user ids, names, emails, availability or default_number_id; not for a single known user (AIRCALL_GET_USER), and not for the phone numbers a user can call from (AIRCALL_LIST_USER_NUMBERS).
List Users Availability
List the detailed availability of all Users (whether each user is available/offline/on a call, etc.). Paginated via page/per_page; to page, pass the response's next_cursor back as cursor (has_more signals whether more pages remain).
List Webhooks
List webhook subscriptions accessible to the connected Aircall company. This returns one page only. If next_cursor is non-null, call LIST_WEBHOOKS again with that cursor to retrieve the next page; continue until next_cursor is null. Use this to discover a webhook UUID before retrieving, updating, or deleting it.
Publish Call Insight Card
Display contextual title, short text, links, or Aircall user details to the agent handling an ongoing call. Cards are ephemeral: only ongoing calls show them and Aircall does not store them after the call. The JSON payload must be strictly less than 10KB.
Remove User from Team
Remove a User from a Team (membership change). Returns the updated team when Aircall sends HTTP 200, or a success confirmation for an empty HTTP 204. Does not delete the user.
Search Calls
Find calls matching any combination of direction (inbound or outbound), user_id, phone_number and tag ids, optionally narrowed to a from/to date window. Use whenever at least one of those filters applies; not for unfiltered chronological browsing (AIRCALL_LIST_CALLS). Tag ids are AND-matched and come from AIRCALL_LIST_TAGS.
Search Contacts
Search shared Contacts by phone_number and/or email (optionally within a from/to date window). Pass next_cursor back as cursor while has_more is true to retrieve subsequent pages. NOTE: contact created_at/updated_at are UNIX-epoch INTEGERS.
Set Call Recording State
Pause or resume recording on an ongoing Aircall call. This is destructive: audio from a paused interval is never recorded and cannot be recovered by resuming later. The call must still be live and live recording must be enabled on its Aircall number.
Start Outbound Call
Place a real, billable outbound phone call from an Aircall user's desktop Workspace to an external number. Use when a specific user should dial someone now. Requires the user's desktop Workspace app to be open, the user to be available, and a number_id the user owns, from AIRCALL_LIST_USER_NUMBERS. Returns acceptance only. No call id comes back and the call may still fail to connect; locate it afterwards with AIRCALL_SEARCH_CALLS. Calling again places a second call.
Tag Call
Tag a Call with one or more existing Tag ids (create tags first with AIRCALL_CREATE_TAG). Returns success on HTTP 201.
Transfer Call
Cold-transfer a call that is live right now to one user, one team, or one external phone number. The transfer takes effect immediately and cannot be undone. Use only while a call is ringing or connected; not for a call that has already ended, and not for starting a new call (AIRCALL_START_OUTBOUND_CALL). Supply exactly one of user_id, team_id or number. External-number transfers work only for unanswered inbound calls. Returns acceptance on HTTP 204; calling again transfers again.
Update Contact
Update a Contact's core fields (first_name, last_name, company_name, information). Phone numbers and emails are edited via the dedicated contact-method tools (AIRCALL_ADD_CONTACT_METHOD / AIRCALL_UPDATE_CONTACT_METHOD / AIRCALL_DELETE_CONTACT_METHOD), not here.
Update Contact Method
Update one phone number or email address that is already on an Aircall contact. Set method_type='phone' or method_type='email' to say which kind method_id refers to, and always send a nonblank value — Aircall requires it on every update even when only the label changes. Use when changing a method that already exists; not for adding a new one (AIRCALL_ADD_CONTACT_METHOD), and not for removing one (AIRCALL_DELETE_CONTACT_METHOD). Answers HTTP 202 Accepted and returns the updated method as 'contact_method'.
Update Number
Update at least one mutable Number field: name changes its display name; availability_status changes the first Time Rule widget and can open or close call routing; live_recording_activated enables or disables inbound and outbound recording, and audio missed while disabled cannot be recovered; priority changes routing priority; messages replaces or clears supplied Music & Messages audio slots heard by live callers. These routing, recording, and audio effects are destructive and no previous value is restored automatically. Capture current values with AIRCALL_GET_NUMBER before updating if you need to revert. Do not assume omitted fields or message slots are preserved or cleared because Aircall does not document partial PUT semantics.
Update Tag
Update a Tag (PUT, full replace). name and color are both expected. name must remain unique per company. Aircall does not accept a mutable description field.
Update User
Update an existing Aircall user's name, availability_status, substatus, roles or wrap-up time in place. Use when changing a user who already exists; not for creating one (AIRCALL_CREATE_USER), and not for reading their current availability (AIRCALL_GET_USER_AVAILABILITY). substatus applies only when availability_status is 'unavailable'.
Update Webhook
Update an Aircall webhook's URL, name, active state, or event subscriptions. event_update_mode makes preserve/replace/add/remove/all explicit. The safe default is preserve, because Aircall otherwise resets omitted events to all.
Built for the way you actually work
No code, no engineers
Connect in a few clicks and start using your AI right away. If you can use the apps you already love, you can do this.
Sounds like you, not like a bot
Train your AI on your offer, your voice, and the way you actually talk to clients — it picks up where you leave off.
Plugs into the stack you already use
No need to rip out your CRM, your scheduler, or your email tool. Your AI works inside the apps running your business today.
Your data stays yours
Client conversations, lists, and credentials are scoped to your workspace. Nothing gets shared, sold, or used to train anyone else’s AI.
What you can do once Aircall is connected
Onboard new clients without lifting a finger
When someone signs up, your AI greets them, sets up their next step in Aircall, and keeps the momentum going — even at 2am.
Reply to leads in seconds, not days
Your AI watches Aircall for new inquiries, answers questions in your voice, and books the call before they cool off.
Get your weekends back
Hand off the repetitive Aircall work — follow-ups, reminders, updates, simple admin — and stop being the bottleneck in your own business.
How to connect Aircall to your agent
- 1
Start using FormWise for free
Sign up in under a minute.
- 2
Find Aircall in your connected apps
Inside FormWise, go to Settings → Connected Services and look for Aircall.
- 3
Hit "Connect"
Click "Connect Aircall" and log in like you normally would. We only ask for the permissions your AI actually needs.
- 4
Tell your AI what to do in Aircall
Build a quick AI Agent (it's like writing instructions, not code), and pick the Aircall actions you want your AI to handle.
- 5
Watch it run
Send it a real-world task and watch your AI take care of Aircall for you. Tweak the wording until it feels just right.
Powered by the AI you already trust
Your Aircall workflow runs on the same world-class AI used by ChatGPT, Claude, and Gemini. We handle the technical part — you just tell your AI what to do, in plain English.
- OpenAI
- Anthropic Claude
- Google Gemini
Questions other Aircall users had before signing up
Do I need to know how to code?
Not even a little. If you can use Aircall today, you can set this up. You'll connect Aircall, tell your AI what it should help with, and you're live. The whole thing is built for coaches, course creators, agencies, and operators — not engineers.
Will my clients know they're talking to an AI?
Only if you want them to. Your FormWise AI is trained on your voice, your offer, and the way you actually communicate — so it sounds like a thoughtful team member, not a clunky chatbot. Most people can't tell.
Can I make it sound like me?
Yes. You can give your AI examples of how you write, the questions you usually ask new clients, the way you handle objections, and the language you use about your offer. The more you give it, the more it sounds like you wrote it.
What if I want to take over a conversation?
You're always in control. You can step in at any point, take over from your AI, or stop it from sending messages until you've reviewed them. Think of it as a teammate, not a replacement.
Is my client data safe?
Yes. Your Aircall login and client information stay scoped to your workspace. We don't sell it, we don't share it, and we don't use your data to train anyone else's AI. You can disconnect Aircall or delete everything any time.
What happens when Aircall updates their app?
We handle it. When Aircall adds new features or changes how something works, we update the integration in the background. You don't have to do anything — your AI just keeps working.
How fast can I actually get this running?
Most people are up and running the same day they sign up. Connecting Aircall takes a few minutes. Teaching your AI to handle the work the way you'd want it done is the part worth slowing down for.
What is FormWise?
FormWise is the AI agent builder for coaches, course creators, and agencies. You connect the apps you already use — like Aircall — train your AI on your offer and voice, and let it handle the work you've been doing manually: onboarding, follow-ups, support, admin. No code, no developers, no engineering team required.
Can I sell AI agents to my clients?
Yes. A lot of FormWise users build AI assistants and sell them as part of their offer — done-for-you AI setups, white-label assistants for client businesses, custom GPTs trained on a client's brand. You can charge a setup fee, a monthly retainer, or both.
Can I embed my AI on my website or in my course?
Yes. Every AI you build in FormWise can be embedded on your site, dropped into your course platform, or shared as a standalone link. Your clients and students just open it like any other web page — no app to download, no login hoops.
Do I need to know anything about AI to use this?
No. If you can describe what you want your AI to do in plain English — "greet new clients, ask these 3 questions, book them a call" — FormWise can build it. We handle the models, the prompts, the connections. You handle the part you already know: what your business actually needs.
About Aircall on FormWise
Aircall is a cloud-based phone and call-center platform. This toolkit manages users, teams, phone numbers, calls, contacts, and tags on a single Aircall company account via the Public API.
Connect Aircall once and your FormWise AI gets 48 things it can do inside it. That means your AI can handle the Aircall work in your business — the messages, the updates, the follow-ups, the admin — the way you would, just faster and around the clock.
You don't need to know how any of it works under the hood. We take care of keeping the connection alive, retrying if something fails, and making sure your data only ever moves where you tell it to.
New to Aircall? Take a look at aircall.io.
More communication integrations
Dialpad
Dialpad is a cloud-based business phone system and contact center platform that enables voice, video, messages and meetings across your existing devices
Disqus
Disqus is a discussion and community platform for managing forums, threads, posts, users, moderation, and organization settings.
Help Scout
Help Scout provides customer support software with shared inbox, knowledge base, and customer management tools
Close MCP
Close MCP gives agents scoped access to CRM leads, contacts, opportunities, activities, communications, and organization workflows.
Resend MCP
Send and manage transactional email through Resend.
Linq
Send and manage iMessage, RCS, and SMS conversations, attachments, phone numbers, payments, and webhooks through the Linq Partner API.
Stop doing the Aircall work yourself
Hand it off to an AI assistant that sounds like you, works around the clock, and never forgets a follow-up. Free to start.
