Source OpenAPI: 0xArchive API 1.5.0; 116 paths; 90 component schemas. Get historical trades (fills) for a coin within a time range. Data available from August 2025. Pagination: Use theDocumentation Index
Fetch the complete documentation index at: https://docs.0xarchive.io/llms.txt
Use this file to discover all available pages before exploring further.
cursor parameter with the value from the previous response’s next_cursor for efficient pagination.
Route Metadata
| Field | Value |
|---|---|
| Method | GET |
| Path | /v1/lighter/trades/{symbol} |
| operationId | getLighterTrades |
| Tag | Lighter - Trades |
| Family | Lighter |
| Deprecated or legacy | no |
Request Parameters
Path Parameters
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "getLighterTrades path parameters",
"type": "object",
"required": [
"symbol"
],
"properties": {
"symbol": {
"description": "Trading pair symbol (e.g., ETH, BTC)",
"type": "string",
"example": "ETH",
"x-parameter-location": "path"
}
}
}
Query Parameters
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "getLighterTrades query parameters",
"type": "object",
"properties": {
"start": {
"description": "Start timestamp in Unix milliseconds. Defaults to 24h ago.",
"type": "integer",
"format": "int64",
"x-parameter-location": "query"
},
"end": {
"description": "End timestamp in Unix milliseconds. Defaults to now.",
"type": "integer",
"format": "int64",
"x-parameter-location": "query"
},
"cursor": {
"description": "Cursor for pagination",
"type": "string",
"x-parameter-location": "query"
},
"limit": {
"description": "Maximum number of results (default: 100, max: 1000)",
"type": "integer",
"default": 100,
"maximum": 1000,
"x-parameter-location": "query"
}
}
}
Response Contracts
Status 200
List of trades with cursor for next pageapplication/json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "getLighterTrades response 200",
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"description": "Trade/fill record with full execution details",
"type": "object",
"required": [
"coin",
"price",
"side",
"size",
"symbol",
"timestamp"
],
"properties": {
"builder_address": {
"description": "Builder address that routed this order. Present only when the order was placed through a builder.",
"type": "string",
"nullable": true
},
"builder_fee": {
"description": "Builder fee charged on this fill, paid to the builder (in quote currency, typically USDC). Present only when builder_address is set.",
"type": "string",
"nullable": true
},
"cloid": {
"description": "Client order ID",
"type": "string",
"nullable": true
},
"closed_pnl": {
"description": "Realized PnL if closing a position",
"type": "string",
"nullable": true
},
"coin": {
"description": "Trading pair symbol (deprecated, use symbol instead)",
"type": "string",
"deprecated": true,
"example": "BTC"
},
"crossed": {
"description": "True if taker (crossed the spread), false if maker",
"type": "boolean",
"nullable": true
},
"deployer_fee": {
"description": "HIP-3 deployer fee share on this fill (in quote currency). Negative for the maker side (rebate), positive for the taker side. Present only on HIP-3 fills.",
"type": "string",
"nullable": true
},
"direction": {
"description": "Position direction (e.g., 'Open Long', 'Close Short', 'Long > Short')",
"type": "string",
"nullable": true
},
"fee": {
"description": "Trading fee amount",
"type": "string",
"nullable": true
},
"fee_token": {
"description": "Fee denomination (e.g., USDC)",
"type": "string",
"nullable": true
},
"maker_address": {
"description": "Maker's wallet address (the resting order)",
"type": "string",
"nullable": true
},
"order_id": {
"description": "Associated order ID",
"type": "integer",
"format": "int64",
"nullable": true
},
"price": {
"description": "Execution price",
"type": "string",
"example": "42150.50"
},
"priority_gas": {
"description": "Priority fee burned in HYPE (not USDC) for write priority on the Hyperliquid validator queue. Independent of builder_fee and deployer_fee — paid to the network, not to a builder or deployer. Present only when the order paid for priority.",
"type": "number",
"nullable": true
},
"side": {
"description": "Trade side: 'B' (buy) or 'A' (sell/ask)",
"type": "string",
"enum": [
"A",
"B"
],
"example": "B"
},
"size": {
"description": "Trade size",
"type": "string",
"example": "0.5"
},
"start_position": {
"description": "Position size before this trade",
"type": "string",
"nullable": true
},
"symbol": {
"description": "Trading pair symbol",
"type": "string",
"example": "BTC"
},
"taker_address": {
"description": "Taker's wallet address (crossed the spread)",
"type": "string",
"nullable": true
},
"timestamp": {
"description": "Execution timestamp (UTC)",
"type": "string",
"format": "date-time",
"example": "2025-01-21T10:30:45.123Z"
},
"trade_id": {
"description": "Unique trade ID",
"type": "integer",
"format": "int64",
"nullable": true
},
"twap_id": {
"description": "TWAP execution ID",
"type": "integer",
"nullable": true
},
"tx_hash": {
"description": "Blockchain transaction hash",
"type": "string",
"nullable": true
},
"user_address": {
"description": "User's wallet address",
"type": "string",
"nullable": true
}
}
}
},
"meta": {
"description": "Response metadata",
"type": "object",
"properties": {
"count": {
"description": "Number of records returned",
"type": "integer"
},
"next_cursor": {
"description": "Cursor for pagination (timestamp). Use this value as the `cursor` parameter to fetch the next page of results.",
"type": "string",
"nullable": true
},
"request_id": {
"description": "Unique request ID for support",
"type": "string",
"format": "uuid"
}
}
},
"success": {
"type": "boolean",
"example": true
}
}
}
Status 400
Invalid requestapplication/json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "getLighterTrades response 400",
"description": "Error response",
"type": "object",
"properties": {
"code": {
"description": "HTTP status code",
"type": "integer"
},
"error": {
"description": "Error message",
"type": "string"
}
}
}
OpenAPI example
{
"code": 400,
"error": "Invalid request parameters"
}
Status 401
Authentication requiredapplication/json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "getLighterTrades response 401",
"description": "Error response",
"type": "object",
"properties": {
"code": {
"description": "HTTP status code",
"type": "integer"
},
"error": {
"description": "Error message",
"type": "string"
}
}
}
OpenAPI example
{
"code": 401,
"error": "Missing or invalid API key. Provide X-API-Key header."
}
Status 429
Rate limit exceededapplication/json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "getLighterTrades response 429",
"description": "Error response",
"type": "object",
"properties": {
"code": {
"description": "HTTP status code",
"type": "integer"
},
"error": {
"description": "Error message",
"type": "string"
}
}
}
OpenAPI example
{
"code": 429,
"error": "Rate limit exceeded"
}