POST/api/v1/files/links

File links

Signed download links for specific file keys from list files. Download scripts call this a page at a time.

Auth required. Up to 500 keys per call. Each link lasts one hour. A file counts toward your monthly allowance the first time you take a link for it in that month.

Try it

Loading…

POST/api/v1/files/links
{
  "keys": [
    "flat/v1/trades/date=2026-10-12/series=KXBTC15M/trades-KXBTC15M-2026-10-12.parquet"
  ]
}
curl
curl "https://kalshieye.com/api/v1/files/links" \
  -X POST \
  -H "Authorization: Bearer $KALSHIEYE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"keys":["flat/v1/trades/date=2026-10-12/series=KXBTC15M/trades-KXBTC15M-2026-10-12.parquet"]}'
200 response
{
  "files": [
    {
      "key": "flat/v1/trades/date=2026-10-12/series=KXBTC15M/trades-KXBTC15M-2026-10-12.parquet",
      "url": "https://…",
      "expires_in_s": 3600,
      "bytes": 842112,
      "sha256": "…"
    }
  ],
  "charged_bytes": 842112,
  "quota": { "month": "2026-10", "used_bytes": 842112, "cap_bytes": null, "remaining_bytes": null }
}

An unknown key is 404. A key outside your plan is 402. A page that would pass the allowance is 402 with code: download_quota, and none of those new files are charged.