Callingly API Documentation

To be able to access and use the Callingly API you will need to obtain a Bearer Token and pass it in with every request. To obtain a token, please contact support.

Authentication Headers

With every API request, please send in the following headers:

Authorization: Bearer {{YOUR BEARER TOKEN}}
Accept: application/json

Account ID for Clients

If you are an Agency partner and are using the API to make requests for your clients, along with your Bearer Token you can pass in an account_id parameter with the ID number of your client's account.

You can find your client's account ID number either in the Clients endpoint or by clicking Edit on the Client's account in the Clients panel and looking for the ID in the top right corner.

Clients

List Clients

Endpoint

GET https://api.callingly.com/v1/clients

Sample Response

[
	{
		"id": 123,
		"name": "Client Name",
		"email": "client@email.com",
		"billed_users": 12,
		"billed_numbers": 2
	}
]

Create Client

Endpoint

POST https://api.callingly.com/v1/clients

Sample Request

{
	"fname": "John",
	"lname": "Smith",
	"company": "Smith Pools",
	"email": "client@email.com",
	"phone_number": "555-555-5555",
	"password": "password123"
}

Delete Client

Endpoint

DELETE https://api.callingly.com/v1/clients/{{id}}

Activate/Deactivate

Endpoint

POST https://api.callingly.com/v1/clients/{{id}}/active

Sample Request

{
	"is_active": 0
}

Teams

List Teams

Endpoint

GET https://api.callingly.com/v1/teams

Sample Response

[
	{
		"id": 123,
		"account_id": 1,
		"name": "Main Team"
	}
]

Get Team

Endpoint

GET https://api.callingly.com/v1/teams/{{id}}

Sample Response

{
    "id": 123,
    "account_id": 1,
    "name": "Main Team",
    "is_record": 1,
    "call_mode": "simultaneous",
    "whispertext": "Please press 1 to connect to {first_name} {last_name} from {company} {category}",
    "post_whispertext": "Your call has been completed. Press 1 if you were able to reach the lead. Press 2 if you left a voicemail. Press 3 otherwise to reschedule the call.",
    "language": "en",
    "delay": 0,
    "is_retry": 1,
    "retries": 3,
    "retry_schedule": [
        15,
        60,
        120
    ],
    "is_reschedule": 1,
    "is_retry_lead": 1,
    "lead_retries": 3,
    "lead_retry_schedule": [
        15,
        60,
        120
    ],
    "is_sms": 0,
    "sms_body": ""
}

Create Team

Endpoint

POST https://api.callingly.com/v1/teams

Sample Request

{
    "account_id": 1,
    "name": "New Team",
    "is_record": 1,
    "call_mode": "simultaneous",
    "whispertext": "Please press 1 to connect to {first_name} {last_name} from {company} {category}",
    "language": "en",
    "delay": 0,
    "is_retry": 1,
    "retries": 3,
    "retry_schedule": [
        15,
        60,
        120
    ],
    "is_reschedule": 1,
    "is_retry_lead": 1,
    "lead_retries": 3,
    "lead_retry_schedule": [
        15,
        60,
        120
    ]
}

Update Team

Endpoint

PUT https://api.callingly.com/v1/teams/{{id}}

List Team Users

Endpoint

GET https://api.callingly.com/v1/teams/{{id}}/agents

Sample Request

{
    "agents": [
        {
            "id": 1,
            "name": "John Smith",
            "priority": 1,
            "cap": null
        },
        {
            "id": 2,
            "name": "Test Test",
            "priority": 1,
            "cap": 1000
        },
        {
            "id": 3,
            "name": "Jane Smith",
            "priority": 2,
            "cap": null
        }
    ]
}

Update Users

Endpoint

PUT https://api.callingly.com/v1/teams/{{id}}/agents

Sample Request

{
    "agents": ["1","3","5"]
}

Remove Agent

Endpoint

DELETE https://api.callingly.com/v1/teams/{{id}}/agents/{{agent_id}}

Update Agent Settings

Endpoint

PUT https://api.callingly.com/v1/teams/{{id}}/agents/{{agent_id}}

Sample Request

{
    "priority": 1,
    "cap": 100
}

Users

List Users

Endpoint

GET https://api.callingly.com/v1/agents?account_id=1

Sample response

[
    {
        "id": 123,
        "account_id": 1,
        "fname": "John",
        "lname": "Smith",
        "phone_number": "+16024819661",
        "ext": "",
        "donotdisturb": 0,
        "priority": 1,
        "timezone": "America/Phoenix",
        "is_available": true
    }
]

Get Agent Schedule

Endpoint

GET https://api.callingly.com/v1/agents/{{id}}/schedule

Sample response

[
    {
        "label": "Sunday",
        "day": 0,
        "is_available": false,
        "times": [
            {
                "start": "allday",
                "end": "20:00:00"
            }
        ]
    },
    {
        "label": "Monday",
        "day": 1,
        "is_available": true,
        "times": [
            {
                "start": "06:00:00",
                "end": "20:00:00"
            }
        ]
    },
    {
        "label": "Tuesday",
        "day": 2,
        "is_available": true,
        "times": [
            {
                "start": "06:00:00",
                "end": "12:00:00"
            },
            {
                "start": "12:00:00",
                "end": "23:45:00"
            }
        ]
    },
    {
        "label": "Wednesday",
        "day": 3,
        "is_available": true,
        "times": [
            {
                "start": "06:00:00",
                "end": "20:00:00"
            }
        ]
    },
    {
        "label": "Thursday",
        "day": 4,
        "is_available": true,
        "times": [
            {
                "start": "06:00:00",
                "end": "22:00:00"
            }
        ]
    },
    {
        "label": "Friday",
        "day": 5,
        "is_available": true,
        "times": [
            {
                "start": "allday",
                "end": "20:00:00"
            }
        ]
    },
    {
        "label": "Saturday",
        "day": 6,
        "is_available": true,
        "times": [
            {
                "start": "allday",
                "end": "20:00:00"
            }
        ]
    }
]

Create Agent

Endpoint

POST https://api.callingly.com/v1/agents

Sample response

{
	"account_id": 1,
	"fname": "John",
        "lname": "Smith",
	"phone_number": "555-555-5555",
	"ext": "100",
	"timezone: "America/Phoenix"
}

Update Agent

Endpoint

PUT https://api.callingly.com/v1/agents/{{id}}

Sample request

{
	"account_id": 1,
	"fname": "John",
        "lname": "Smith",
	"phone_number": "555-555-5555",
	"ext": "100",
	"timezone: "America/Phoenix",
	"donotdisturb": 1,
        "donotdisturb_until" "2021-01-25 22:00:00"
}

Delete Agent

Endpoint

DELETE https://api.callingly.com/v1/agents/{{id}}

Update Schedule

Endpoint

PUT https://api.callingly.com/v1/agents/{{id}}/schedule

Sample Request

[
    {
        "label": "Sunday",
        "day": 0,
        "is_available": false,
        "times": [
            {
                "start": "allday",
                "end": "20:00:00"
            }
        ]
    },
    {
        "label": "Monday",
        "day": 1,
        "is_available": true,
        "times": [
            {
                "start": "06:00:00",
                "end": "20:00:00"
            }
        ]
    },
    {
        "label": "Tuesday",
        "day": 2,
        "is_available": true,
        "times": [
            {
                "start": "06:00:00",
                "end": "12:00:00"
            },
            {
                "start": "12:00:00",
                "end": "23:45:00"
            }
        ]
    },
    {
        "label": "Wednesday",
        "day": 3,
        "is_available": true,
        "times": [
            {
                "start": "06:00:00",
                "end": "20:00:00"
            }
        ]
    },
    {
        "label": "Thursday",
        "day": 4,
        "is_available": true,
        "times": [
            {
                "start": "06:00:00",
                "end": "22:00:00"
            }
        ]
    },
    {
        "label": "Friday",
        "day": 5,
        "is_available": true,
        "times": [
            {
                "start": "allday",
                "end": "20:00:00"
            }
        ]
    },
    {
        "label": "Saturday",
        "day": 6,
        "is_available": true,
        "times": [
            {
                "start": "allday",
                "end": "20:00:00"
            }
        ]
    }
]

Calls

Get Call

Endpoint

GET https://api.callingly.com/v1/calls/{{call_id}}

Sample Response

{
    "id": 1234,
    "started_at": "2020-11-11 12:08:13",
    "direction": "outbound",
    "status": "completed",
    "status_formatted": "Completed",
    "lead_status": "contacted",
    "lead_status_formatted": "Contacted",
    "ring_status": "completed",
    "seconds": 5,
    "duration": "5s",
    "retry": 0,
    "lead_retry": 0,
    "time_formatted": "11/11/20 12:08pm",
    "from_formatted": "(123) 456-7890",
    "source": "App",
    "recording_url": "https://cdn.callingly.com/recordings/example.mp3",
    "waveform_url": "https://cdn.callingly.com/waveforms/example.png",
    "error_message": null,
    "phone_number_formatted": "(123) 456-7890",
    "human_result": "contacted",
    "user": {
        "id": 1,
        "name": "Michael Scott",
        "fname": "Michael",
        "lname": "Scott",
        "email": "michael@dundermifflin.com",
        "phone_number": "+11234567890",
    },
    "lead": {
        "id": 1234567,
        "name": "Example Lead",
        "label": "Example Lead",
        "fname": "Example",
        "lname": "Lead",
        "email": "example@lead.com",
        "phone_number": "+11234567890",
        "phone_number_formatted": "(123) 456-7890",
        "source": null,
        "crm": null,
        "source_id": null,
        "deleted_at": null
    },
    "number": null,
    "tag": null,
    "notes": [],
    "profile": {
        "id": 12345,
        "name": "Example Team"
    },
    "is_voicemail": 0,
    "is_queue": 0,
    "is_team_offline": 0,
    "scheduled_call_type": null,
    "old_lead_owner_id": null,
    "transcript": "Speaker A: Hello this is a call...",
    "sales_advice": null,
    "is_error": 0,
    "error_code": ""
}

List Calls

Endpoint

GET https://api.callingly.com/v1/calls?start=2020-01-01&end=2020-02-01&team_id=123&limit=10&page=1

Sample Response

{
    data: [
        {
            id: 12343,
            started_at: "2020-11-30 10:54:01",
            direction: "outbound",
            status: "completed",
            lead_status: null,
            seconds: 37,
            duration: "37s",
            retry: 0,
            lead_retry: 0,
            time_formatted: "11/30/20 10:54am",
            source: "Dashboard",
            member: [],
            lead: [],
            profile: [],
            recording_url:
                 "https://cdn.callingly.com/recordings/da3c0bf.mp3",
        }
    ]
}

Create Call

Endpoint

POST https://api.callingly.com/v1/calls

Sample Request

{
    "account_id": 1,
    "team_id": 123,    
    "first_name": "John",
    "last_name": "Doe",
    "phone_number": "555-555-5555",
    "email": "john@doe.com",
    "company": "John's Pools",
    "category": "Pools",
    "source": "HubSpot",
    "crm_id": 123
}

Leads

List Leads

Endpoint

GET https://api.callingly.com/v1/leads?start=2020-01-01&end=2020-02-01&phone_number=+14801234567

Sample Response

[
  {
    "id": 1,
    "account_id": 1,
    "lead_owner_id": 4,
    "fname": "Test",
    "lname": "Lead",
    "email": "test@lead.com",
    "phone_number": "+14801234567",
    "source": "Webhook",
    "source_id": null,
    "created_at": "2024-05-21 23:37:54",
    "company": "Callingly",
    "category": null,
    "status": "missed",
    "result": null,
    "team": {
      "id": 1,
      "name": "Team 1"
    },
    "tags": [],
    "stage": null,
    "calls": [
      {
        "id": 1,
        "source": null,
        "seconds": 0,
        "direction": "outbound",
        "status": null,
        "result": null,
        "agent_retry": 0,
        "lead_retry": 0,
        "started_at": "2024-06-03 23:57:04",
        "recording_url": null
      }
    ],
    "scheduled_call_at": "06/13/24 3:48pm MST",
    "lead_owner": {
      "name": "Bartholome Wilkinson",
      "phone_number": "+14801239876",
      "custom_id": null
    }
  }
]

Get Lead

Endpoint

GET https://api.callingly.com/v1/leads/{{id}}

Sample Response

{
  "id": 1,
  "account_id": 1,
  "lead_owner_id": 4,
  "fname": "Test",
  "lname": "Lead",
  "email": "test@lead.com",
  "phone_number": "+14801234567",
  "source": "Webhook",
  "source_id": null,
  "created_at": "2024-05-21 23:37:54",
  "company": "Callingly",
  "category": null,
  "status": "missed",
  "result": null,
  "team": {
    "id": 1,
    "name": "Team 1"
  },
  "tags": [],
  "stage": null,
  "scheduled_call_at": "06/13/24 3:48pm MST"
}
Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.

Still need help? Contact Us Contact Us