Send emails with Batch


Batch makes it easy to send emails based on user behavior on every platform. Here is an overview of the implementation steps:

  • Create a Project
  • Collect email addresses
  • Collect data
  • Manage profiles privacy

Profile explainer

Create a Project

Reach out to your Customer Success Manager to create a Project.

With Projects, you can group all your different platforms, such as your website, iOS app, and Android app, into a single entity. This makes it easier for you to manage data across all your platforms.

In the past, data was siloed between different platforms. However, Projects remove this limitation by introducing Profiles. Profiles centralize user data and events from multiple sources, such as Apps, Websites, and APIs, in a single place based on a custom user ID.

Each Project is associated with a unified user base made up of Profiles. When a user interacts with any of the platforms within a Project, their actions are fed into the associated Profiles. For example, this allows you to trigger automated emails based on user behavior, regardless of which platform the user used.

Profiles can also store recipients as a user's email address and email subscriptions, making it easy for you to send targeted and relevant communications to your customers.

Overall, using Projects and Profiles helps you to provide a more cohesive experience for your customers by managing data across multiple platforms in a single place.

Collect email addresses

Batch supports importing your known email subscribers in three ways:

Send data on Profiles

You can send attributes and events to enrich Profiles and allow better targeting and orchestration for your communications.

Profiles are compatible with "mobile only" implementations which are based on apps API keys and not Project API keys. You don't need to overhaul your Batch implementation to start sending emails with Batch if you were already sending user data to Batch.

Compatibility flows will be activated for your account by your technical contact.

Server side data

Custom Data API

Use the Custom Data API to send Profiles attributes & tag collection. You can find its documentation in the API section.

If you use the overwrite:true option in the Custom Data API, the API call will not update the Profile data. However, it will still update you user's data at an app level.

Trigger Events API

Use the Trigger Events API to track events for Profiles and trigger automations based on these events.

You can find its documentation in the API section.

Client side data

Setting Profile attributes from the SDK

You can set custom attributes from our SDKs on all platforms at a Profile level:

Tracking events from the SDK

You can track events on from our SDKs on all platforms at a Profile level:

All these events have the capability to trigger an email automation. They can't be used as a targeting option yet.

Privacy & Profiles

Review & delete Profiles

Profiles are compatible with the GDPR API, as well as all privacy requests made from the dashboard. To respond to privacy requests (data export and data deletion), Batch finds the Profile that matches the identifier in the privacy request and follows standard identity resolution process.

It means that when a data request is made with an Installation ID, Batch will not be able to find a Profile that holds this Installation as well as a custom user ID. To read or delete a logged in Profile (with a custom user ID), it is necessary to provide its custom user ID in the privacy request.

Inactive profiles

Profiles that have not been active for a certain period of time are classified as inactive and deleted.

What is an inactive profile?

A profile will be considered inactive if no activity is detected for it for a certain period. By default, the period of inactivity is set to 13 months. You can reach out to your Customer Success Manager to shorten this period.

Activity on a profile may be:

  • Data sent from a mobile application or website via Batch SDKs. Example: an open or a visit, change of opt-in status for push notifications, custom attribute or event tracking, etc.
  • Custom data tracking via Custom Data API or Profile API
  • User event tracking via Trigger Events API or Profile API
  • Upload or update of email subscription information via Profile API, Email Subscription API or mobile and web SDKs. Example: modification of email address, update of opt-in status for email marketing, etc.
  • Engagement events with emails received: open or click.

What data is involved?

Batch customer's user data is currently stored on two data models:

  • App centric data model

This allows you to store user data linked to a mobile application or website. This data can come from various mobile / Web SDK or API sources. It enables Push or In-App campaigns to be run on the respective applications and websites.

  • Omnichannel data model

This centralizes user data from different sources and platforms (mobile applications, websites, APIs) into user profiles. In particular, it can be used to store email data and run omnichannel campaigns. The mechanism for automatic deletion of inactive profiles only concerns the Omnichannel data model, on which we plan to use exclusively in the long term.

What is the impact of these deletions?

Once a profile's data has been deleted, it can no longer be targeted by all campaigns based on the Omnichannel data model. This implies email campaigns first, then other types of campaigns (push, in-app, SMS) that can also be operated on this model at a later date.

In the case of data stored simultaneously on the two models described above, it will remain in the app-centric data model after deletion of the profile.

If an activity takes place for a user after his profile has been deleted (e.g. a user returns to the application 14 months after his last activity), a new profile will be created for him.