ChangelogBook a demoSign up

Sinch MessageMedia

Activate your full customer dataset for SMS and WhatsApp campaigns. Keep contacts and audience lists in Sinch MessageMedia in sync with the data your marketing team relies on, so every send is targeted at the right people with the right context.

Supported syncing

Sync typeDescriptionSupported sync modesAPI reference
ContactsUpsert contact records (phone numbers and attributes) into Sinch's contact directory.UpsertContacts API
Contact listsSync Hightouch audiences into long-lived Sinch contact lists.Add, RemoveContact lists API

For more information about sync modes, refer to the sync modes docs.

Connect to Sinch MessageMedia

To connect Sinch MessageMedia to Hightouch you need an API key and API secret from your Sinch HUB account. Hightouch authenticates each request with HTTP Basic auth.

  1. Go to the Destinations overview page and select Add destination.

  2. Select Sinch MessageMedia from the destination catalog.

  3. Enter the following credentials, then select Continue:

    • API key: the API key from your Sinch HUB account.
    • API secret: the API secret from your Sinch HUB account.

The destination targets the Sinch MessageMedia HUB Contacts API (api.messagemedia.com). It does not currently authenticate against the Sinch CEP Campaigns API hosts.

Sync configuration

Sync contacts

Upsert contact records into your Sinch contact directory. Each row in your model becomes a contact identified by phone number.

Sync mode

Contacts syncs run in Upsert mode. Hightouch creates new contacts that aren't already in Sinch and updates existing contacts when fields change.

Sinch's HUB API returns a 409 conflict if a contact's phone number or alias is already in use by a different record. Hightouch surfaces these conflicts as rejected rows in the Live debugger rather than aborting the sync.

Record matching

Map a model column to Phone number (msisdn). Sinch matches contacts by phone number, in international format (+E.164).

Channel configuration

Sinch contacts each have one or more channels. Hightouch sends the mapped phone number on every row's primary channel using the type and subscription state configured here:

FieldDescription
Channel typeThe channel to associate with the phone number. Choose SMS (default) or WHATSAPP. Sinch's account-level validator rejects other values.
Default subscription stateThe subscription state applied when a new contact is created. Choose SUBSCRIBED (default) or UNSUBSCRIBED.

Field mapping

Map source columns to Sinch's standard contact fields:

Destination fieldTypeNotes
First namestring
Last namestring
AliasstringMust be unique across your Sinch account. Duplicate aliases return 409.
Date of birthdate
Countrystring
Statestring
Locationstring
Notestring

To send fields that aren't in this list, configure them as Custom fields below.

Custom fields

Map model columns to custom fields configured in your Sinch HUB account. Hightouch fetches your account's custom field definitions and shows them in the dropdown — you map a source column to a specific Sinch custom field UUID.

Create the custom fields in Sinch HUB before configuring the mapping. Hightouch only lists custom fields that already exist in your account.

Sync contact lists

Sync a Hightouch audience into a long-lived Sinch contact list. Best for reusable, consented populations that drive recurring campaigns.

Contact list syncs require contacts to already exist in Sinch and to be referenced by their Sinch UUID. Run the Contacts sync first, write the returned UUIDs back to your warehouse, and then configure the contact list sync against the UUID column. Mapping by phone number is not supported because Sinch's HUB API does not currently let Hightouch look up a UUID from a phone number.

Choose a contact list

Select an existing Sinch contact list, or create a new one from the sync configuration form. Hightouch fetches your account's contact lists and lets you pick one.

Record matching

Map a model column containing Sinch contact UUIDs to Contact UUID (contact_id). Each row must contain a UUID that Sinch already knows about — populate this column from the IDs returned by the Contacts sync.

Delete behavior

Choose how Hightouch treats rows that leave your audience query results:

BehaviorDescription
Do nothing (default)Leave the contact's list membership unchanged.
Remove from listRemove the contact from the Sinch contact list. The contact itself is not deleted from Sinch's contact directory.

Tips and troubleshooting

Validate your setup

After your first sync completes:

  • Open your Sinch HUB account and search the contact directory for one of the phone numbers you synced. Confirm that the contact appears with the expected channel type, subscription state, and mapped fields.
  • For contact list syncs, open the target list in Sinch HUB and confirm the expected contacts are members.
  • Check the Live debugger for rejected rows. The most common rejections on contact syncs are 409 conflicts caused by duplicate aliases or phone numbers already attached to a different contact.
  1. Build a Contacts sync that upserts phone numbers and attributes into Sinch. Capture the returned Sinch UUIDs back to your warehouse.
  2. Build a Contact lists sync that uses those UUIDs as the record-matching identifier to drive list membership from your audiences.

Common errors

To date, our customers haven't experienced any errors while using this destination. If you run into any issues, please don't hesitate to . We're here to help.

Live debugger

Hightouch provides complete visibility into the API calls made during each of your sync runs. We recommend reading our article on debugging tips and tricks to learn more.

Sync alerts

Hightouch can alert you of sync issues via Slack, PagerDuty, SMS, or email. For details, please visit our article on alerting.

Ready to get started?

Jump right in or a book a demo. Your first destination is always free.

Book a demoSign upBook a demo

Need help?

Our team is relentlessly focused on your success. Don't hesitate to reach out!

Feature requests?

We'd love to hear your suggestions for integrations and other features.

Privacy PolicyTerms of Service

Last updated: Jul 7, 2026

On this page
  • Supported syncing
  • Connect to Sinch MessageMedia
  • Sync configuration
  • Sync contacts
  • Sync contact lists
  • Tips and troubleshooting
  • Validate your setup
  • Recommended workflow
  • Common errors
  • Live debugger
  • Sync alerts

Was this page helpful?