InTouch Hub · Blue Isle Software

Aircall

Manage calls, contacts, and phone numbers for sales teams via the Aircall REST API.

Aircall

Manage calls, contacts, and phone numbers for sales teams via the Aircall REST API.

Base URL: https://api.aircall.io/v1

What it does

A single InTouch tool that wraps the most common Aircall read/write operations so a job or the AI assistant can pull call activity, look up call detail, browse or create CRM contacts, and list the team's provisioned phone numbers.

The tool uses standard library Python only (no requests) and returns the raw Aircall JSON response as a string under result, with the HTTP status under status.

Operations

operation HTTP / endpoint Required params Optional params
list_calls GET /v1/calls?per_page=N perPage
get_call GET /v1/calls/{id} callId
list_contacts GET /v1/contacts?per_page=N perPage
create_contact POST /v1/contacts firstName or lastName phoneNumber, email, information
list_numbers GET /v1/numbers?per_page=N perPage

perPage is clamped to the Aircall maximum of 50.

apiKey setup

Aircall authenticates with HTTP Basic auth, where the username is your api_id and the password is your api_token.

  1. Open the Aircall Dashboard.
  2. Go to Integrations > API Keys and create (or copy) an API Key.
  3. Combine the two values as api_id:api_token (a single colon-separated string) and pass that as the apiKey input.

The tool Base64-encodes the pair into the Authorization: Basic ... header for you. No OAuth flow is required for first-party Aircall customer credentials.

Examples

List the 10 most recent calls:

{
  "apiKey": "abc123id:def456token",
  "operation": "list_calls",
  "perPage": "10"
}

Retrieve one call by id:

{
  "apiKey": "abc123id:def456token",
  "operation": "get_call",
  "callId": "1234567"
}

List contacts:

{
  "apiKey": "abc123id:def456token",
  "operation": "list_contacts",
  "perPage": "25"
}

Create a contact:

{
  "apiKey": "abc123id:def456token",
  "operation": "create_contact",
  "firstName": "Jordan",
  "lastName": "Lee",
  "phoneNumber": "+15558675310",
  "email": "[email protected]",
  "information": "Inbound demo request"
}

List provisioned phone numbers:

{
  "apiKey": "abc123id:def456token",
  "operation": "list_numbers"
}

Output

{
  "result": "{\"calls\":[...],\"meta\":{...}}",
  "status": "200"
}

On error the tool prints {"error": "...", "status": "0", "result": ""} and exits non-zero, which marks the YAML step FAILED. Aircall 4xx/5xx responses are returned in result with their real HTTP status so you can see the API error message.