Crypto Price SSE API

Real-time prices for 2.3M+ coins as Server-Sent Events: one GET request that stays open, one API call however long it runs. The recommended transport for front ends; back ends use WebSockets.

30 days free, then $199 a month. Card required, cancel any time.

$199/month · 30-day free trial · https://api.coinranking.com/v2/real-time/sse

curl
# -N disables output buffering, -g stops curl from interpreting the [] in the URL
curl -N -g 'https://api.coinranking.com/v2/real-time/sse/rates?currency-uuids[]=Qwsogvtv82FCd&currency-uuids[]=razxDUgYGNAdQ&throttle=10s' \
  -H 'x-access-token: YOUR_KEY'

# First line confirms the subscription, then one data: line per price update
# data: {"type":"rate","currencyUuid":"Qwsogvtv82FCd","price":"125423.83","volume":"6270550403.28"}

Three Streams, Same Data as the WebSockets

Each SSE path mirrors the WebSocket path of the same name: same subscriptions, throttle and message fields, plus a type field.

DEX markets on the exchange-rates and tickers streams need the Real-Time DEX Data add-on.

SSE or WebSocket

One data set, two transports. Pick by where the client runs.

Coinranking Server-Sent Events compared with Coinranking WebSocket API
Server-Sent EventsWebSocket
Recommended forFront endsBack ends
ProtocolHTTP GET, text/event-streamWebSocket upgrade, wss://
Base URLhttps://api.coinranking.com/v2/real-time/ssewss://api.coinranking.com/v2/real-time
Authenticationx-access-token header, or query parameter for EventSourcex-access-token query parameter
Change subscriptionsOpen a new streamSend a JSON message on the open socket
Subscribe to everythinglist=allUp to 100 UUIDs per connection
ReconnectAutomatic in EventSource, after 5 secondsReopen the URL
Through proxies, CDNs, serverlessYes, it is a normal HTTP responseOnly where upgrades are allowed
Cost1 API call per stream1 API call per connection, +1 per subscription message
PlanProfessionalProfessional

Built for Production Front Ends

What the stream does for you, and the one thing to do yourself.

Validated Before It Streams

A bad UUID, throttle or key returns a normal JSON error with a code, before a single byte streams. Match on the code.

Confirmed on Open

The first message lists what you subscribed to and the throttle. Every data message carries a type field.

Heartbeats and Reconnect

A :ping keeps idle timeouts away and the stream announces retry: 5000. No maximum duration.

Any HTTP Client

EventSource, fetch, curl, Python requests with stream=True, Node, Deno, Bun. The docs have each one.

Keep the key on your server and proxy the stream through your own origin; the docs include a Node proxy and a fetch-based client that reads error codes EventSource cannot.

SSE by Plan

SSE and WebSockets are both included in the Professional plan and not available on Free or Startup.

Coinranking API plans and what each includes for this feature
Free · $0Startup · $49/moProfessional · $199/mo
Price$0$49$199
Server-Sent EventsNot includedNot includedIncluded
WebSocketsNot includedNot includedIncluded
DEX markets on the streamsWith the Real-Time DEX Data add-on, $119/month
REST calls per month5,0001,000,0005,000,000
Free trial30 days30 days

30-day free trial on Professional. Compare every plan.

SSE Questions

Stream Prices over SSE

One GET request and the first price arrives. Professional is free for 30 days.

30 days free, then $199 a month. Card required, cancel any time.

    Crypto Price SSE API over Plain HTTP | Coinranking