HyperliquidHyperliquid REST APIUser data

Get User Fills By Time

Returns user's trade fills within a specific time range. Limited to 2000 fills maximum per request.

Rate Limit: 20 weight

POST
/v1/info/userFillsByTime

Request Body

application/json

type*enum<string>required

Request type identifier

Available options: userFillsByTime
user*stringrequired

User's Ethereum address

startTime*integerrequired

Start time filter in milliseconds

Example: 1681923833000
endTime?integer

End time filter in milliseconds

aggregateByTime?booleandefault: false

Aggregate fills at same timestamp

dex?stringdefault: ""

Perp dex name for multi-dex support

Response Body

application/json

application/json

curl -X POST "https://api.hypereth.io/v1/info/userFillsByTime" \  -H "Content-Type: application/json" \  -d '{    "type": "userFillsByTime",    "user": "0x31ca8395cf837de08b24da3f660e77761dfb974b",    "startTime": 1681923833000,    "endTime": 1681924833000  }'
[
  {
    "coin": "BTC",
    "px": "43251.5",
    "sz": "0.25",
    "side": "A",
    "time": 1681923845000,
    "startPosition": "0.0",
    "dir": "Open Long",
    "closedPnl": "125.50",
    "hash": "0x1234567890abcdef...",
    "oid": 127244980388,
    "crossed": true,
    "fee": "0.0001",
    "tid": 98765432
  }
]
{
  "error": "Insufficient margin for order placement",
  "code": 1001,
  "details": {}
}