---
title: "Submit a Hyperliquid order through an active agent session"
method: POST
path: "/trade/hyperliquid/order"
tags: ["Trading"]
---

# Submit a Hyperliquid order through an active agent session

`POST /trade/hyperliquid/order`

Requires an agent JWT for the calling agent. Orders are rate-limited, idempotency-protected, scoped to an active Hyperliquid session, rechecked against adapter asset support, evaluated against leverage/per-order/daily-spend policy before signing, and audited on both success and policy rejection.

## Headers

- `X-Steward-Request-Timestamp` string
- `X-Steward-Request-Expires-At` string
- `X-Steward-Signature` string
- `X-Steward-Signing-Key-Id` string
- `Idempotency-Key` string

## Request body

- union
  - object
    - `sessionId` string, required
    - `coin` union, required
      - 'BTC' | 'ETH' | 'BNB' | 'SOL' | 'AVAX' | 'ARB' | 'OP' | 'NEAR' | 'HYPE' | 'ZEC' | 'XMR'
      - string
    - `asset` union
      - 'BTC' | 'ETH' | 'BNB' | 'SOL' | 'AVAX' | 'ARB' | 'OP' | 'NEAR' | 'HYPE' | 'ZEC' | 'XMR'
      - string
    - `side` 'buy' | 'sell', required
    - `size` number, required
    - `limitPx` union
      - string
      - number
    - `limitPrice` union
      - string
      - number
    - `leverage` number
    - `reduceOnly` boolean
    - `idempotencyKey` string
  - object
    - `sessionId` string, required
    - `coin` union
      - 'BTC' | 'ETH' | 'BNB' | 'SOL' | 'AVAX' | 'ARB' | 'OP' | 'NEAR' | 'HYPE' | 'ZEC' | 'XMR'
      - string
    - `asset` union, required
      - 'BTC' | 'ETH' | 'BNB' | 'SOL' | 'AVAX' | 'ARB' | 'OP' | 'NEAR' | 'HYPE' | 'ZEC' | 'XMR'
      - string
    - `side` 'buy' | 'sell', required
    - `size` number, required
    - `limitPx` union
      - string
      - number
    - `limitPrice` union
      - string
      - number
    - `leverage` number
    - `reduceOnly` boolean
    - `idempotencyKey` string

## Response `200`

JSON response

- object
  - `ok` true, required
  - `data` object, required
    - `orderId` string, required
    - `status` string, required
    - `filledQty` number, required
    - `avgPrice` number, required
    - `txHash` string, nullable, required
    - `builderPerp` boolean

## Other responses

- `400` — JSON response
- `401` — JSON response
- `403` — JSON response
- `404` — JSON response
- `408` — JSON response
- `409` — JSON response
- `429` — JSON response

## Changes

- **2026-08-17** `261a7c8070b2` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/steward-fi/apis/steward-api/changes/trade/hyperliquid/order/post.md)

---

[API](https://skmtc.dev/steward-fi/apis/steward-api.md) · [All operations](https://skmtc.dev/steward-fi/apis/steward-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/steward-fi/steward-api/revisions/b88b4b97a664/schema)
