Webhooks within your bots (New Web App)

Webhooks within your bots (New Web App)

Overview

Webhooks allow you to use real time information within your Webio bots.  This can be used to provide customers' up to date information within the conversation or to configure logic decisions within your bot based on information provided from your internal systems. 
Idea
Quick Trick: Add in <<fieldnames>> within your bot where you want the retrieved value to appear.  
Alert
Endpoints not integrated yet?  Integrate Endpoint.
You can add in real-time values within your message content or within a logical branch condition. 

Real Time Value In Message Content

Click into the step on your bot that you want to include real-time value(s).   Type the message content in the Outgoing message box, where you want to insert a real-time value use the <<fieldname>> . Let's look at an example (Inbound).
I want to send a message that contains a real-time value for the repayment amount & currency that is arranged and the customer name. I want to get these values in real-time from my internal systems using the webhook endpoint set within my Organisation. First I need to check what the field names are within my internal system, for this example these are arrangementamount, currency and fullname. I can now build these values into the outgoing message where I want them to be inserted. 



When this message is triggered by the bot, a webhook request for these values will be sent to to the endpoint in my organisation.  The values returned will be populated into the message and sent before the bot moves to the Next step.  If the webhook request isn't successful, the bot will go down the Failure Step route or simply display "null" for value not retrieved.

Using real-time values to make logical decision

You can add in real-time values to logical branch steps and route the bot dependent on the response returned. Add conditions into your logical branch steps using the <<value>> to compare system values with real-time ones. 
Let's check the build from the previous example.  I want to ask a customer to provide me their Unique Customer UID and the verify that this matches that in our internal systems. The first step I need is a listening step to gather the customer UID from the customer.  The Value To Gather is important here as this is the field name I am going to compare against shortly.  In this example I've called it "Reference".  You can call yours what you want, but make sure it is different to the real-time value name you are going to be requesting. Store the gathered value as a Customer ID (this would then be passed across in the request CustomerUID value). 

I then create another step that uses a logical branch condition to compare the value I have gathered from the Listening Step #Reference# to the real-time value I want to request from my internal systems <<customerUID>>. Select the equal logic then enter the real time value field name in the Value box.  Finally I tell the bot where to go if this condition matches and  save. 
Warning

Please note that referencing real-time field names in the FIELD section of a logical branch is currently not supported. Logical Bran FIELD supports static field names or system values, such as current hrs, day etc. However, it is possible to compare (When using Equal/Doesn't Equal) uploaded or gathered static field names (Selectable in the FIELD section with real-time values populated in the VALUE field of a logical branch. Ensure you include #Fieldname# for static values or <<Fieldname>> for real-time ones.


Now, whenever a customer returns their Customer Unique Identifier, the system will display the information associated with that ID

Info

The process outlined above is typically used for inbound, campaign-initiated conversations where the customer UID is initially null. However, it can be requested through the listening step and then compared via logical branching against the one stored in your internal system.

For outbound campaigns, you only need two field names in your campaign file: one for the phone number and another for the customer UID. When setting up the campaign, ensure that the field name where the customer UID is stored is correctly mapped to "Customer ID." Once this is done, any additional parameters (stored against that Customer UID) you request will come directly from your internal system, eliminating the need to store them in the campaign file. 



    • Related Articles

    • Webio Webhook - What it does (New Web App)

      Overview Using Webio's webhook you can configure your endpoints within your Webio organisation to post or retrieve data. Identifying the request is from us To generate the JWT header you need the api key from your Webio organisation, your secret key ...
    • New Releases

      This article will be continuously updated with the latest release information. 19/05/25 - Reopen closed conversations Closed conversations can now be reopened from the conversation screen on newapp.webio.com 09/04/25 - Attachments on Webchat ...
    • Listening Steps To Gather Data (New Web App)

      Overview The Listening steps can be used to gather responses and store them in either Data fields or in Customer ID fields. If you store the response as a Customer ID then that value will display in the conversation screen and in reports and webhooks ...
    • Quick Start Resources

      Quick Start Resources: Bots Step Types overview Flow Builder & Step types (webio.com) Build a bot on the new Web App How To Create Outbound Bots (webio.com) How To Build An Inbound Bot (webio.com) Build a bot on the classic Web App Creating Simple ...
    • API and Webhooks

      Overview Webio blended conversations allow you to seamlessly communicate between your clients with human or automated agents. Connecting these conversations with your internal systems provides richer conversations and slicker processes. For a better ...