Configure your API integration
Last updated
Was this helpful?
Last updated
Was this helpful?
A Chatlayer API step is available in the blocks to enable you to create bot messages based on user-specific information and other external data, and to redirect your users to different flows based on your own business logic.
You can use this solution on any platform that supports receiving and responding to HTTP requests.
The API step sends a request to your backend server.
To configure your API step:
Drop an block to your .
Click on API.
Configure your parameters. See below for more details.
You can only define a request body when your request method is POST or DELETE.
Under the Query tab, add query parameters and/or a body payload by defining key value combinations. Each key can has 3 possible value types:
text: static text.
dialogstate: select a dialog state from the dropdown. The dialog state ID will be stored as value for the key. This ID can be used to redirect the user to a certain dialog state based on your business logic when sending back the API response.
You do not need to configure the API plugin to listen for a response. This is done automatically and the API step will listen for what your API returns.
Make sure you include the correct content type in the header: content-type: application/json;
This example demonstrates one API endpoint for transferring an amount of money from an account type (regular or savings) to someone. We will redirected the user to a certain dialog state based on the transaction result.
We receive the body payload object as defined in the Chatlayer API step. If the user doesn’t have a sufficient amount of money on his account we set the next dialog state to ‘transactionNoMoney’. Else we subtract the desired amount and set the next dialog state to ‘transactionSuccess'.
As a response for the request we send the next dialogs state to redirect the user to that state and we save the amount of money and the limit of his account in his session data under the namespace account. This data can be used in that next dialog state.
As an alternative solution you could also send that chat message as a response of the API plugin requests by using the messages key.
variable: a variable. The value of the variable will be stored as value for the key. Dot and array notation are supported, for example: users[0].firstname
variable: a variable. The value of the variable will be stored as value for the key. Dot and array notation are supported, for example: users[0].firstname
In this example, representing a money transfer, we send five keys in the body payload of an HTTPS POST request to our API endpoint .
Configuration is where, if you have an API configuration in , you will see them here.
If , if the API response sends agent messages back to the user and the agent supports multiple languages, don’t forget to send the user language in the request. The user language is available in the variable locale
. Your backend service can use this language setting to send back the response in the user's preferredLanguage
.
messages
: an array of messages to send back to the user interface channel. The structure of different message types (such as text, buttons, quick replies, carousels, lists, media,etc) is available in the .