Skip to main content

Overview

All orders on Limitless are signed using EIP-712 structured data. The venue’s exchange address is used as the verifyingContract in the signing domain.
If you’re using the Programmatic API with delegated signing, the server handles EIP-712 signing for you via managed wallets. This page is for partners and traders who sign orders with their own private keys.

EIP-712 Domain

The verifyingContract must be fetched from the market’s venue data via GET /markets/:slug. See Venue System.

Order Type Definition

Field Reference

Order Types

Amount Calculation

USDC has 6 decimals (1 USDC = 1,000,000 units). Shares are also scaled by 1e6.

GTC (limit orders)

FAK (fill-and-kill limit orders)

FAK orders build makerAmount and takerAmount with the same price/size formulas as GTC, but the matching engine treats the fields differently:
  • makerAmount is the hard spend cap — the order tries to use the full amount (USDC to spend for BUY, shares to sell for SELL).
  • takerAmount is a protected minimum — the minimum output implied by the signed price (shares to receive for BUY, USDC to receive for SELL), acting as slippage protection rather than a hard cap on matched size.
  • Any portion not matched at or better than the signed price is cancelled; FAK never rests on the book.
postOnly is not supported for FAK.

FOK (market orders)

FOK orders always set takerAmount = 1 and omit price. The makerAmount represents the raw amount being offered.
The SDKs handle amount scaling automatically — you pass human-readable values (price, size, or makerAmount) and the builder calculates the scaled on-chain amounts.