tkTickOdds

Rate limits & errors

Limits per plan

PlanRequests / minDaily capWS connections
Developer601,000
Starter200
Live50025
Pro2,000100
EnterpriseUnlimitedUnlimited

HTTP request limits are enforced per-minute via a sliding window. WebSocket traffic is not billed per-message; only concurrent connections are capped.

Response headers

Every REST response includes:

X-RateLimit-Limit: 100
X-RateLimit-Remaining: 42

When limited, the response is HTTP 429 with:

Retry-After: 35

Error codes

HTTPCodeMeaning
400BAD_REQUESTMalformed query / body
401UNAUTHORIZEDMissing / invalid API key
403FORBIDDENPlan tier doesn't include this endpoint
404NOT_FOUNDResource not found
429RATE_LIMITEDToo many requests; see Retry-After
429DAILY_CAPDeveloper tier daily cap reached (resets at UTC midnight)
403SPORT_NOT_IN_PLANDeveloper tier — sport not in the key's pick list, or sport is paid-only
500INTERNALSomething went wrong on our end

Retry strategy

For 429 responses, respect the Retry-After header. For 5xx errors, retry with exponential backoff (e.g. 1s, 2s, 4s) up to 3 attempts. Do not retry 4xx errors other than 429.