cURL
#!/bin/sh
# listAccountFills: List your fills on one venue. Needs TRENDLINE_CLIENT_ID, TRENDLINE_API_KEY and TRENDLINE_API_SECRET; TRENDLINE_API_BASE overrides the base.
curl -sS "${TRENDLINE_API_BASE:-https://systems.trendlinelabs.ai}/public/v1/account/fills?venue=kalshi" \
-H "X-Client-Id: $TRENDLINE_CLIENT_ID" \
-H "X-Api-Key: $TRENDLINE_API_KEY" \
-H "X-Api-Secret: $TRENDLINE_API_SECRET""""listAccountFills: List your fills on one venue. Needs TRENDLINE_CLIENT_ID, TRENDLINE_API_KEY and TRENDLINE_API_SECRET; TRENDLINE_API_BASE overrides the base."""
import os
import requests
BASE = os.environ.get("TRENDLINE_API_BASE", "https://systems.trendlinelabs.ai")
HEADERS = {"X-Client-Id": os.environ["TRENDLINE_CLIENT_ID"], "X-Api-Key": os.environ["TRENDLINE_API_KEY"],
"X-Api-Secret": os.environ["TRENDLINE_API_SECRET"]}
r = requests.get(f"{BASE}/public/v1/account/fills", params={"venue": "kalshi"}, headers=HEADERS, timeout=10)
r.raise_for_status()
print(r.json())
// listAccountFills: List your fills on one venue. Needs TRENDLINE_CLIENT_ID, TRENDLINE_API_KEY and TRENDLINE_API_SECRET; TRENDLINE_API_BASE overrides the base.
const BASE = process.env.TRENDLINE_API_BASE ?? "https://systems.trendlinelabs.ai";
const HEADERS = { "X-Client-Id": process.env.TRENDLINE_CLIENT_ID, "X-Api-Key": process.env.TRENDLINE_API_KEY,
"X-Api-Secret": process.env.TRENDLINE_API_SECRET };
const r = await fetch(`${BASE}/public/v1/account/fills?venue=kalshi`, { headers: HEADERS });
console.log(r.status, await r.json());
{
"as_of_ms": 1791266400000,
"fills": [
{
"fee": "0.07",
"fill_id": "f-91c2",
"market_id": "KXBTC-26DEC31-B100000",
"order_id": "o-7f3a",
"outcome": "yes",
"price": "0.41",
"side": "buy",
"size": "10",
"ts_ms": 1791266370000
}
],
"next_cursor": null,
"venue": "kalshi",
"wallet": null
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}Account
List your fills on one venue
Your fills on one venue, paged with next_cursor.
Good to know
- One read per venue at a time per user: a second concurrent read of the same venue answers
venue_busy. sideis the action (buy or sell) onoutcomeatprice;outcomeis the venue’s own label (Kalshi yes/no, Polymarket the token’s outcome name).- Kalshi nets every order into a buy of its outcome (yes or no) and reads the primary account (subaccount 0).
- A venue that cannot be read is never an empty 200.
Errors
| Status | Code | When |
|---|---|---|
| 404 | venue_not_connected | No credential, wallet, CLOB credentials or profile on that venue; a Limitless profile held by another account; or an empty Limitless positions answer for a profile not verified as your sub-account (found only through its public profile), reason empty_answer_unverified. The message says which. |
| 409 | venue_auth_failed | The venue refused your own stored credential. |
| 422 | venue_unsupported | A venue this route does not serve yet. |
| 422 | invalid_request | An unknown parameter, limit outside 1-100, or a cursor that is malformed or replayed under another route, venue, filter set or key’s user. |
| 503 | venue_unavailable | The venue could not be read, with Retry-After. The reason is one of timeout, venue_error, venue_rate_limited, bad_response, credential_store, too_many_rows. |
| 503 | venue_busy | Another read of this venue is running, with Retry-After. |
| 503 | dependency_unavailable | Our store is unavailable. |
Any route can also answer 401, 403, 429, 500 or 503 dependency_unavailable, described on the Errors page.
GET
/
public
/
v1
/
account
/
fills
cURL
#!/bin/sh
# listAccountFills: List your fills on one venue. Needs TRENDLINE_CLIENT_ID, TRENDLINE_API_KEY and TRENDLINE_API_SECRET; TRENDLINE_API_BASE overrides the base.
curl -sS "${TRENDLINE_API_BASE:-https://systems.trendlinelabs.ai}/public/v1/account/fills?venue=kalshi" \
-H "X-Client-Id: $TRENDLINE_CLIENT_ID" \
-H "X-Api-Key: $TRENDLINE_API_KEY" \
-H "X-Api-Secret: $TRENDLINE_API_SECRET""""listAccountFills: List your fills on one venue. Needs TRENDLINE_CLIENT_ID, TRENDLINE_API_KEY and TRENDLINE_API_SECRET; TRENDLINE_API_BASE overrides the base."""
import os
import requests
BASE = os.environ.get("TRENDLINE_API_BASE", "https://systems.trendlinelabs.ai")
HEADERS = {"X-Client-Id": os.environ["TRENDLINE_CLIENT_ID"], "X-Api-Key": os.environ["TRENDLINE_API_KEY"],
"X-Api-Secret": os.environ["TRENDLINE_API_SECRET"]}
r = requests.get(f"{BASE}/public/v1/account/fills", params={"venue": "kalshi"}, headers=HEADERS, timeout=10)
r.raise_for_status()
print(r.json())
// listAccountFills: List your fills on one venue. Needs TRENDLINE_CLIENT_ID, TRENDLINE_API_KEY and TRENDLINE_API_SECRET; TRENDLINE_API_BASE overrides the base.
const BASE = process.env.TRENDLINE_API_BASE ?? "https://systems.trendlinelabs.ai";
const HEADERS = { "X-Client-Id": process.env.TRENDLINE_CLIENT_ID, "X-Api-Key": process.env.TRENDLINE_API_KEY,
"X-Api-Secret": process.env.TRENDLINE_API_SECRET };
const r = await fetch(`${BASE}/public/v1/account/fills?venue=kalshi`, { headers: HEADERS });
console.log(r.status, await r.json());
{
"as_of_ms": 1791266400000,
"fills": [
{
"fee": "0.07",
"fill_id": "f-91c2",
"market_id": "KXBTC-26DEC31-B100000",
"order_id": "o-7f3a",
"outcome": "yes",
"price": "0.41",
"side": "buy",
"size": "10",
"ts_ms": 1791266370000
}
],
"next_cursor": null,
"venue": "kalshi",
"wallet": null
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "<string>"
}
}Authorizations
Query Parameters
Response
Successful Response