Open Radio Player API

Public radio API plus live system status.

Open Radio Player exposes a public JSON API for apps, games, AI agents, dashboards, and integrations that need reliable station selection, full stream telemetry, pipeline health, and the generated station catalog.

This landing page is backed by the same production deployment and Neon telemetry that power the API. It checks whether the local stream monitor is still writing fresh data, whether the station catalog is live, whether the frontend telemetry feed is current, and whether the healthy-stations endpoint is returning current results.

Live checks

Neon database

Healthy

Connected and queried successfully.

Observed: Mar 21, 2026, 4:07 PM PDT

Local monitor freshness

Healthy

Fresh telemetry (4 minutes old).

Observed: Mar 21, 2026, 4:03 PM PDT • Age: 4 minutes

Station health rows

Healthy

65 healthy stations across 68 healthy stream variants.

Observed: Mar 21, 2026, 4:03 PM PDT • Age: 4 minutes

Static station catalog

Healthy

Catalog responded with HTTP 200.

Observed: Mar 21, 2026, 4:07 PM PDT • HTTP 200

Healthy stations endpoint

Healthy

Endpoint returned 1 station row.

Observed: Mar 21, 2026, 4:03 PM PDT • HTTP 200

Frontend telemetry endpoint

Healthy

Endpoint returned 74 telemetry rows.

Observed: Mar 21, 2026, 4:03 PM PDT • HTTP 200

Endpoints

Frontend telemetry

Full stream-variant telemetry feed used by the site. Each item includes stationId, streamId, streamLabel, and playback compatibility flags.

https://openradioplayer.com/api/v1/stations/telemetry

curl 'https://openradioplayer.com/api/v1/stations/telemetry?stationId=krtu' | jq '.items[0] | {stationId, streamId, streamLabel, streamType, streamTransport}'

Healthy stations

Returns recent, responsive stream variants for external clients such as games or companion apps, including compatibility fields for stream playback.

https://openradioplayer.com/api/v1/stations/healthy

curl 'https://openradioplayer.com/api/v1/stations/healthy?genre=jazz&limit=12&minScore=90&maxStartupLatencyMs=1200&maxAgeMinutes=20&supportsNativeAudio=true'

Station catalog

Full static station index published by the production site build, including a streams[] array for stations with multiple playable variants.

https://openradioplayer.com/api/v1/stations/index.json

curl 'https://openradioplayer.com/api/v1/stations/index.json' | jq '.items[0] | {id, defaultStreamId, streamCount, streams}'

Integration Notes

No auth

The current public JSON endpoints are read-only and do not require an API key.

CORS-enabled

JSON endpoints send Access-Control-Allow-Origin: * and allow GET, OPTIONS.

Freshness and cache

Healthy and telemetry endpoints use shared caching for 60 seconds. System status is no-store. Check generatedAt and telemetryGeneratedAt before acting on data.

Best starting points

Start with /api/v1/stations/healthy for filtered reliable stations, /api/v1/stations/telemetry for the full feed, and /api/v1/system/status as a readiness gate.