---
title: "Place multiple orders in one request (v2.1+, up to 25)"
method: POST
path: "/v1/orders/batch"
tags: ["Liquidity"]
---

# Place multiple orders in one request (v2.1+, up to 25)

`POST /v1/orders/batch`

## Request

- Base URL: `https://api.predictasiax.com`
- URL: `https://api.predictasiax.com/v1/orders/batch`
- Auth: HTTP bearer

Sequential CLOB processing (single-writer per market). Returns per-item
`results` + `summary`. One bad order does not fail the whole batch —
inspect `results[i].ok` per item. Cap env-tunable server-side
(`BATCH_ORDERS_MAX`, default 25); exceeding returns `413 BATCH_TOO_LARGE`.

## Headers

- `Idempotency-Key` string, required

## Request body

- object
  - `orders` OrderIntent[], required
    - `user_id` string, required
    - `subaccount_id` string
    - `market_id` string, required
    - `side` 'yes' | 'no' | 'buy' | 'sell', required: Trade side. `yes`/`no` picks the outcome; `buy`/`sell` picks the action against the current outcome. Both forms accepted for backward compatibility (see apps/api/src/index.ts validate).
    - `price` string, required: Decimal string with up to 6 fractional digits
    - `size` string, required: Decimal string with up to 6 fractional digits
    - `client_order_id` string, required
    - `execution_builder_id` string, required
    - `app_id` string, required
    - `campaign_id` string
    - `attribution_version` integer, required
    - `builder_fee_bps` integer
    - `expires_at_ms` integer

## Response `200`

Batch processed (inspect per-item results)

## Other responses

- `413`: BATCH_TOO_LARGE

---

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