Record a contact event

Records a behavioral event for a contact (auto-created if unknown) - the signal that drives automations and audience segmentation. Slugs are normalized to snake_case (signedUp becomes signed_up). A 200 guarantees the event is persisted; any automation it triggers runs asynchronously.

POST/v2/accounts/{accountId}/events

Base URL https://api.sendstreak.com. All v2 endpoints require a bearer token - see Authentication.

Path parameters

accountIdstringrequired

The account the request is scoped to.

Request body

emailstring (email)required

The contact’s email; the contact is auto-created if unknown.

slugstringrequired

Event name; normalized to snake_case at persist time.

Response

The created event, carrying the normalized slug.

Errors

400

The request body or parameters failed validation.

401

Missing or invalid token, or the token is not authorized for this account/user.

See Errors and rate limits for what error responses look like.

curl --location --request POST 'https://api.sendstreak.com/v2/accounts/YOUR_ACCOUNT_ID/events' \
--header 'Authorization: Bearer YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data-raw '{
  "email": "[email protected]",
  "slug": "signup"
}'
response200application/json
{
  "_id": "665f0a2b1c9d440012ab34cd",
  "accountId": "664b9e0f2a7c330011cd56ef",
  "contactId": "665f0a2b1c9d440012ab34cd",
  "slug": "signup",
  "timestamp": "2026-07-07T09:30:00.000Z"
}