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

LimitValue
Requests60 per minute per IP
Freshnessquotes are cached ~60s; updated tells you when they were fetched
Over the limit429 with a Retry-After header
Unknown coin400 — 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.