Free
Explore and prototype.
- 500 API requests per UTC calendar month
- 20 requests per minute across all keys
- Up to 5 active API keys
- Same available captured datasets and provenance
One API call is one request. Explore the same captured datasets on every plan, with monthly allowances shared across all your keys.
Explore and prototype.
Build apps and research tools.
A larger allowance for growing applications.
Every request is checked and counted once, against your account rather than a key, at both the monthly and the per-minute limit. At the limit you get a 429 and are not charged more. Nothing rolls over.
| Call | Counts as a request? |
|---|---|
Any authenticated /api/v1 data call, including format=csv | Yes, one |
| The same call with empty results | Yes, one |
| A call with a valid key and an invalid query | Yes, one. The key is checked first |
| A call with a valid key that returns 403, 428 or a 503 dataset error | Yes, one, when the key was accepted before the failure |
| Missing, invalid or revoked key (401) | No |
| A call refused at the limit (429) | No |
| MCP data tools | Yes, one per tool call. MCP search and fetch need no key and do not count |
/api/v1/demo/pick6 and /api/v1/demo/dfs | No. No key is read |
Docs, /api/health, OpenAPI, llms.txt and the public pages | No |
| Webhook deliveries and webhook management | No. Delivery does not read your request allowance |
One Pick6 stream connection costs one request and lasts at most 55 seconds, then you reconnect. Held open around the clock that is about 1,570 requests a day, so one continuous stream uses Developer's 10,000 requests in about 6 days and most of Production's 50,000 in a month. Time on a connection is not charged, only opening it. Webhook deliveries spend no requests.
| Pattern | Requests | On Developer | On Production | Plan |
|---|---|---|---|---|
| Pick6 SSE stream, reconnecting every 55 seconds | About 1,570 a day, 47,100 over 30 days | About 6 days of 10,000 | About 31 days of 50,000 | Developer and Production |
| Native sportsbook WebSocket, rotating every 280 seconds | About 308 a day, 9,240 over 30 days | About 32 days of 10,000 | About 162 days of 50,000 | Developer (2 connections) and Production (5) |
Polling /api/v1/pick6/history every 5 minutes | About 288 a day, 8,640 over 30 days | About 34 days of 10,000 | About 173 days of 50,000 | Any plan with enough allowance |
| Signed webhooks | None | Not included | No request cost | Production |
If you only need Pick6 changes on a schedule, polling /api/v1/pick6/history with its cursor can cost less than a continuous stream. See the delivery docs.
provenance.rights_reference, and DFS rows have rights_status, source_url and caveats. DFS redistribution is pending source permission./status and the coverage report. The dashboard shows your active contract and reset time, and billing is managed in the billing portal.Legacy accounts retain their original daily contract: Free 100 requests/day or Pro 10,000 requests/day, with 30 requests/minute. Your dashboard shows the active allowance and reset time. Legacy Pro billing remains manageable through the billing portal.
Plans govern request allowances, not guaranteed source availability or history depth. Pick6 is selected multi-sport/category coverage; older rows may be retained and stale. Sportsbook mainlines are observed through ESPN. Review current coverage. Data access does not establish redistribution rights.