Beyond-Bot.ai Logo+
Aircall logo

Beyond-Bot.ai + Aircall

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.

communicationcomposioexperimentalNo managed auth

What You Can Do with this Integration

Automate Data Entry

Automatically sync new contacts or deals from Beyond-Bot.ai to Aircall.

Enrich Customer Profiles

Use Beyond-Bot.ai to find and add new information to your records in Aircall.

Trigger Workflows

Start automated workflows in Aircall based on conversations with your virtual expert.

Available Actions

Here are the specific actions your virtual expert can perform within Aircall.

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).

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.