Skip to main content
Webhooks from smrtPhone

Use events in smrtPhone to trigger actions in your other software systems (i.e. your CRM)

Georgiana Mirita avatar
Written by Georgiana Mirita
Updated over a month ago

Webhooks are a powerful dynamic resource in which apps (i.e. smrtPhone) can send automated messages or information to other apps (i.e. your CRM) and you can use this to improve your productivity.

We recommend you engage with your developer to take full advantage of the Webhooks available in smrtPhone.

In smrtPhone, you can generate Webhooks from Events. These signals are real-time, rather than waiting for a scheduled update from an API.


Where to Access Webhooks

The Webhook interface lives inside the Admin Panel in the smrtPhone Dashboard.


How to Create a New Webhook

Once you are in the Webhook interface, it's easy for you to create a new one. Click the upper green button βž• New Webhook.

Now you can set up the details for this new Webhook:

About Events

Our initial set of events is focused on phone number management, such as purchasing a new number. We have now added additional Webhooks for your use and will continue to add more.

A common example, using Phone Numbers, is if you have your CRM configured to send automated text messages from your numbers. When you purchase a new number, you will want to update your system to use that new number to send messages as well. Instead of having it be fully manual to do so, you can set the Webhook for Buy a number to trigger a new SMS sequence creation within your CRM.

If you have ideas for other ones you want, please add them as a feature request β‡’

Endpoint URL

This is the URL you define, where the Webhook event information will be sent. It belongs to the receiving system (for example: your CRM.)

Events

Events are the activities and triggers within smrtPhone that will send out the Webhook. Below is a list of the currently available Events. If you'd like additional ones, please send us your feedback.

While selecting, you can choose one, multiple, or all of the events available in this list.

For example: You can create a Webhook that alerts your system that you have purchased a new number with a specific friendly name.

Each event can trigger whatever you want within your system. That part is up to you/your developer.

Name of the event

Action that happened in smrtPhone

πŸ”• Add number to DNC

A contact has opted out, and their number has been added to the smrtPhone Do Not Contact list.

πŸ“€ Remove number from DNC

A contact has opted in, and their number has been removed from the smrtPhone Do Not Contact list.

πŸ”’ Buy number

A new phone number has been added to your smrtPhone phone number portfolio.

βœ‚ Delete number

A phone number has been removed from your smrtPhone phone number portfolio.

πŸ”Ό Update number Friendly name

A phone number has a friendly name added or modified.

πŸ“΅ Add number to Spam

A phone number has been marked as Spam.

πŸ“² Remove number from Spam

A phone number has been removed from the Spam List.

βž• Add User

A new user was added. Learn how to add users.

βž– Delete User

A user was deleted from your account. Learn more about removing users.

πŸ“© Incoming SMS

A new SMS reached your Inbox. Learn how to text using smrtPhone.

πŸ“¨ Outgoing SMS

A new SMS was sent from your selected number. Learn how to text using smrtPhone.

πŸ“² Incoming Call Answered

A new call has reached your number. Learn about incoming calls and flow calls.

πŸ“± Call Initiated

A new call was initiated from your account.

☎️ Call Completed

A phone call was just completed.

β˜‘οΈ Call Status Updated

The call status was just updated for a phone call. Learn more about Call Statuses.

πŸ“ Call Notes Updated

The call notes were just updated.

βœ‰οΈ SMS Delivery Callback

Shows the status of your SMS. If there is an error, will be displayed in the payload. There are multiple failure reasons, and you can check them in the Webhooks if they occur.

Description

This field is optional, yet it can help you keep track of each event. You can use this description of an Event in searching for them.

Once you are happy with the settings, click the Save button. You can always come back later and edit these events.


Filter and Find Webhooks

If you have a long list of Webhooks, you can quickly find them by using the filters available from the main Webhook interface.

Also, you can sort them by the date they were created or their status.

After the Description column, where you can see any description if set, the final option is to edit or delete the Webhook from the icons in the Action column.


Using Webhooks & Proper Payloads

Depending on which Webhook you are using, you will need to configure your system to receive all of the correct information. This is commonly referred to as the "payload." You must ensure all proper tokens are sent and received for the Webhook to perform correctly.

For each event, you will receive a specific JSON payload, as in the examples below:

Add Number to DNC:

{'phone': '+1206745****',
'event': "addNumberToDNC'}

Remove Number from DNC:

{'phone": '+1206745****',
'event": 'removeNumberFromDNC'}

Buy Number:

{'phone':'+1206745****',
'friedlyName':'Docs',
'event':'buyNumber'}

Delete Number:

{'phone':'+1206745****',
'event":"deleteNumber'}

Update Friendly Name:

{'phone':'+1206745****',
'friendlyName':'Docs',
'event':'updateNumberName'}

Add Number to Spam:

{'phone':'+1206745',
'event':'addNumberToSpam'}

Remove Number from Spam:

{'phone':'+1206745****',
'event':'removeNumberFromSpam'}

Add User:

{"id":368**,
"email":"***@gmail.com",
"name":"First Last",
"event":"addUser"}

Delete User:

{"id":333**,
"email":"***@gmail.com",
"event":"deleteUser"}

Incoming SMS:

{'smsId' => '7897****', 
'from' => '+1206745****',
'to' => '+8906745****',
'message' => 'This is the message example',
'date' => 'YYYYMMDD',
'callerIdName' => 'George',
'userName' => 'Mike',
'contactName' => 'John',
'event' => 'smsIncoming'}

Outgoing SMS:

{'smsId' => '7897****',
'from' => '+1206745****',
'to' => '+8906745****',
'message' => 'This is the message example',
'date' => 'YYYYMMDD',
'callerIdName' => 'George',
'userName' => 'Mike',
'contactName' => 'John',
'event' => 'smsOutgoing'}

Incoming Call Answered:

{'callId' => '96809****', 
'from' => '+1206745****',
'to' => '+8906745****',
'date' => 'YYYYMMDD',
'callerIdName' => 'Stephan',
'userName' => 'Susan',
'contactName' => 'Marie',
'callNotes' => call notes,
'callOutcome' => 'Missed",
'event' => 'callIncomingAnswered'}

Call Initiated:

{'callId' => '96809****', 
'from' => '+1206745****',
'to' => '+8906745****',
'date' => 'YYYYMMDD',
'callerIdName' => 'Stephan',
'userName' => 'Susan',
'contactName' => 'Marie',
'callNotes' => call notes,
'callOutcome' => 'Missed",
'event' => 'callInitiated'}

Call Completed:

{'callId' => '96809****', 
'from' => '+1206745****',
'to' => '+8906745****',
'date' => 'YYYYMMDD',
'callerIdName' => 'Stephan',
'userName' => 'Susan',
'contactName' => 'Marie',
'callNotes' => call notes,
'callOutcome' => 'Missed",
"event" => "callCompleted"}

Call Status Updated:

{'callId' => '96809****', 
'from' => '+1206745****',
'to' => '+8906745****',
'date' => 'YYYYMMDD',
'callerIdName' => 'Stephan',
'userName' => 'Susan',
'contactName' => 'Marie',
'callNotes' => call notes,
'callOutcome' => 'Missed",
'event' => 'callStatusUpdated'}

Call Notes Updated:

{'callId' => '96809****', 
'from' => '+1206745****',
'to' => '+8906745****',
'date' => 'YYYYMMDD',
'callerIdName' => 'Stephan',
'userName' => 'Susan',
'contactName' => 'Marie',
'callNotes' => call notes,
'callOutcome' => 'Missed",
'event' => 'callNotesUpdated'}

SMS Delivery Callback:

{'smsId' =>  '7897****', 
'status' => 'delivered',
'event' => 'smsDeliveryCallback'
'failure_reason'=> 'The destination number you are trying to reach is unknown and may no longer exist'}

At this moment, webhooks are available only for smrtPhone, not smrtDialer.


Webhook View Logs

In Logs, you can find information for each specific event that occurred.

Here you can see the names of the events, the status of each of them, the Payload attached, and whether any errors occurred.

See the details about the Payload by clicking the Show button.

Please keep in mind that these Logs will be automatically deleted after 30 days.

Did this answer your question?