---
title: "Batch trigger workflow"
method: POST
path: "/v1/workflows/{workflowId}/trigger/batch"
tags: ["workflows"]
---

# Batch trigger workflow

`POST /v1/workflows/{workflowId}/trigger/batch`

## Request

- Base URL: `https://api.wraps.dev`
- URL: `https://api.wraps.dev/v1/workflows/{workflowId}/trigger/batch`
- Auth: HTTP bearer

Trigger a workflow for multiple contacts at once. Each contact can have its own data that gets merged with common data.

## Path parameters

- `workflowId` string, required

## Request body

- object
  - `contacts` object[], required: List of contacts to trigger the workflow for
    - `contactId` string
    - `contactEmail` string
    - `data` object
  - `data` object: Common data to pass to all workflow triggers

## Response `200`

- object
  - `success` boolean, required
  - `workflowId` string
  - `workflowName` string
  - `triggered` number: Number of contacts triggered
  - `errors` string[]: Error messages if any
  - `error` string

## Other responses

- `400`: Malformed request — unparseable body or an invalid parameter.
- `401`: Missing, malformed, or revoked credentials. Send `Authorization: Bearer <api key>`.
- `403`: Authenticated, but the resource belongs to another organization.
- `404`: No such route, or no such resource in this organization.
- `422`: The request parsed but failed schema validation.
- `429`: Rate limit exceeded. Wait for the window named by the RateLimit headers.
- `500`: Unexpected server failure. Safe to retry with backoff; quote `requestId` if it persists.

---

[API](https://skmtc.dev/wraps/apis/wraps-platform-api.md) · [All operations](https://skmtc.dev/wraps/apis/wraps-platform-api/llms.txt) · [OpenAPI document](https://skmtc.dev/wraps/apis/wraps-platform-api/revisions/12116fb21af7?raw)
