Hey! How can we help?

Working with Callsavvy Webhooks

?Caller Information POST » ‹Your Callback URL›

Callsavvy will send the following JSON data to your webhook URL via HTTP POST each time a call is received by your business;

POST data (json)
{
    "event": "callerInformation",
    "call_department":"‹ID of the department being called›",
    "caller_number":"‹Caller's phone number›",
    "call_status":"routing"
}

Your server is expected to respond with the following json data
{
    "status": "success",
    "caller_name":"‹Caller name to display on the call screen›",
    "caller_email":"‹Caller's email address›",
    "customer_info":"‹Any custom information you want to display on the call screen›"
}

Call Summary POST » ‹Your Callback URL›

Callsavvy will send the following JSON data to your webhook URL via HTTP POST at the end of each call;

POST data (json)
{
    "event": "callSummary",
    "call_direction":"‹Direction of the call (Incoming or Outgoing)›",
    "call_department":"‹ID of the department being called›",
    "caller_number":"‹Caller's phone number›",
    "recording_url":"‹URL to the call recording file›",
    "call_duration":"‹Duration of the call in seconds›",
    "call_status":"finished"
}

No response is expected from your server.

New Ticket POST » ‹Your Callback URL›

Callsavvy will send the following JSON data to your webhook URL via HTTP POST each time a new ticket is opened to your business;

POST data (json)
{
    "event": "newTicketOpened",
    "ticket_id":"‹ID of the new ticket›",
    "ticket_department":"‹ID of the ticket department›",
    "ticket_subject":"‹Subject of the ticket›",
    "sender_email":"‹The sender's email address›",
    "ticket_status":"New"
}

No response is expected from your server.

Ticket Escalation POST » ‹Your Callback URL›

Callsavvy will send the following JSON data to your webhook URL via HTTP POST each time a ticket escalated;

POST data (json)
{
    "event": "ticketEscalated",
    "ticket_id":"‹ID of the escalated ticket›",
    "ticket_department":"‹ID of the ticket department›",
    "last_ticket_reply":"‹Date and Time ticket was last replied (YYYY-MM-DD HH:MM:SS)›",
    "ticket_subject":"‹Subject of the ticket›",
    "sender_email":"‹The sender's email address›",
    "ticket_status":"‹Status of the ticket›"
}

No response is expected from your server.

New Chat POST » ‹Your Callback URL›

Callsavvy will send the following JSON data to your webhook URL via HTTP POST each time a visitor starts a new live-chat with your business;

POST data (json)
{
    "event": "newChat",
    "chat_department":"ID of the chat department›",
    "visitor_name":"‹The visitor's name›",
    "visitor_email":"‹The visitor's email address›",
    "visitor_phone":"‹The visitor's phone number›"
}

No response is expected from your server.

Chatbot Response Request POST » ‹Your Callback URL›

Callsavvy will send the following URL-Form Encoded data to your webhook URL via HTTP POST each time a chatbot or auto-responder event needs to get response from your server;

POST data (url-form-encoded)
]
    "event": "chatbotCallback",
    "original_message":"‹The message content that triggered the bot",
    "sender_name":"‹The message sender's name›",
    "bot_name":"‹The name you set for the chatbot which triggered the event›",
    "department":"‹The name of the originating department if applicable›",
    "business_name":"‹Your business name on Callsavvy›"
]

A valid Text or HTML response expected from your server.

Still can't find what you are looking for?

Here are other ways to get help!

Phone

Speak to one of our customer care agent

Ticket

Send an email to our support team>

Chat

Have a chat with our support team<

Video

Request a video chat with our team<

Appointment

Book a virtual call on our calendar<

Chat with us