Overview: Inbound webhooks (Console)
Console > Integrations > Overview: Inbound webhooks (Console)
This article explains the Inbound Webhook workspace in Console.
Overview
The Inbound Webhook workspace in Console (Account > Integrations > Inbound Webhook).
In Console, the Inbound Webhook workspace is where you create and configure inbound webhooks. An inbound webhook is a way of sending data from an external CRM, API, or other application directly to a workflow for processing.
A webhook is a tool that sends data from one application to another. We call them inbound webhooks because the system, via the webhook, receives information. In other words, the information is inbound to your Avaya.cx account.
When an inbound webhook receives data, it triggers a workflow to run. The workflow will then run and process the data to meet your needs.
Types of inbound webhook
Inbound webhooks are classified by type. The type of inbound webhook determines the format used to send data to us. There are four types of inbound webhooks:
Continue reading the subsections below to learn more about each type of inbound webhook.
See the How to set up an inbound webhook section for links to articles that walk you through the inbound webhook setup process.
Salesforce inbound webhooks
A Salesforce inbound webhook is an inbound webhook that receives data from Salesforce. You can configure Salesforce to either automatically or manually send data to your Avaya.cx account based on a number of triggers, like:
Whenever a record is created
Whenever a record is updated
Whenever a record is created or updated
Whenever a record is deleted
Setting up a webhook between Salesforce and your account requires some configuration.
Zendesk inbound webhooks
A Zendesk inbound webhook is an inbound webhook that receives data from Zendesk. You can configure triggers and automations in Zendesk that automatically send data to your Avaya.cx account whenever something happens in Zendesk. For example, when a ticket is created in Zendesk, you can configure Zendesk to use the webhook to automatically send data to your account.
Setting up a webhook between Zendesk and your account requires some configuration. To learn more about how to do this, see the article: Tutorial: Setting up an inbound webhook from Zendesk.
CSV inbound webhooks
A CSV inbound webhook is an inbound webhook that receives data in the form of a CSV (comma separated value) file. This type of webhook is most useful when you want to import bulk data from another application. When you use a CSV inbound webhook, the workflow runs for each line in the CSV file.
As an example, let’s look at the sample CSV file below.
firstName,lastName,favoriteColor
Isaac,Newbury,blue
Bennie,Franks,green
Stefan,Hawkston,yellow
Example of a CSV file
For a simple example, suppose you wanted to create a workflow that would send an SMS containing someone’s name and favorite color. The headers indicate the names of variables you could put in the workflow.
If this file were sent to a workflow, it would run three times – once for each row (excluding the header). The following is an example of the text that could be configured in the Send SMS workflow module:
“Hi! My name is {{firstName}} {{lastName}}. My favorite color is {{favoriteColor}}.
These are the text messages the workflow would produce:
“Hi! My name is Isaac Newbury! My favorite color is blue.”
“Hi! My name is Bennie Franks! My favorite color is green.”
“Hi! My name is Stefan Hawkston. My favorite color is yellow.”
This is useful for putting large amounts of data into your Avaya.cx account.
For an example of a real world use case: Suppose you have a bulk list of call information. You want to create a list of outbound calls in a queue for agents to handle. You could use the inbound webhook to import a CSV of call information into a queue via a workflow.
To learn more about setting up an inbound webhook for CSV files, see the article: Tutorial: Setting up an inbound webhook for CSV
Generic inbound webhooks (JSON / XML / form-data)
Finally, you can use a generic inbound webhook as an alternative to the options listed above. A generic inbound webhook accepts data formatted in JSON, XML, or form-data.
Below are three examples of sample data that could be sent to your Avaya.cx account via an inbound webhook. They are:
JSON
XML
Form-encoded data
You can configure the workflow to use variable replacement to take data sent via the inbound webhook for use in the workflow.
{
"firstName": "Isaac",
"lastName": "Newbury",
"favoriteColor": "Blue"
}
Example of JSON
<firstName>Isaac</firstName>
<lastName>Newbury</lastName>
<favoriteColor>Blue</favoriteColor>
Example of XML
<form method="POST" action="https://sandbox-hooks.edifylabs.net/inboundWebhooks/012345">
<input type="hidden" name="garbo" />
<input type="hidden" name="edifyRedirectUrl" />
<input type="text" name="firstName" />
<input type="text" name="lastName" />
<input type="text" name="favoriteColor" />
</form>
Example of form-data
Note: The garbo field is a honeypot and should be left blank. If the edifyRedirectUrl value is provided, we will perform an HTTP redirect after receiving the event.
To learn more about setting up a generic inbound webhook for JSON and XML, see the article: Tutorial: Setting up a generic inbound webhook
How to set up an inbound webhook
Click any of the links below to follow tutorial articles on how to set up inbound webhooks.
Tutorial: Setting up an inbound webhook from Salesforce (article coming soon)
Visual breakdown
Inbound webhook configuration list
+ New Inbound Webhook: Press the New Inbound Webhook button to create a new inbound webhook.
Name: The Name column contains the name of the inbound webhook configuration
Type: The Type column contains the type of the inbound webhook configuration. There are four types of inbound webhook:
Salesforce
Zendesk
CSV
Generic
Created By: The Created By column contains who created the inbound webhook configuration.
Created At: The Created At column contains when the inbound webhook configuration was created.
Updated By: The Updated By column contains who last updated the inbound webhook configuration.
Updated At: The Updated At column contains when the inbound webhook configuration was last updated.
Enabled: The Enabled column shows whether the inbound webhook configuration is usable. A green check mark indicates that it’s usable while a red X indicates that it’s not.
URL: The URL column contains a button to copy the URL for each inbound webhook. This is the URL you use to send data to your Avaya.cx account.
Inbound webhook configuration page
+ New Inbound Webhook: Click the New Inbound Webhook button to create a new inbound webhook.
Edit: Click the Edit button to make changes to the inbound webhook configuration.
Name: The Name field contains the name of the inbound webhook configuration
Type: The Type field contains the type of the inbound webhook configuration.
Routing Type: The Routing Type field is always “workflows”. It’s not possible to change this field.
Routing Data: The Routing Data field is where you choose which workflow you want to run when the inbound webhook receives data.
Routing Version: The Routing Version field is where you choose the version of the workflow you want to run.
Redirect URL: The Redirect URL field is where you want users of a web form to be redirected after submitting the form via inbound webhook.
URL: The URL column contains a button to copy the URL for each inbound webhook. This is the URL you use to send data to your Avaya.cx account.
Enabled: The Enabled column shows whether the inbound webhook configuration is usable. A green check mark indicates that it’s usable while a red X indicates that it’s not. In editing mode, this field appears as a checkbox.
Template: The Template field contains a basic example of how the webhook could be used. The contents of this container vary based on the webhook type.