Public rates API
A free, keyless JSON API for live no-KYC exchange rates across 318+ coins. Every quote carries the exchange's no-KYC grade — the part you will not find in a generic rates feed. Read-only: this API returns rates, it does not create swaps.
Endpoints
No key, no signup. Send a plain GET; CORS is open, so browser code can call it directly.
Live rates for a pair
Every exchange that quotes the pair, best first. `grade` is our no-KYC score (A–F) for that exchange.
GET https://notkyc.life/api/v1/rates?from=BTC&to=XMR&amount=0.5
Supported coins
Tickers and networks the rates endpoint accepts. Anything else returns 400.
GET https://notkyc.life/api/v1/coins
Rate history
Historical best-rate points for charting.
GET https://notkyc.life/api/rate-history?from=BTC&to=XMR
Response
Quotes come back best-first.
rate is per one unit of from; receive is what you get for the amount you asked about.{
"from": "BTC", "to": "XMR", "amount": 0.5,
"updated": "2026-09-22T05:25:26Z",
"best_rate": 151.21,
"quotes": [
{
"service": "OctoSwap",
"slug": "octoswap",
"grade": "B",
"rate": 149.99,
"receive": 74.99,
"best": true,
"url": "https://notkyc.life/exchange/octoswap"
}
]
}
grade is our A–F no-KYC score for that exchange, the same one shown on its listing. It reflects KYC policy, privacy, custody and track record — not price.
Limits
| Limit | Value |
|---|---|
| Requests | 60 per minute per IP |
| Freshness | quotes are cached ~60s; updated tells you when they were fetched |
| Over the limit | 429 with a Retry-After header |
| Unknown coin | 400 — check /api/v1/coins first |
Each uncached pair costs us a live call to every listed exchange, so please request pairs you actually need and cache on your side. If you need more headroom, ask — get in touch and we will work something out.
Using it
- Attribution. Free to use, including commercially. If the data is visible to your users, link back to notkyc.life as the source.
- No guarantees. Rates come from third-party exchanges and move constantly. Always confirm the final rate on the exchange before sending funds.
- Grades are our opinion. They are editorial research, not financial advice or a guarantee about any exchange.
- Breaking changes. The
/api/v1/prefix is stable; we will not remove fields from it without notice.
Quick start
curl 'https://notkyc.life/api/v1/rates?from=BTC&to=XMR&amount=0.5'
Prefer a drop-in visual instead of JSON? The embeddable widgets need no code at all.