Skip to main content
POST
Send an event
Provide either an email or userId value or both to identify the contact. If both are provided, the system will look for a contact with either a matching email or userId value. If a contact is found for one of the values (e.g. email), the other value (e.g. userId) will be updated. If a contact is not found, a new contact will be created using both email and userId values.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

Idempotency-Key
string

Include a unique ID for this request (maximum 100 characters) to avoid duplicate emails.

The value should be a string of up to 100 characters and should be unique for each request. We recommend using V4 UUIDs or some other method with enough guaranteed entropy to avoid collisions during a 24 hour window.

This endpoint will return a 409 Conflict response if the idempotency key has been used in the previous 24 hours.

Maximum string length: 100

Body

application/json

Provide either email or userId to identify the contact (read more).
Event properties will be available in emails sent by this event. Values of properties can be of type string, number, boolean or date (see allowed date formats).
Make sure to create the properties in Loops before using them in API calls.
You can add contact properties as keys in this request (of type string, number, boolean or date (see available date formats)).

email
string
required

The contact's email address. Required if userId is not provided.

eventName
string
required

The name of the event.

userId
string

The contact's unique user ID. Required if email is not provided.

eventProperties
object

An object containing event property data for the event, available in emails sent by the event.

Example:
mailingLists
object

Manage mailing list subscriptions.

Include key-value pairs of mailing list IDs and a boolean denoting if the contact should be added (true) or removed (false) from the list.

Example:
{key}

Response

Successful send.

success
boolean
required
Example:

true

Last modified on July 17, 2026