Pacifica
  • Getting Started
    • Closed Alpha Guide
      • Link To Guide PDF
    • Closed Alpha Trading Competition
  • Trading on Pacifica
    • Overview
    • Contract Specifications
      • Oracle Price & Mark Price
      • Settlement Mechanism
    • Order Types
      • Market Order
      • Limit Order
      • Order Rules & Constraints
    • Margin & Leverage
    • Funding Rates
    • Liquidations
  • API Documentation
    • API
      • REST API
        • Markets
          • Get market info
          • Get prices
          • Get kline (candle) data
          • Get recent trades
        • Account
          • Get account info
          • Get account settings
          • Update leverage
          • Update margin mode
          • Get positions
          • Get trade history
          • Get funding history
          • Get account equity history
          • Create subaccount
          • Request withdrawal
        • Orders
          • Get open orders
          • Get order history
          • Get order history by ID
          • Create order
          • Create stop order
          • Create position TP/SL
          • Cancel order
          • Cancel all orders
          • Cancel stop order
          • Batch orders
      • Websocket
        • Subscriptions
          • Prices
          • Orderbook
          • Trades
          • Candle
          • Order updates
          • Account balance
          • Account margin
          • Account leverage
          • Account positions
          • Account orders
          • Account order updates
          • Account trades
        • Trading operations
          • Create order
          • Cancel order
          • Cancel all orders
      • Signing
      • Rate limits
    • Specification
  • Other
    • Audits
    • Brand Assets
    • Contact Us
    • Glossary of Terms
Powered by GitBook
On this page
  1. API Documentation
  2. API
  3. REST API
  4. Orders

Batch orders

This endpoint allows users to submit multiple order operations in a single request.

POST /api/v1/orders/batch

Request Body

Field
Type
Need
Description
Example

"account"

string

required

User's wallet address

42trU9A5...

"signature"

string

required

Cryptographic signature

5j1Vy9Uq...

"timestamp"

integer

required

Current timestamp in milliseconds

1716200000000

"operations"

array

required

List of order operations to perform Each operation has an "op" field and operation-specific fields

See next three rows

"op": "create"

-

-

Create a new order

See request body example

"op": "cancel"

-

-

Cancel an existing order

See request body example

"op": "cancel_all"

-

-

Cancel all orders for a symbol

See request body example

"agent_wallet"

string

optional

Agent wallet address

69trU9A5...

"expiry_window"

integer

optional

Signature expiry in milliseconds

30000

{
  "account": "42trU9A5...",
  "signature": "5j1Vy9Uq...",
  "timestamp": 1716200000000,
  "operations": [
    {
      "op": "create",
      "symbol": "BTC",
      "price": "50000",
      "amount": "0.1",
      "side": "bid",
      "tif": "GTC",
      "reduce_only": false,
      "client_order_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
    },
    {
      "op": "cancel",
      "symbol": "ETH",
      "order_id": 456
    },
    {
      "op": "cancel_all",
      "all_symbols": false,
      "symbol": "SOL",
      "exclude_reduce_only": true
    }
  ],
  "agent_wallet": "69trU9A5......",
  "expiry_window": 30000
}

Response

  • Status 200: Batch operations processed successfully

  {
    "results": [
      {
        "success": true,
        "order_id": 12345
      },
      {
        "success": true
      },
      {
        "success": true,
        "cancelled_count": 3
      }
    ]
  }
  • Status 400: Bad request

  {
    "error": "Invalid batch operation parameters",
    "code": 400
  }
  • Status 500: Internal server error

Code Example (Python)

import requests

payload = {
    "account": "42trU9A5...",
    "signature": "5j1Vy9Uq...",
    "timestamp": 1716200000000,
    "operations": [
        {
            "op": "create",
            "symbol": "BTC",
            "price": "50000",
            "amount": "0.1",
            "side": "bid",
            "tif": "GTC",
            "reduce_only": False,
            "client_order_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
        },
        {
            "op": "cancel",
            "symbol": "ETH",
            "order_id": 456
        }
    ]
}

response = requests.post(
    "/api/v1/orders/batch",
    json=payload,
    headers={"Content-Type": "application/json"}
)

data = response.json()
PreviousCancel stop orderNextWebsocket

Last updated 4 days ago