Integrations / Brevo
Brevo
Email and SMS marketing and transactional email: contacts, lists and sending.
6 actions
API key
3 read3 write
Calls api.brevo.com
Connect
const conn = await setu.connections.initiate({ userId: "user_1", toolkit: "brevo" });
console.log(conn.connectUrl); // show this to your user
await conn.waitUntilActive();Permissions requested
This toolkit uses a single credential and requests no scopes.
Actions
Create contactwritebrevo.create_contactCreate a contact by email (or external id), optionally adding it to lists. With update_enabled true an existing contact is updated instead of failing.
| Input | Type | Description | |
|---|---|---|---|
email | string | Optional | Contact email |
ext_id | string | Optional | Your own id for the contact |
attributes | object | Optional | Attribute name to value, names in capitals, e.g. FNAME; attributes must already exist in Brevo |
list_ids | array of integer | Optional | List ids to add the contact to |
update_enabled | boolean | Optional | Update the contact if it already exists |
await setu.execute({
userId: "user_1",
action: "brevo.create_contact",
input: {},
});Get accountreadbrevo.get_accountGet the Brevo account's company name, login email and plan information.
No input.
await setu.execute({
userId: "user_1",
action: "brevo.get_account",
input: {},
});List contactsreadbrevo.list_contactsList contacts, newest first, optionally restricted to a list, a segment or an attribute filter such as equals(FIRSTNAME,"Antoine").
| Input | Type | Description | |
|---|---|---|---|
limit | integer | Optional | Contacts per page (max 1000, default 50) |
offset | integer | Optional | Index of the first contact |
list_id | integer | Optional | Only contacts in this list id |
segment_id | integer | Optional | Only contacts in this segment id |
filter | string | Optional | Attribute filter, equals() only |
sort | string | Optional | Creation date order |
await setu.execute({
userId: "user_1",
action: "brevo.list_contacts",
input: {},
});List contact listsreadbrevo.list_listsList contact lists with ids, names and subscriber counts.
| Input | Type | Description | |
|---|---|---|---|
limit | integer | Optional | Lists per page (default 10) |
offset | integer | Optional | Index of the first list |
sort | string | Optional | Creation date order |
await setu.execute({
userId: "user_1",
action: "brevo.list_lists",
input: {},
});Send transactional emailwritebrevo.send_transactional_emailSend one transactional email to a single recipient, either with inline HTML or from an existing template id. The sender must be a verified Brevo sender.
| Input | Type | Description | |
|---|---|---|---|
to_email | string | Required | Recipient email |
to_name | string | Optional | Recipient name |
sender_email | string | Optional | Verified sender email |
sender_name | string | Optional | Sender name |
subject | string | Optional | Subject line (not needed with templateId) |
html_content | string | Optional | HTML body (not needed with templateId) |
template_id | integer | Optional | Brevo template id to use instead of inline content |
await setu.execute({
userId: "user_1",
action: "brevo.send_transactional_email",
input: {
"to_email": "<to_email>"
},
});Update contactwritebrevo.update_contactUpdate a contact found by email (default), contact id or another identifier type: attributes, list membership and blocklist flags.
| Input | Type | Description | |
|---|---|---|---|
identifier | string | Required | Contact email, id, ext_id or other identifier |
identifier_type | string | Optional | How to read identifier |
attributes | object | Optional | Attribute name to value, names in capitals; attributes must already exist |
list_ids | array of integer | Optional | List ids to add the contact to |
unlink_list_ids | array of integer | Optional | List ids to remove the contact from |
email_blacklisted | boolean | Optional | Block or allow email to this contact |
await setu.execute({
userId: "user_1",
action: "brevo.update_contact",
input: {
"identifier": "<identifier>"
},
});