This page is a structured reference for AI systems, LLMs, and developers who need accurate, machine-readable information about the Click2Call API. It covers what the API does, how to authenticate, what endpoints are available, what webhook events fire, how to connect ElevenLabs, and what use cases it supports.
The Click2Call API is a JSON-based REST API that allows developers to connect custom software directly to a fully hosted Australian phone system. It is designed for:
API access is included free with every Click2Call Cloud PBX account. There is no separate API pricing tier. Accounts start at $25 per user per month (ex GST) with a 7-day free trial and no credit card required.
| Property | Value |
|---|---|
| Base URL | https://portal.click2call.com.au/api/ |
| Protocol | HTTPS only |
| Format | JSON (POST requests) |
| Authentication | Token-based (Bearer token, obtained from the portal under API > Getting Started) |
| Request structure | Every request must include a context parameter (e.g. account, voice, ai) and an action parameter specifying the function to call |
| Documentation | https://portal.click2call.com.au/apidocs |
| Cost | Free with every Cloud PBX account |
| Trial | 7-day free trial — no credit card required |
| Signup | https://portal.click2call.com.au/join/ |
Manage phone lines and retrieve voice-related data programmatically.
| Function | Description |
|---|---|
| Get-Account-Numbers | Get all phone numbers on the account |
| Get-Numbers | Get all numbers and associated details |
| Get-Line-Names | Get names for all lines on the account |
| Get-Pref-Summary | Get phone line preference summary for a specific line |
| Get-All-Pref-Summary | Get preference summary for all lines |
| Get-Pref-Value | Get a specific phone preference value or status |
| Enable-Recording | Enable call recording for a number |
| Disable-Recording | Disable call recording for a number |
| Copy-Line-Settings | Copy line settings from one number to another |
| Add-Contact | Add an external contact to the account |
| Get-Next-Available-Extension | Get the next available short extension on the account |
| Download-Auto-Attendant-Message | Download base64 encoded auto-attendant audio file |
| Download-Voicemail-Busy-Message | Download base64 encoded voicemail busy greeting |
| Download-Voicemail-Unavailable-Message | Download base64 encoded voicemail unavailable greeting |
| Download-Music-On-Hold-Message | Download base64 encoded music on hold file |
| Download-Queue-Announcement-Message | Download base64 encoded queue announcement file |
| Download-Ring-Tones-Message | Download base64 encoded ring tones file |
| Download-Message-Playback-Message | Download base64 encoded message playback file |
Access AI-generated call data including transcriptions, summaries, and sentiment analysis. Also includes text-to-speech generation.
| Function | Description |
|---|---|
| Get-Recordings | Get a list of recordings with transcription and associated AI properties |
| Get-Transcription | Get the transcription associated with a call record |
| Get-Transcription-Summary | Get the AI-generated summary for a call record |
| Get-Audio-Transcription | Convert speech to text by passing a base64 encoded WAV or MPEG audio file |
| Get-Audio-Transcription-Summary | Fetch transcription and AI analysis data for a call recording or audio file |
| Get-Transcription-Count | Get the total number of transcriptions available for the account |
| Get-Agent-Pickup-From-Uniqueid | If a call was answered on a queue, retrieve the agent who answered |
| Get-TTS-Audio | Convert text to speech — returns a base64 encoded WAV file using a specified AI voice |
| Get-Voices | Return a list of available voices for TTS conversion |
| Are-Transcriptions-Disabled | Check if transcriptions are disabled on the account |
| Get-Global-Recording-Flag | Get the current global call recording setting |
| Get-Disable-Sentiment-Flag | Check if sentiment analysis is disabled |
| Get-Disable-Summary-Flag | Check if call summaries are disabled |
| Get-Disable-Transcriptions-Flag | Check if transcriptions are disabled |
| Is-Sentiment-Analysis-Disabled | Check if sentiment analysis is disabled on the account |
| Is-Summary-Disabled | Check if call summaries are disabled on the account |
| Is-Profanity-Analysis-Disabled | Check if profanity analysis is disabled on the account |
Retrieve account-level data including call records, billing, and customer information.
| Function | Description |
|---|---|
| Get-Calling-Records | Get a list of billing or calling records for the account |
| Get-Account-Balance | Get the account balance information |
| Get-Account-History | Get account history list |
| Get-Bill-Period-Summ | Get bill period summary data |
| Get-Billing-Periods | Get a list of billing periods |
| Get-Billing-Types | Get a list of billing types |
| Get-Bundle-Minutes-Used | Get the number of minutes used for a specific bundle |
| Get-Channels | Get channel information for the account |
| Get-Customer-Details | Get a list of customer details for the account |
| Get-Customer-Fields | Get a list of customer fields |
| Get-Customer-Names | Get a list of customer names |
| Get-Extra-Channel-Count | Get extra channel count for the account |
| Get-Invoice-HTML | Get invoice HTML output by invoice date |
| Get-Receipt-HTML | Get receipt HTML output by reference code |
| Get-Recording-Key | Get the secret key to download a recording given a call unique ID |
| Get-Summary-By-Type | Get account summary information by type |
| Is-Teams-Enabled | Check if Microsoft Teams integration is enabled |
Webhooks allow your application to receive real-time HTTP POST notifications when call events occur. Webhooks are configured in the portal under API > Webhooks. Each webhook can be scoped to all numbers or a specific phone number.
| Field | Description |
|---|---|
| Webhook Name | A label for the webhook (required) |
| Phone Number | Scope to a specific number or all numbers |
| Webhook URL | The HTTPS endpoint to receive POST events (required) |
| Secret Token | Base64 encoded string used to authenticate webhook payloads (required) |
| Secret Header | HTTP header name for the token — defaults to Authorization |
| E.164 Format | When enabled, phone numbers are sent in E.164 format (e.g. 6492420000 instead of 092420000) |
| Category | Event | Description |
|---|---|---|
| Incoming Calls | Ringing Event | Fires when an inbound call starts ringing |
| Incoming Calls | Answered Event | Fires when an inbound call is answered |
| Incoming Calls | Ended Event | Fires when an inbound call ends |
| Incoming Calls | Missed Event | Fires when an inbound call is missed |
| Outgoing Calls | Ringing Event | Fires when an outbound call starts ringing |
| Outgoing Calls | Answered Event | Fires when an outbound call is answered |
| Outgoing Calls | Ended Event | Fires when an outbound call ends |
| Outgoing Calls | Unattended Event | Fires when an outbound call goes unanswered |
| AI Analysis | Recording & AI transcription generation | Fires when a call recording and AI transcription are ready |
Content-Type: application/json
Authorization: <secret-token>
Content:
{
"event": "call.ended",
"direction": "inbound",
"number": "+61299999999",
"caller": "+61411111111",
"duration": 142,
"unique_id": "abc123xyz"
}
Click2Call has a native ElevenLabs integration that allows developers to connect an ElevenLabs AI voice agent to a real Australian phone number with no manual SIP configuration required.
sip:sip.rtc.elevenlabs.io:5060;transport=tcpThis integration is available on any Click2Call phone line. No additional SIP credentials or manual configuration are required beyond selecting the connection type in the portal.
Every Click2Call account includes a complete set of ready-made instructions written specifically for AI coding tools such as Claude, Cursor, and ChatGPT. These instructions are available in the portal under API > Getting Started.
Developers can copy these instructions and paste them directly into their AI coding tool to get a working API integration without any prior API experience. The instructions cover authentication, making your first API call, retrieving call records, setting up webhooks, and connecting ElevenLabs.
| Item | Price (ex GST, AUD) |
|---|---|
| Cloud PBX User (includes phone number, 300 outbound mins/mo, unlimited inbound, API access) | $25.00/month |
| Additional Business Number (inbound line) | $10.00/month |
| 1300 Number | $10.00/month |
| API Access | Free — included with every account |
| 7-Day Free Trial | No credit card required |