Skip to main content

GET /v1/limits

Returns your current plan details, credit usage, rate limits, and feature flags.

Minimum tier: Free | Credits: 0 (free — safe to poll)

GET https://kwery-api.com/v1/limits

Parameters

ParameterTypeRequiredDefaultDescription
api-keystringYesYour API key. Send via X-API-Key header (recommended) or api-key query parameter. See Authentication.

Response fields

The response is returned directly (not wrapped in data / meta).

FieldTypeDescription
planstringCurrent plan name: free, pro, business, or enterprise.
creditsobjectCredit usage for the current billing cycle.
credits.usedintegerCredits consumed so far.
credits.limitintegerTotal credits available per cycle.
credits.remainingintegerCredits remaining (limit - used).
rate_limitsobjectRequest quotas (per-second and per-minute).
rate_limits.requests_per_secondintegerMaximum requests allowed per second.
rate_limits.requests_per_minuteintegerMaximum requests allowed per minute.
rate_limits.current_secondintegerRequests made in the current second window.
rate_limits.current_minuteintegerRequests made in the current minute window.
featuresobjectBoolean flags for gated features.
features.orderbook_snapshotsbooleanAccess to Polymarket order book depth.
features.binance_1s_tickerbooleanAccess to Binance 1-second ticker data.
features.kalshi_orderbookbooleanAccess to Kalshi order book depth.
features.trade_ticksbooleanAccess to raw trade tick data.
features.snapshots_500msbooleanAccess to 500ms snapshot intervals.
features.include_diffsbooleanAccess to incremental order book diffs.
features.min_usd_liquidationsbooleanAccess to filtered USD liquidation feeds.
max_rows_per_requestintegerMaximum rows a single request can return.
max_history_daysintegerMaximum days of history your plan can query (7 for Free, 14 for Pro, 31 for Business).

Response headers

HeaderDescription
X-Credits-ChargedAlways 0 for this endpoint.
X-RateLimit-RemainingRequests remaining in the current rate-limit window.
X-RateLimit-ResetISO 8601 timestamp when the rate-limit window resets.

Example request

Send your API key in the X-API-Key header (recommended) or as the api-key query parameter. Examples below use the header.

import requests

resp = requests.get(
    "https://kwery-api.com/v1/limits",
    headers={"X-API-Key": "YOUR_KEY"},
)
data = resp.json()
print(f"Credits remaining: {data['credits']['remaining']}")

Query parameter alternative: Add api-key=YOUR_KEY to the URL for quick tests; the header is recommended for production.

Example response

{
  "plan": "pro",
  "credits": {
    "used": 142350,
    "limit": 1000000,
    "remaining": 857650
  },
  "rate_limits": {
    "requests_per_second": 10,
    "requests_per_minute": 300,
    "current_second": 2,
    "current_minute": 47
  },
  "features": {
    "orderbook_snapshots": true,
    "binance_1s_ticker": true,
    "kalshi_orderbook": true,
    "trade_ticks": false,
    "snapshots_500ms": false,
    "include_diffs": false,
    "min_usd_liquidations": false
  },
  "max_rows_per_request": 1000,
  "max_history_days": 90
}

OpenAPI spec

The live OpenAPI spec is served by the API backend. If it still shows requests_per_hour / current_hour, the API service will be updated to expose requests_per_second and requests_per_minute to match the enforced limits. This documentation reflects the current per-second and per-minute model.

Source-specific behavior

This endpoint is source-agnostic. Feature flags apply globally across all sources — for example, orderbook_snapshots: true unlocks order book data on both Polymarket and Kalshi endpoints.

Errors

StatusCodeDescription
401unauthorizedMissing or invalid api-key.
429rate_limit_exceededYou have exceeded your per-second or per-minute request quota.