cursor parameter with the value from the previous response’s next_cursor for efficient pagination.
Route Metadata
| Field | Value |
|---|---|
| Method | GET |
| Path | /v1/hyperliquid/candles/{symbol} |
| operationId | getHyperliquidCandles |
| Tag | Hyperliquid - Candles |
| Family | Hyperliquid Core |
| Deprecated or legacy | no |
Request Parameters
Path Parameters
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "getHyperliquidCandles path parameters",
"type": "object",
"required": [
"symbol"
],
"properties": {
"symbol": {
"description": "Trading pair symbol (e.g., BTC, ETH, SOL)",
"type": "string",
"example": "BTC",
"x-parameter-location": "path"
}
}
}
Query Parameters
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "getHyperliquidCandles 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"
},
"interval": {
"description": "Candle interval (default: 1h)",
"type": "string",
"enum": [
"1m",
"5m",
"15m",
"30m",
"1h",
"4h",
"1d",
"1w"
],
"default": "1h",
"x-parameter-location": "query"
},
"cursor": {
"description": "Cursor for pagination (use the value from previous response's `next_cursor`)",
"type": "string",
"x-parameter-location": "query"
},
"limit": {
"description": "Maximum number of results (default: 100, max: 10000)",
"type": "integer",
"default": 100,
"maximum": 10000,
"x-parameter-location": "query"
}
}
}
Response Contracts
Status 200
List of OHLCV candles with cursor for next pageapplication/json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "getHyperliquidCandles response 200",
"description": "API response containing an array of candle data",
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"description": "OHLCV candle data",
"type": "object",
"required": [
"close",
"high",
"low",
"open",
"timestamp",
"volume"
],
"properties": {
"close": {
"description": "Closing price",
"type": "number",
"format": "double",
"example": 42650.75
},
"high": {
"description": "Highest price during interval",
"type": "number",
"format": "double",
"example": 42750
},
"low": {
"description": "Lowest price during interval",
"type": "number",
"format": "double",
"example": 42300.25
},
"open": {
"description": "Opening price",
"type": "number",
"format": "double",
"example": 42500.5
},
"quote_volume": {
"description": "Trading volume in quote asset (USD)",
"type": "number",
"format": "double",
"example": 53187500
},
"timestamp": {
"description": "Candle start timestamp (ISO 8601 UTC)",
"type": "string",
"format": "date-time",
"example": "2026-01-01T12:00:00Z"
},
"trade_count": {
"description": "Number of trades in interval",
"type": "integer",
"example": 4520
},
"volume": {
"description": "Trading volume in base asset",
"type": "number",
"format": "double",
"example": 1250.5
}
}
}
},
"meta": {
"type": "object",
"properties": {
"count": {
"description": "Number of records returned",
"type": "integer"
},
"next_cursor": {
"description": "Cursor for pagination",
"type": "string",
"nullable": true
}
}
},
"success": {
"type": "boolean",
"example": true
}
}
}
Status 400
Invalid requestapplication/json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "getHyperliquidCandles 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": "getHyperliquidCandles 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": "getHyperliquidCandles 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"
}