Callback Profiles

Using the 'Callback Profiles' feature, you can create callback profiles to receive essential information and updates about various aspects such as SMS status, WhatsApp delivery status, and incoming WhatsApp messages.

This documentation will guide you through the process of leveraging callback profiles to enhance your communication capabilities.

Callback profile creation

You can create a callback profile tailored to your specific requirements. A callback profile offers a set of common options including the HTTP method to send the updates to your designated endpoint. The interface provides the flexibility to add additional HTTP headers to be included in the callback for validation purposes. To ensure content security, you can encrypt the callback information as per your preferences. Further, you can configure specific attributes within each callback profile to receive the desired information at your endpoint.

The Callback Profiles user interface simplifies the creation of channel-specific callback profiles, such as those for receiving SMS status updates. The interface provides a list of relevant dynamic variables based on the selected channel and the events. You can select and incorporate these variables into the callback profile effortlessly.

Using a callback profile ID

After creating a callback profile, a unique 'callback profile ID' is generated. You can use this callback profile ID for configurations within the UI. and in your API requests, whenever you require updates related to a specific resource (for example, a recently sent SMS).

📘

Note:

To know the channel specific information, visit the following pages.

Create a Callback profile

A callback profile creation includes the following steps.

To create a callback profile:

  1. On the profile settings drop-down list, select the Callback Profiles option.

    The Callback Profiles page appears.

  1. Click Add New.
    The Add Callback Profile page appears.
  1. In the Title field, enter the title of the Callback profile.
    You can use the Title field to search for callback profiles.
  2. From the Select Channel API list, select a channel.
    The available options are:
  • Default—No Channel Selected—This is the default option.
    Note: Select this option to create a callback not specific to any channel.
  • SMS—Callback dynamic variables and types from SMS.
  • Email—Email Gateway APIs.
  1. On selecting a channel other than the Default option, the Events for the selected channel field is enabled.
    The supported events for the channels are:
  • SMS send for SMS channel
  • Email send for the Email channel.
    The field is disabled when you select the default option.
  1. From the HTTP Method dropdown list, select the required method.

Based on the HTTP Method selection, perform the corresponding steps mentioned in the table below.

HTTP MethodDescriptionStepsExample
GETUse the GET method to retrieve information from the given server using a given URI Enter the URL Endpoint to trigger.

2. Enter the required headers as a key/value pair.
3. Add the relevant query parameters about which you want to receive information in the callback. Query parameters are specific to each given callback profile type.
As an example, see:
https://developers.kaleyra.io/docs/create-callback-profile-for-sms.
https://webhook.site/93e95c0d-53eb-4960-b628-6a03cb672946
POSTUse the POST method to send data to the server.1. Enter the URL Endpoint to trigger.
2. Enter the required headers as a key/value pair.
3. Provide the request body in any one of the four body types—XML, JSON, HTML, or Text.
https://webhook.site/93e95c0d-53eb-4960-b628-6a03cb672946,
"body":{"name":"name","phone":"<whatsapp_number>","address":{"formatted_address":"<address.formatted_address>" }
PUTUse the PUT method to replace all current representations of the target resource with the uploaded content.
This option is currently available only for chatbot.
1. Enter the URL to trigger.
2. Enter the required headers as a key/value pair.
3. Provide the body in JSON.
https://webhook.site/93e95c0d-53eb-4960-b628-6a03cb672946
"body":{"name":"Ray"}
DELETEUse the DELETE method to remove all current representations of the target resource given by a URI.
This option is available only for chatbot.
1. Enter the URL Endpoint to trigger.
2. Enter the required headers as a key/value pair.
https://webhook.site/93e95c0d-53eb-4960-b628-6a03cb672946
  1. Click the Enable Encryption toggle button. The fields related to encryption are displayed.
  1. In the Headers field, enter values as Key-Value pairs.
    Use the Header fields to include additional information to the HTTPS request generated from Kaleyra to your system.
    For example, https://developers.kaleyra.io/docs/create-callback-profile-for-sms
  • Use the Headers field for authentication purposes using the API-KEY.
  • Use the Headers field to indicate how the callback response should be presented using the content_type.
  1. Click the Enable Encryption toggle button. The fields related to encryption are displayed. This is an optional field.
    For more information on encryption, refer to: Callback Encryption.
  2. Click Enable Callback Required Options toggle button.
    This option can be useful for chatbot services.

📘

Note:

To know more about the callback advanced authentication feature, see Callback Advanced Authentication.

  1. Click Test to send a callback to your endpoint based on the configuration just set in the callback profile to see if the callback is working as expected.
  2. Click Save.
    The saved profiles are listed on the Callback Profile page. You can filter the data on the listing page with Callback Profile Name, HTTP Method, and Created Date range for accurate results.

📘

Note:

Each Callback profile created has a unique ID (as shown in the following image) that is used in the APIs to trigger the callback.

Callback Reports

Kaleyra.io enables you to get automated Callback reports through mail. If you enable the Callback Report, then you get an email with the count of all failed and delivered callbacks with the selected frequency.
You have the option to enable the Callback Report from the Notification page in Settings. After successfully enabling the Callback Report, you get the email based on the selected frequency (daily, weekly, or monthly).

To know about how to enable the Callback Reports, see: Callback Reports.