Create Contact

brevo.create_contact
ActionEmailconnection required

Calls the Brevo API with the connection's credentials.

Create a contact in Brevo, optionally subscribing it to lists and setting its attributes. Turn on 'update_enabled' to update the contact instead of failing when the address already exists.

Connection

Required
Yes — the node will not save without one
Auth type
API key
Providers
Brevo
Secret shape
the API key, or {"api_key": "…"}
Config it needs
sender_email, sender_name, sms_sender
Resolved by
config.connection_id, else node.connection_id

Configuration

7 fields, none required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.

FieldTypeRequiredDefaultConstraintsExample
email
Email address of the contact. Required unless an 'ext_id' is given.
stringNo—email formatjane@example.com
attributes
Contact attributes and their values, keyed by the attribute name in capitals, e.g. {"FIRSTNAME": "Jane"}. Each attribute must already exist in the account.
objectNo——{"FIRSTNAME":"Jane"}
list_ids
Numeric ids of the lists to subscribe the contact to.
arrayNo—array of string—
ext_id
Your own identifier for the contact, stored as its ext_id.
stringNo———
update_enabled
Update the existing contact rather than failing when the identifier is already taken.
booleanNofalse——
email_blacklisted
Mark the contact as unsubscribed from email campaigns.
booleanNo———
sms_blacklisted
Mark the contact as unsubscribed from SMS campaigns.
booleanNo———
  • At least one of email, ext_id must be set.

Example configuration

Every value below is the contract’s own example or default — nothing invented.

{
  "attributes": {
    "FIRSTNAME": "Jane"
  },
  "email": "jane@example.com",
  "update_enabled": false
}

Output

One shape.

result

FieldTypeExample
id
Numeric id of the contact, when Brevo created one.
number—
email
The email address the contact was created with.
string—
ext_id
The external id the contact was created with.
string—
created
True when a new contact was created; false when an existing one was updated instead.
boolean—
{
  "created": false,
  "email": "",
  "ext_id": "",
  "id": 0
}

Notes

  • Brevo answers 204 with no body when 'update_enabled' updated an existing contact, so 'id' is only set for a genuinely new contact.

See Create Contact run in a workflow.

In a technical demo we add the Brevo connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.