Virtual Assistants built on the XO Platform can be deployed on the Sinch Conversation API platform.
The Sinch Conversation API allows developers to create robust omnichannel messaging experiences across multiple interaction channels.
Why Sinch Conversation API?
- Provides support for message sending, conversation management, user authentication, and rich message formatting, empowering developers to deliver seamless and engaging user communication experiences.
- Offers built-in transcoding for smooth conversations across all supported channels, with optional full control over channel-specific features.
- Consolidates all conversation details into a single callback, streamlining integration with the XO Platform.
Prerequisites
- Access to the XO Platform Bot Builder. Learn more.
- A working virtual assistant on the XO Platform to test the channel enablement. Learn more.
- Enabling the Sinch Conversation API requires signing up on the Sinch developer dashboard.
To set up the channel, you must associate the VA with a Sinch app and set up the required delivery channel. The steps to complete the channel enablement are summarized below:
Step 1: Capture the Sinch Project Access keys for Authentication
Once you create an account and log in, accept the terms and conditions and create your access key.
The Conversation API uses OAuth2 tokens for authentication, which can be obtained from an OAuth2 token endpoint. To authenticate, a client_id (or KEY ID) and client_secret (or KEY SECRET) are used. You can generate new Access Keys, each with a new KEY ID and KEY SECRET, at any time.
To create an access key, follow the steps below:
- Log in to your Sinch account and navigate to the developer dashboard.
- Select Settings in the left menu and navigate to the General Settings screen.
- Select Access Keys under Settings and navigate to the Access Keys screen.
This page shows your project(s) and corresponding Project ID(s) and a list of your Access keys and the corresponding KEY IDs. - In the top left corner of your screen, next to the Sinch logo, select the desired project from the Project dropdown.
- Copy and save the Project ID of your project. Paste it into the relevant field on the XO Platform’s Sinch Configurations page. Learn more.
- Click the New Key or Create Access Key button in the Access Keys List section.
- Provide a display name for your access key in the New Access Key window, and click Confirm.
The Key is created, and the Key ID & Key Secret are generated as shown in the form below.
- Copy the Key ID and Key Secret and paste them into the relevant fields on the XO Platform’s Sinch Configurations page. Learn more.
- Click Confirm.
You are returned to the Access Keys page, where your new key is displayed in the Access key list section:
Step 2: Create An App
The next step is to create and configure a Conversation API app to enable the channel.
Follow the steps below to create an app. Alternatively, you can use API calls to create an app.
- Select Conversation API > Apps on the left menu.
- On the Conversation Apps page, click the NewApp button in the Apps section.
- In the New App form. Provide the app’s Display Name and select the region from the dropdown menu.
- Click Create.
The newly created APP is displayed in the Apps section.
- Click the App Name and go to the App Details screen.
- Copy and save the App ID displayed in the Configuration section. Paste it into the relevant field on the XO Platform’s Sinch Configurations page. Learn more.
Step 3: Configure the Webhook URL
To send and receive messages, you need to configure at least one channel using a webhook URL for your app. To configure, follow the steps below:
- Select the App created by you on the Apps page.
- Scroll down to the Webhooks section and click Add Webhook.
The New webhook form is displayed.
- In the Target type dropdown, select HTTP.
- In the Target URL field, copy and paste the WebHook URL value from the XO Platform’s Channels > Sinch > Configurations section. Learn more.
- In the Secret token field, copy and paste the value for Verify Token from the XO Platform’s Channels > Sinch > Configurations section. This token enables the webhook to validate against your chosen endpoint.
- In the Triggers drop-down, select all the triggers you want to add to the webhook.
- Click Create.
Step 4: Configure the Delivery Channel
Next, you must configure the delivery channel for the conversations with the steps given below:
- Select the app you’ve created on the Apps page.
- Scroll down to the Setup Channels section.
- Select the delivery channel you want to configure.
- To set up the required channel, click the channel listing here.
Step 5: Enable the Channel on the XO Platform
To enable the channel on the XO Platform, follow the steps below:
- Go to Deploy > Channels page and select Sinch in the Enterprise Channels section.
- Click the Configurations tab.
- Copy the relevant field values from your Sinch Conversation API app and paste them into the relevant fields as follows:
- Sinch Region Base URL: Copied in Step 3 here.
- Project ID: Copied in Step 5 here.
- Access Key Id and Access Key Secret: Copied in Step 8 here.
- App ID: Copied in Step 6 here.
- Select ‘Yes’ for Enable Channel.
- Click Save.
After enabling the channel and verifying all the configurations, you can test the new channel integration by publishing your virtual assistant. Learn more.
Message Types
Conversation API uses generic message types to send the same message to multiple channels. In cases where the channel doesn’t natively support the message type, the message will be transcoded. The supported message types include:
Message Templates
Sinch message templates are predefined, structured formats for sending recurring or standardized messages across channels like WhatsApp, SMS, and other supported platforms.
These templates ensure compliance with the channel’s messaging policies, especially for platforms like WhatsApp that require pre-approved templates for certain messages, such as notifications or service updates. Message templates can be used during virtual assistant conversations to structure the messages. The default template types include:
- Text
- Media (Document, Video, and Image)
- Location
- Interactive (Quick Reply and Call-to-action)
- Authentication
- Carousel
For additional assistance with using Message Templates and Types for your Sinch channel on the XO Platform, please contact our developer support team.
To learn more about working with messaging channels within the XO Platform, please see Channel Enablement.