---
title: "Batch emit events to runs (legacy)"
method: POST
path: "/v1/run-events/batch"
tags: ["Runs"]
---

# Batch emit events to runs (legacy)

`POST /v1/run-events/batch`

Emit multiple events in a single request. All events are stored idempotently.

**Note:** This is the legacy endpoint. For the newer execution-first API with richer metadata,
use POST /v1/events instead.

Each event can specify its own runId, customerId, and workflowId. If runId is provided,
the event is attached to that run. Otherwise, it's a standalone event.

## Response `201`

Events emitted

- object — Events emitted
  - `success` boolean
  - `created` integer
  - `duplicates` integer
  - `events` object[]
    - `id` string
    - `eventType` string
    - `isDuplicate` boolean

## Other responses

- `400` — Validation error
- `401` — Unauthorized
- `429` — Rate limit exceeded
- `503` — Service temporarily unavailable — retry with backoff

---

[API](https://skmtc.net/usedrip/apis/drip-api.md) · [All operations](https://skmtc.net/usedrip/apis/drip-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/usedrip/drip-api/revisions/2cb1567969ca/schema)
