MessageBird

MessageBird is an SMS marketing, notification and communication service that allows users to send and receive personalized text messages.

Capabilities

MessageBird SMS supports a wide variety of capabilities as seen in the channel capabilities grid. Below is a detailed view of each capabilities.

Content Types

  • Text

    Full SupportAPI
  • Image

    Full SupportAPI
  • File

    Full SupportAPI
  • Emoji

    Full SupportAPI
  • GIF

    Full SupportAPI
  • Location

    Partial SupportAPI

Action Types

  • Link

    Full SupportAPI
  • Extension

    Partial SupportAPI
  • Buy

    Full SupportAPI
  • Postback

    Partial SupportAPI
  • Reply

    Full SupportAPI
  • Location Request

    Partial SupportAPI

Structured Messages

  • Compound Message

    Partial SupportAPI
  • Carousel

    Partial SupportAPI

Outbound Messaging

  • Notification

    Full SupportAPI

Delivery Events

Delivery events allow you to track deliveries of Sunshine Conversations messages to MessageBird by subscribing to the conversation:message:delivery:channel webhook. Sunshine Conversations also tracks user deliveries on MessageBird which let you confirm whether a message has reached the user by listening to the conversation:message:delivery:user webhook. Failures to deliver a message to MessageBird or to a MessageBird user can be detected by subscribing to the conversation:message:delivery:failure webhook.

The MessageBird message IDs associated with each Sunshine Conversations message are available in delivery event payloads in the externalMessages property.

Configuring MessageBird

Add the MessageBird integration through the Sunshine Conversations dashboard or via the REST API.

Sunshine Conversations MessageBird Dashboard Integration

After the integration, you will be provided with a webhook URL. First, you will need to create a MessageBird flow. Go to your MessageBird Flow builder, use the flow “Call HTTP endpoint with SMS” and give it a name.

MessageBird Flow Builder Call HTTP endpoint with SMS

On the next page, select the desired number on the right of the screen under “Incoming SMS” and click “Save”.

MessageBird Flow Builder Incoming SMS

Then, click on the “Forward to URL” bubble and select the method “POST”. In the URL field, you will need to provide the webhook URL provided by the dashboard. If you used the REST API to create the integration, you will need to use the webhookSecret from the response to write the following with the respective values to your integration: https://app.smooch.io/api/messagebird/webhooks/{appId}/{integrationId}/{webhookSecret}. If you are a licensed Zendesk customer, use https://<subdomain>.zendesk.com/sc/api/messagebird/webhooks/{appId}/{integrationId}/{webhookSecret}.

Select “application/json” for the “Set Content-Type header” field.

Click “Save”, then “Publish changes” on the upper right corner.

Messagebird Flow Builder Forward URL

If you integrated MessageBird via the dashboard, confirm your integration.

 MessageBird Dashboard Integration Confirm

Outbound messaging

To initiate a conversation with a user for which you know their phone number, you can use the Notification API. For more information on outbound messaging, consult the guide.

Initiate a conversation with a user over SMS by making a request to the Notifications endpoint:

curl https://api.smooch.io/v1.1/apps/5963c0d619a30a2e00de36b8/notifications \
     -X POST \
     -d '{
          "destination": {
               "integrationId": "5e1f438bf99fb467810c0ab9",
               "destinationId": "+15145555333"
          },
          "author": {
               "role": "appMaker"
          },
          "message": {
               "type": "text",
               "text": "This is a sample notification."
          }
     }' \
     -H 'content-type: application/json' \
     --user 'keyId:keySecret'