GET /v1/sources
Returns metadata about every data source available in the Kwery API, including supported symbols, intervals, and endpoint paths.
Minimum tier: Free | Credits: 25 flat per request
GET https://kwery-api.com/v1/sources
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
api-key | string | Yes | — | Your API key. Send via X-API-Key header (recommended) or api-key query parameter. See Authentication. |
Response fields
Each object in data represents a single data source:
| Field | Type | Description |
|---|---|---|
source | string | Source identifier (e.g. binance_spot, binance_futures, hyperliquid, polymarket, kalshi, chainlink). |
display_name | string | Human-readable source name. |
symbols | string[] | Array of supported asset symbols (e.g. ["BTC", "ETH", "SOL"]). |
intervals | string[] | Available time intervals (e.g. ["1m", "5m", "15m", "1h", "4h", "1d"]). |
endpoints | object[] | List of API endpoints for this source. |
endpoints[].path | string | Endpoint path template (e.g. /v1/binance/spot/{symbol}). |
endpoints[].method | string | HTTP method (always GET). |
endpoints[].description | string | Short description of what the endpoint returns. |
endpoints[].min_tier | string | Minimum plan required (free, pro, business). |
endpoints[].credits | string | Credit cost description (e.g. "50 + 3/row"). |
Response headers
| Header | Description |
|---|---|
X-Credits-Charged | Total credits consumed by this request. |
X-RateLimit-Remaining | Requests remaining in the current rate-limit window. |
X-RateLimit-Reset | ISO 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/sources",
headers={"X-API-Key": "YOUR_KEY"},
)
data = resp.json()Query parameter alternative: Add api-key=YOUR_KEY to the URL for quick tests; the header is recommended for production.
Example response
{
"data": [
{
"source": "binance_spot",
"display_name": "Binance Spot",
"symbols": ["BTC", "ETH", "SOL", "DOGE"],
"intervals": ["1m", "5m", "15m", "1h", "4h", "1d"],
"endpoints": [
{
"path": "/v1/candles?source=binance",
"method": "GET",
"description": "OHLCV candles (Binance spot).",
"min_tier": "free",
"credits": "50 + 3/row"
},
{
"path": "/v1/ticker?source=binance",
"method": "GET",
"description": "1-second best bid/ask ticker.",
"min_tier": "pro",
"credits": "50 + 5/row"
},
{
"path": "/v1/flow",
"method": "GET",
"description": "Directional trade flow (spot agg trades).",
"min_tier": "free",
"credits": "per OpenAPI"
}
]
},
{
"source": "polymarket",
"display_name": "Polymarket",
"symbols": ["BTC", "ETH"],
"intervals": ["5m", "15m", "1h", "4h", "1d"],
"endpoints": [
{
"path": "/v1/markets",
"method": "GET",
"description": "Discover prediction market contracts.",
"min_tier": "free",
"credits": "25 flat"
},
{
"path": "/v1/snapshots?source=polymarket",
"method": "GET",
"description": "Paginated snapshots; optional include_orderbook.",
"min_tier": "free",
"credits": "50 + 4/row (10/row with orderbook)"
}
]
}
],
"meta": {
"symbol": null,
"source": null,
"interval": null,
"count": 2,
"next_cursor": null
}
}
Source-specific behavior
This endpoint returns a static catalog. The response does not change based on your plan tier — all sources are listed regardless of access level. Check the min_tier field on each endpoint to determine whether your plan can call it.
Errors
| Status | Code | Description |
|---|---|---|
401 | unauthorized | Missing or invalid api-key. |
429 | rate_limit_exceeded | You have exceeded your per-second or per-minute request quota. |