Jet has a webhooks system that is available for a custom build to push data out to an API endpoint. This can be used for custom integrations with CRMs, Phone Systems, Reporting software & databases. 

Contents

Overview

Authentication

Webhook Push Timing

Available Fields

Overview

When using the Webhooks setup, we will send the data through to your API endpoint as JSON data, but there are some limitations with the fields available and the field contents (eg: all data is provided in UTC time).
It is also important to understand that you will need somebody on your end that is confident to take the data we are sending and mediate that into what you are looking for and where this should show up in the system of your choice. For example, how would this data display in your chosen system, if this is sent through to a CRM will this be against a contact or an organisation, how would the data match against your records, etc.
 

Our webhooks feature is built custom to your needs, and a consultation with a Jet specialist is required for setup.

If you would like to arrange a setup consultation for this feature, please Contact Support.

Webhook Authentication Methods

If you choose to secure your endpoint, we support the following authentication methods


OAuth 2.0

OAuth is Jet's preferred method of authentication with our webhooks. The requirements for authenticating via OAuth are as follows;

Header

A simpler method of authentication can be achieved by specifying a hardcoded value in the Header object of the webhook request. Jet supports the option to add a key:value pair to the request header which can be used to authenticate against.

For example, including a static access token using the Authorization header.

Webhook Push Timing

Webhooks are available to be pushed at various stages throughout a call event. Different information is available at the various push stages. The available fields in each push can be viewed here.
The available pushes are;

Call Start (Inbound)

The call start push is triggered as soon as the Jet phone number has been dialled by the calling party. This trigger is typically used for live push integrations where agents are required to view the caller information.

An example of typical call start data is below

Call Answered (Inbound)

The call answered push is triggered once Jet's system receives an answered status. This can be triggered either from an agent answering the phone call, or from a phone systems IVR or Queue sending back and answered signal.

An example of typical call answered data is below

Call End (Inbound)

The call end push is triggered once a call has been terminated either by the calling party or the answering party. The call end push is typically used in addition to the call start or answered in order to provide more information on call duration & handling, or if there is no live push required & the webhook is primarily being used for reporting. 

Call End (Outbound)

The outbound webhook is triggered after an outbound call has been made through a Jetphone or Cloud Mobile phone user. This is typically used by customers who need to log calls in a CRM system.

Available Fields

 
 
Inbound Telephony Data
Field Name Call Start Call Answered Call End Description
callsessionid Unique ID for the phone call
accountnumber Jet Interactive Account Number
callstarttime Timestamp of when the call started
originnumber The phone number who started the call
phonenumber The service number
servicename The service name of the service number
servicegroup The service group of the service number
numbertype The number type of the service number
dialwidgetname   The name of the last dial widget in the callflow
answeringpoint   The phone number who answered the call
dialstatus   The status of the call
queuename   The name of the queue the call entered
extensionnumber
  The Jet Phone extension number
extensionname   The Jet Phone extension name
dialtime   Timestamp of when the answering point started to ring
queuedtime   Timestamp of when the call was queued
geolabel   The label of the geo routed leg
ivrprompts   Aggregation of all keyed ivr values
ivrlabels   Aggregation of all labels of ivr values
duration     Total call duration in seconds
callendtime     Timestamp of when the call ended

Web Session Data

Field Name Call Start Call Answered Call End Description
session_id     Y Unique session ID relating to the call conversion
page_view_id     Y Unique id for the specific page viewed
tracking_site_code     Y Tracking code (not applicable unless using multiple setups)
user_id     Y A unique user ID for each web session a user has
attributes     Y A JSON string containing all of the attribute fields
origin_session_id     Y The web session ID that a call conversion is associated with
landingPageKeywords     Y The keywords for CPC advertising that were used to reach this page
googleAnalytics.clientId     Y The ID that is generated from the Google Analytics code and been attached to this record's online session
referrerUrl     Y The address of the webpage where a person clicked a link that sent them to your page.
landingPageUrl     Y The address of the webpage a person started from for their call
channel     Y The channel type for how a user reached your site and converted, e.g PAID, DIRECT, ORGANIC
source     Y The origin of your traffic, such as a search engine (for example, google) or a domain (example.com)
medium     Y The general category of the source, for example, organic search (organic), cost-per-click paid search (CPC), web referral (referral)
internalReferrer     Y True or false flag on whether a user was referred internally from the same domain
landingPageDomain     Y The domain for where the tracking code is installed and registered a session
referrerDomain     Y The domain of the website that has referred the traffic to your domain
keywords     Y The search words a user has entered that have made them see your PPC/CPC advertising and clicked the specific link
campaign     Y The marketing grouping you are specifically tagging to your various Advertisement URLs
gclid     Y The ID of the Google Ads click
 
 
Outbound Call Data
Field Name Call End (Outbound) Description
call Start Time Y Timestamp of when the call started
Call End Time Y Timestamp of when the call ended
Called Number Y Number that was dialled by agent
Calling Number Y Caller ID of the agent who placed the call
Calling Extension Y Extension that placed the call
Dialstatus Y Answered status of call
Duration Y Duration of call in seconds