Brevo

Brevo (formerly Sendinblue) is a cloud-based email marketing solution for businesses that want to automate email marketing campaigns with a limited budget. The solution includes email marketing, transactional email, marketing automation, customer relationship management, SMS marketing, and more.

Data integration: Skyvia supports importing data to and from Brevo, exporting Brevo data to CSV files, replicating Brevo data to relational databases, and synchronizing Brevo data with other cloud apps and relational databases.

Backup: Skyvia Backup does not support Brevo.

Query: Skyvia Query supports Brevo.

Establishing Connection

You need the API Key to create a connection with Brevo.

Getting Credentials

To get your API Key, perform the following steps:

  1. Sign in with Brevo.
  2. Click your user icon in the top right corner.

    Menu

  3. In the drop-down list, click SMTP & API and switch to the API Keys tab.

    Generate API Key

  4. Click Generate a new API key.
  5. Enter the API key name and click Generate.
  6. Copy your API Key and store in a safe place. Note that this is the only time you can see it, and you will need to generate a new one if you lose it.

Brevo Account page

Creating Connection

Enter the obtained API Key to the corresponding box in the Connection Editor.

Connection Editor window

Additional Connetion Parameters

Suppress Extended Requests

The Statistics_TransacAttributes field in Contacts object and DynamicList, CreatedDate, StartDate, EndDate, CampaignStats fields in ContactLists object are additionally processed with extended requests. Enable Suppress Extended Requests to reduce the number of API calls and increase the speed of processing Contacts and ContactLists objects. Note that enabling this parameter will disable the incremental replication of the ContactLists object.

Use Custom Fields

Use Custom Fields parameter defines whether Skyvia will process the custom fields of the Contacts object. Enable it to Insert and Update custom field values. Brevo has precreated Email, Lastname, Firstname, and SMS custom fields. If you disable Use Custom Fields you will get access only to the fields listed previously and you will be able to find them with the Attribute_ prefix. If you enable Use Custom Fields parameter you will be able to work with all customs fields with regular naming.

Connector Specifics

Object Peculiarities

Read-only objects

The following Brevo objects are read-only: TransactionalEmailActivity_AggregatedPerDay, SMSActivity_AggregatedPerDay, SMSActivity_UnaggregatedEvents, and TransactionalEmailActivity_UnaggregatedEvents.

BlockedDomain

The BlockedDomains object has a single Domain field. It contains the list of all the blocked domains in JSON array format: ["example1.com", "example2.com"].

To extend the list of blocked domains, use the INSERT operation. To remove the domain from the list, use the DELETE operation.

For example, your list of blocked domains looks like ["example1.com", "example2.com"]. Suppose you want to block one more domain with the example3.com value. Use the INSERT operation in the integration and map the Domain field to the example3.com value. As a result, your list looks like ["example1.com", "example2.com", "example3.com"].

BlockedContacts

The BlockedContacts object does not have an Id field. The primary key is the Email field.

Contacts_Attributes

The Contacts_Attributes object does not have an Id field. The primary keys are the Name and Category fields.

Contacts

To insert data to this object, map either the Email field or the SMS nested attribute in the Attributes field. For example, {"SMS":"012345678910"}.

The ListIds field stores the identifiers of all the lists the contact belongs to in the JSON array format: [1,2,3].

To extend the array of IDs, use the UPDATE operation in the integration and map the ListIds field to the value you want to add. For example, the ListIds field contains the value [1,2]. Suppose you want to add 3 to the array. To add an item to the list, use the UPDATE operation and map the ListIds field to the [3] value. As a result, the ListIds value becomes [1,2,3].

To delete the specific IDs from the array, map the UnlinkListIds field to the value you want to remove. For example, if you want to remove [5] from the [3,4,5] ListIds array, map the UnlinkListIds to [5]. As a result, the ListIds value becomes [3,4].

Activity Objects

The TransactionalEmailActivity_AggregatedPerDay, SMSActivity_AggregatedPerDay, SMSActivity_UnaggregatedEvents, and TransactionalEmailActivity_UnaggregatedEvents objects are read-only.

When you query the TransactionalEmailActivity_AggregatedPerDay and SMSActivity_AggregatedPerDay objects, the result contains data for the last ten days by default. To get data for another period, set the filters by the startDate and endDate fields. The period specified in the filters must be at most 30 days.

When you query the SMSActivity_UnaggregatedEvents and TransactionalEmailActivity_UnaggregatedEvents objects, the result contains data for the last 30 days by default. To get data for another period, set the filters by the startDate and endDate fields.

DML Operations Support

Skyvia supports the following DML operations for Brevo.

Operation Object
INSERT, UPDATE, DELETE Companies, ChildrenAccounts, Contacts, ContactsAttributes, Contacts_Folders, Contacts_Lists, Deals, Email_Campaigns, Senders, SMS_Campaigns, Tasks, Templates, WebhooksMarketing, WebhooksTransactional, WhatsAppCampaigns
INSERT, DELETE Domains, BlockedDomains
INSERT, UPDATE CouponCollections
INSERT SenderDomains_ChildrenAccounts
DELETE BlockedContacts

Incremental Replication and Synchronization

Skyvia supports Incremental Replication for the following Brevo objects: Companies, Contacts, Contacts_Lists, ContactSegments, Email_Campaigns, SMS_Campaigns, Template, WebhooksMarketing, WebhooksTransactional, WhatsAppCampaigns.

Incremental Replication tracks the new records only for the Deals, Tasks, Categories, and CouponCollections objects.

Skyvia supports Synchronization for the following Brevo objects: Companies, Email_Campaigns, SMS_Campaigns, Template, WebhooksMarketing, WebhooksTransactional, WhatsAppCampaigns.

Stored Procedures

Skyvia represents part of the supported Brevo features as stored procedures. You can call a stored procedure, for example, as a text of the command in the ExecuteCommand action in a Target component of a Data Flow or in Query.

SendEmailCampaignImmediately

The following command sends an email campaign immediately based on campaign identifier.

call SendEmailCampaignImmediately(:campaignId)

SendEmailCampaignTestList

The following command sends the email campaign to the testing list of emails.

call SendEmailCampaignTestList(:campaignId,:emailTo)

PARAMETER NAME DESCRIPTION
CampaignId Campaign identifier
EmailTo List of campaign testing emails in the array format. For example, [“[email protected]”,”[email protected]”]

UpdateEmailCampaignStatus

Use the following command to update the campaign status.

call UpdateEmailCampaignStatus(:campaignId,:status)

PARAMETER NAME DESCRIPTION
CampaignId Campaign identifier
Status The valid status values are suspended, archive, darchive, sent, queued, replicate, replicateTemplate, draft. The replicateTemplate status is available only for template type campaigns.

SendSmsCampaignImmediately

The following command sends an sms campaign immediately based on campaign identifier.

call SendSmsCampaignImmediately(:campaignId)

SendSmsCampaignTestList

The following command sends the email campaign to the testing list of emails.

call SendSmsCampaignTestList(:campaignId,:phoneNumber)

PARAMETER NAME DESCRIPTION
CampaignId Campaign identifier
PhoneNumber Mobile number of the recipient with the country code. This number must belong to one of your contacts in Brevo account and must not be blacklisted. For example, 33689965433

UpdateSmsCampaignStatus

Use the following command to update the campaign status.

call UpdateSmsCampaignStatus(:campaignId,:status)

PARAMETER NAME DESCRIPTION
CampaignId Campaign identifier
Status The valid status values are suspended, archive, darchive, sent, queued, replicate, replicateTemplate, draft. T replicateTemplate status is available only for template type campaigns.

Supported Actions

Skyvia supports all the common actions for Brevo.