Adobe Journey Optimizer messaging
This guide explains how to enhance your customer journey strategy with Infobip channels to send Infobip messaging directly from the Adobe Journey Optimizer workspace.
Engage customers throughout their journey with Adobe Journey Optimizer and Infobip SMS:
- Send SMS from Adobe Journey Optimizer and Automate SMS campaigns within your customer journey workflows
- Complementary channel to other touchpoints integrating SMS with various channels
- Personalized and targeted messaging for individual customers based on preferences, behavior, and journey stage
- Two-Way Communication so that customers can respond and engage with your brand easily with real-time conversations, feedback, support, and surveys
- Real-time reporting and analytics to understand what happened with what message at every step of the customer journey
If you are using SMS, you can use the Adobe Journey Optimizer integration (opens in a new tab), a native integration with the Infobip SMS platform, which enables seamless integration with any use case to build a comprehensive and impactful customer experience. For more information about configuring the SMS channel, see the Adobe Journey Optimizer SMS configuration documentation (opens in a new tab).
You can also use messaging from other channels out of Adobe Journey Optimizer using custom actions. If you are using another channel, see the Set up examples for different channels section for details.
What you will need
- An Infobip account. If you do not have Infobip account, you can create one (opens in a new tab).
- Adobe Journey Optimizer account
Follow the steps below to setup actions and use them in Journeys.
Set up custom action to send a message
The following section describes examples of how to send messages from any channel using custom action in Adobe Journey Optimizer.
Actions use API calls to send messages. You can also add query parameters to the call, for example, using ?piIntegrator=89&piPlatform=194n
.
Create new action
To create an action:
- Go to Administrations > Configurations in left sidebar.
- On the Actions tile, click Manage to create new action. You see a list of all existing actions.
- Click Create Actionin the top right corner. You see a complete setup form on right side of the page.
- Once you open a form for setup, you need to define the following:
- Enter a name for the action, stating clearly for which purpose this action is being used. This example includes a channel and use case with the name: SendIBMessage.
- In the Description, provide more details about the reason for using this action.
- Go to the Infobip web interface and from the home page, copy the API Base URL.
- In the URL Configuration section, past your copied API Base URL into the URL field. For the Method, this must be POST. See Set up examples for different channels for the URLs for alternative channels.
- In the Authentication section, select Type as API key, and copy the Infobip API key inside the
apiKey
field. You can find the API key under Manage API Keys (opens in a new tab) on the Infobip web interface home page.
Define payload
Once you define basic information like API URL, authentication, and so on, you can proceed to define the payload for this action
- In the Action parameters section, click Edit payload.
- You see the Field configuration window, and you should paste the payload and click Save.
- All fields should be constants and predefined inside the payload except the
to
field.
When you save your action, it is available to be used in Journeys. Once it's being used in at least one Journey, you won't be able to edit the content of payload.
Action inside Journey
Once you define events used as an entry point in a Journey, from Actions, you can select any of the actions you created for sending Infobip messages.
Pull the action on to the canvas, click on it, and then define the TO source that was defined as a variableinside the payload. TO should be mapped to any field containing the customer's mobile phone.
Set up examples for different channels
Depending on the channel that you want to use for sending messages, change the URL under URL configuration and payload. The only variable existing in the payload should be to (the same as for SMS).
The following table shows the URLs and example query parameters for each channel.
Channel | URL |
---|---|
MMS | https://api.infobip.com/mms/1/advanced?piIntegrator=89&piPlatform=194n |
https://api.infobip.com/whatsapp/1/advanced?piIntegrator=89&piPlatform=194n | |
Viber | https://api.infobip.com/viber/1/advanced?piIntegrator=89&piPlatform=194n |
MMS payload example
{
"messages": [
{
"destinations": [
{
"to": "41793026727"
}
],
"from": "InfoMMS",
"messageSegments": [
{
"text": "This is a sample message"
},
{
"contentType": "image/jpeg",
"contentId": "320px-Depth_of_field_Cat.jpg",
"contentUrl": "https://upload.wikimedia.org/wikipedia/commons/thumb/6/60/Depth_of_field_Cat.jpg/320px-Depth_of_field_Cat.jpg"
}
],
"title": "This is sample subject"
}
]
}
WhatsApp payload example
Depending on the template you want to send (text or media) find the appropriate payload on the WhatsApp API Docs (opens in a new tab).
{
"messages": [
{
"from": "441134960000",
"to": "441134960001",
"messageId": "a28dd97c-1ffb-4fcf-99f1-0b557ed381da",
"content": {
"templateName": "template_name",
"templateData": {
"body": {
"placeholders": [
"Placeholder Value 1"
]
}
},
"language": "en_GB"
},
"callbackData": "Callback data",
"notifyUrl": "https://www.example.com/whatsapp",
"smsFailover": {
"from": "InfoSMS",
"text": "SMS message to be sent if WhatsApp template message could not be delivered."
}
}
]
}
Viber payload example
This example shows only if you want to send a Viber text message with a button. For other URLs and payload examples, see the Viber API Docs (opens in a new tab).
{
"messages": [
{
"from": "ACCOUNT-123",
"to": "441134960001",
"content": {
"text": "Some text",
"button": {
"title": "Click on me!",
"action": "https://www.infobip.com/"
}
},
"callbackData": "Callback data",
"trackingData": "Tracking data",
"label": "PROMOTIONAL",
"smsFailover": {
"from": "SMS Sender Number",
"text": "Failover message text",
"validityPeriod": 2,
"validityPeriodTimeUnit": "HOURS"
}
}
]
}