---
title: "Report workflow events in bulk"
method: POST
path: "/events/batch"
tags: ["workflows"]
---

# Report workflow events in bulk

`POST /events/batch`

## Request

- Base URL: `https://api.mailly.site` (the document declares no server; this is the origin it was published from)
- URL: `https://api.mailly.site/events/batch`
- Auth: HTTP bearer

body is an array of events or {events: [...]}, 1-100 items; returns a result per item, 207 overall.

## Request body

- object
  - `events` object[]
    - `event_id` string, required: Stable event ID (idempotency key); retries must reuse it
    - `event_name` string, required: Event name (matched against trigger and exit conditions)
    - `occurred_at` string, required: Event time, ISO-8601
    - `contact` object, required: Contact
      - `external_contact_id` string, required: Stable business-side contact ID
      - `email` string, required: Contact email
      - `attributes` object: Contact attributes, JSON up to 32KB
    - `properties` object: Event properties, JSON up to 64KB

## Response `207`

Batch result

- object
  - `success` boolean, required
  - `received` number, required
  - `results` object[], required

## Other responses

- `400`: Invalid parameters
- `401`: Missing or invalid API key

---

[API](https://skmtc.dev/mailly/apis/mailly-api.md) · [All operations](https://skmtc.dev/mailly/apis/mailly-api/llms.txt) · [OpenAPI document](https://skmtc.dev/mailly/apis/mailly-api/revisions/1ceb29637301?raw)
