Home
Providers
Radio Browser
Radio Browser
Radio Browser is a free, community-driven directory of internet radio stations. The project publishes a public REST API exposing the full catalog of stations along with category aggregates (countries, states, languages, tags, codecs), click counting, voting, and station submission. Mirrors are discovered through a round-robin DNS pool (all.api.radio-browser.info) and the canonical server software (radiobrowser-api-rust) is released under AGPL-3.0, so anyone can self-host an additional mirror.
Radio Browser publishes 4 APIs on the APIs.io network, including Categories API, Interactions API, Service API, and 1 more. Tagged areas include Music, Radio, Streaming, Open Source, and Open Data.
The Radio Browser catalog on APIs.io includes 1 JSON-LD context and 2 Spectral governance rulesets.
Radio Browser’s developer surface includes documentation, API reference, and 20 more developer resources.
4 APIs
8 Features
6 Use Cases
Music Radio Streaming Open Source Open Data Community Public APIs AGPL
On this page
Kin Score
APIs 4
Open Collections 1
Pricing Plans 1
Rate Limits 1
Features 8
Vocabularies 1
Spectral Rules 2
JSON Schema 3
JSON Structure 2
Examples 3
Security Posture 1
Agentic Access 1
Use Cases 6
Integrations 4
Solutions 2
Resources 22
apis.yml
37 Operational Transparency
Composite quality — 42.4/100 · developing
Contract Quality
15.6 / 25
Developer Ergonomics
6.1 / 20
Commercial Clarity
4.2 / 20
Operational Transparency
4.8 / 13
Agent readiness — 22/100 · agent aware
Machine-Readable Contract
18 / 18
Agentic Access Contract
10 / 10
MCP Server
0 / 12
Machine-Readable Auth
0 / 10
Idempotency
0 / 9
Stable Error Semantics
0 / 8
Request/Response Examples
0 / 7
Rate-Limit Signaling
7 / 7
Typed Event Surface
0 / 6
Agent Skills
0 / 5
Well-Known Catalog
0 / 4
Consent & Bot Identity
0 / 3
A2A Agent Card
0 / 8
Dry-Run / Simulate Mode
0 / 4
Individual APIs this provider publishes, each with its own machine-readable definition.
Open, tool-agnostic API collections (OpenAPI-derived and Bruno).
Published pricing tiers and plan structures.
Documented rate limits and quota policies.
Notable capabilities this provider offers.
Scroll for all 8
JSON-LD contexts and semantic vocabularies used across these APIs.
Spectral governance rulesets for linting and validating these APIs.
Standalone JSON Schema definitions for this provider's data models.
JSON Structure definitions describing this provider's data shapes.
Example request and response payloads for these APIs.
Authentication, domain security, vulnerability disclosure, and trust-center signals.
Recommended x-agentic-access execution contracts for AI agents.
What developers build with this provider.
Pre-built integrations with other platforms and tools.
Packaged solutions this provider offers.
Documentation 2
Reference material describing how the API behaves
Agent Surfaces 1
MCP servers, agent skills, and machine-readable catalogs
Design & Contract 2
Pagination, idempotency, versioning, errors, and events
Build 10
SDKs, sample code, and the tooling you integrate with
Scroll for all 10
Access & Security 1
Authentication, authorization, and security posture
Operate 1
Status, limits, changes, and where to get help
Commercial 2
Pricing, plans, and the legal terms of use
Company 1
The organization behind the API
Other 2
Properties that don't map to a standard resource type
Source (apis.yml)
aid: radio-browser
name: Radio Browser
description: Radio Browser is a free, community-driven directory of internet radio stations. The project publishes a public
REST API exposing the full catalog of stations along with category aggregates (countries, states, languages, tags, codecs),
click counting, voting, and station submission. Mirrors are discovered through a round-robin DNS pool (all.api.radio-browser.info)
and the canonical server software (radiobrowser-api-rust) is released under AGPL-3.0, so anyone can self-host an additional
mirror.
type: Index
accessModel:
pricing: free
onboarding: unknown
trial: false
try_now: false
public: false
label: Free
confidence: medium
source:
- plans
generated: '2026-07-22'
method: derived
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/radio-browser.png
tags:
- Music
- Radio
- Streaming
- Open Source
- Open Data
- Community
- Public APIs
- AGPL
url: https://raw.githubusercontent.com/api-evangelist/radio-browser/refs/heads/main/apis.yml
created: '2026-05-28'
modified: '2026-05-28'
specificationVersion: '0.20'
x-source: public-apis/public-apis
x-category: Music
x-type: opensource
x-tier: 3
x-tier-reason: bulk-registered-from-public-apis
apis:
- aid: radio-browser:radio-browser-categories-api
name: Radio Browser Categories API
description: Aggregated counts of countries, languages, tags, codecs, and states.
humanURL: https://api.radio-browser.info/
baseURL: https://de1.api.radio-browser.info
tags:
- Categories
properties:
- type: OpenAPI
url: openapi/radio-browser-categories-api-openapi.yml
- type: Documentation
url: https://api.radio-browser.info/
- type: APIReference
url: https://docs.radio-browser.info/
- type: JSONSchema
url: json-schema/radio-browser-station-schema.json
- type: JSONSchema
url: json-schema/radio-browser-category-schema.json
- type: JSONSchema
url: json-schema/radio-browser-stats-schema.json
- type: JSONStructure
url: json-structure/radio-browser-station-structure.json
- type: JSONStructure
url: json-structure/radio-browser-category-structure.json
- type: JSONLD
url: json-ld/radio-browser-context.jsonld
- type: Examples
url: examples/radio-browser-list-stations-example.json
- type: Examples
url: examples/radio-browser-search-stations-example.json
- type: Examples
url: examples/radio-browser-list-countries-example.json
- type: Examples
url: examples/radio-browser-list-tags-example.json
- type: Examples
url: examples/radio-browser-click-station-example.json
- type: Examples
url: examples/radio-browser-vote-station-example.json
- type: Examples
url: examples/radio-browser-get-stats-example.json
- type: Authentication
url: https://docs.radio-browser.info/
- type: RateLimits
url: rate-limits/radio-browser-rate-limits.yml
- aid: radio-browser:radio-browser-interactions-api
name: Radio Browser Interactions API
description: Click counting, voting, and station submission.
humanURL: https://api.radio-browser.info/
baseURL: https://de1.api.radio-browser.info
tags:
- Interactions
properties:
- type: OpenAPI
url: openapi/radio-browser-interactions-api-openapi.yml
- type: Documentation
url: https://api.radio-browser.info/
- type: APIReference
url: https://docs.radio-browser.info/
- type: JSONSchema
url: json-schema/radio-browser-station-schema.json
- type: JSONSchema
url: json-schema/radio-browser-category-schema.json
- type: JSONSchema
url: json-schema/radio-browser-stats-schema.json
- type: JSONStructure
url: json-structure/radio-browser-station-structure.json
- type: JSONStructure
url: json-structure/radio-browser-category-structure.json
- type: JSONLD
url: json-ld/radio-browser-context.jsonld
- type: Examples
url: examples/radio-browser-list-stations-example.json
- type: Examples
url: examples/radio-browser-search-stations-example.json
- type: Examples
url: examples/radio-browser-list-countries-example.json
- type: Examples
url: examples/radio-browser-list-tags-example.json
- type: Examples
url: examples/radio-browser-click-station-example.json
- type: Examples
url: examples/radio-browser-vote-station-example.json
- type: Examples
url: examples/radio-browser-get-stats-example.json
- type: Authentication
url: https://docs.radio-browser.info/
- type: RateLimits
url: rate-limits/radio-browser-rate-limits.yml
- aid: radio-browser:radio-browser-service-api
name: Radio Browser Service API
description: Server stats, mirror discovery, and configuration.
humanURL: https://api.radio-browser.info/
baseURL: https://de1.api.radio-browser.info
tags:
- Service
properties:
- type: OpenAPI
url: openapi/radio-browser-service-api-openapi.yml
- type: Documentation
url: https://api.radio-browser.info/
- type: APIReference
url: https://docs.radio-browser.info/
- type: JSONSchema
url: json-schema/radio-browser-station-schema.json
- type: JSONSchema
url: json-schema/radio-browser-category-schema.json
- type: JSONSchema
url: json-schema/radio-browser-stats-schema.json
- type: JSONStructure
url: json-structure/radio-browser-station-structure.json
- type: JSONStructure
url: json-structure/radio-browser-category-structure.json
- type: JSONLD
url: json-ld/radio-browser-context.jsonld
- type: Examples
url: examples/radio-browser-list-stations-example.json
- type: Examples
url: examples/radio-browser-search-stations-example.json
- type: Examples
url: examples/radio-browser-list-countries-example.json
- type: Examples
url: examples/radio-browser-list-tags-example.json
- type: Examples
url: examples/radio-browser-click-station-example.json
- type: Examples
url: examples/radio-browser-vote-station-example.json
- type: Examples
url: examples/radio-browser-get-stats-example.json
- type: Authentication
url: https://docs.radio-browser.info/
- type: RateLimits
url: rate-limits/radio-browser-rate-limits.yml
- aid: radio-browser:radio-browser-stations-api
name: Radio Browser Stations API
description: Browse, search, and list radio stations.
humanURL: https://api.radio-browser.info/
baseURL: https://de1.api.radio-browser.info
tags:
- Stations
properties:
- type: OpenAPI
url: openapi/radio-browser-stations-api-openapi.yml
- type: Documentation
url: https://api.radio-browser.info/
- type: APIReference
url: https://docs.radio-browser.info/
- type: JSONSchema
url: json-schema/radio-browser-station-schema.json
- type: JSONSchema
url: json-schema/radio-browser-category-schema.json
- type: JSONSchema
url: json-schema/radio-browser-stats-schema.json
- type: JSONStructure
url: json-structure/radio-browser-station-structure.json
- type: JSONStructure
url: json-structure/radio-browser-category-structure.json
- type: JSONLD
url: json-ld/radio-browser-context.jsonld
- type: Examples
url: examples/radio-browser-list-stations-example.json
- type: Examples
url: examples/radio-browser-search-stations-example.json
- type: Examples
url: examples/radio-browser-list-countries-example.json
- type: Examples
url: examples/radio-browser-list-tags-example.json
- type: Examples
url: examples/radio-browser-click-station-example.json
- type: Examples
url: examples/radio-browser-vote-station-example.json
- type: Examples
url: examples/radio-browser-get-stats-example.json
- type: Authentication
url: https://docs.radio-browser.info/
- type: RateLimits
url: rate-limits/radio-browser-rate-limits.yml
common:
- type: AgenticAccess
url: agentic-access/radio-browser-agentic-access.yml
- type: DomainSecurity
url: security/radio-browser-domain-security.yml
- type: Website
url: https://www.radio-browser.info/
- type: Documentation
url: https://api.radio-browser.info/
- type: APIReference
url: https://docs.radio-browser.info/
- type: GitHubOrganization
url: https://github.com/segler-alex
- type: GitHubRepository
url: https://github.com/segler-alex/radiobrowser-api-rust
description: Archived GitHub mirror of the canonical Rust server (now on GitLab).
- type: SourceCode
url: https://gitlab.com/radiobrowser/radiobrowser-api-rust
description: Canonical AGPL-3.0 server (Rust). Self-host to run your own mirror.
- type: HelmCharts
url: https://gitlab.com/radiobrowser/helm-charts
- type: License
url: https://www.gnu.org/licenses/agpl-3.0.html
description: AGPL-3.0 for the server software. Database is community-contributed.
- type: SpectralRules
url: rules/radio-browser-rules.yml
- type: Vocabulary
url: vocabulary/radio-browser-vocabulary.yml
- type: Plans
url: plans/radio-browser-plans-pricing.yml
- type: RateLimits
url: rate-limits/radio-browser-rate-limits.yml
- type: PublicAPIsListing
url: https://github.com/public-apis/public-apis
- type: SDKs
url: https://github.com/ivandotv/radio-browser-api
description: JavaScript/TypeScript wrapper (ivandotv/radio-browser-api).
- type: SDKs
url: https://github.com/andreztz/pyradios
description: Python client (andreztz/pyradios).
- type: SDKs
url: https://github.com/sfuhrm/radiobrowser4j
description: Java client (sfuhrm/radiobrowser4j).
- type: SDKs
url: https://github.com/nepodev/radio-browser
description: Node.js client (nepodev/radio-browser).
- type: SDKs
url: https://github.com/tomassasovsky/radio-browser-api.dart
description: Dart client (tomassasovsky/radio-browser-api.dart).
- type: SDKs
url: https://github.com/adinan-cenci/radio-browser
description: PHP client (adinan-cenci/radio-browser).
- type: SDKs
url: https://hexdocs.pm/radio_browser/
description: Elixir client (RadioBrowser on Hex).
- type: Features
data:
- name: Round-Robin Mirror Pool
description: Servers discovered via DNS resolution of all.api.radio-browser.info; clients pick a healthy mirror and fall
back as needed.
- name: Multiple Response Formats
description: JSON, XML, CSV, M3U, PLS, XSPF, and TTL output for nearly every read endpoint.
- name: Faceted Browse
description: List stations by country, country code, state, language, tag, or codec with station counts per facet.
- name: Continuous Stream Health Checks
description: Stations are automatically pinged to verify their stream is reachable; results power lastcheckok and broken-station
endpoints.
- name: Community Curation
description: Anyone can submit a station via POST /json/add; clicks and votes feed station popularity rankings.
- name: Open Source Server (AGPL-3.0)
description: The radiobrowser-api-rust server is open source; operators can self-host an additional mirror.
- name: Geo Coordinates
description: Stations carry optional geo_lat/geo_long for map-based discovery.
- name: Prometheus Metrics
description: Each mirror exposes /metrics in Prometheus exposition format for operational observability.
- type: UseCases
data:
- name: Internet Radio Player Apps
description: Power desktop, mobile, and web players that let users browse the directory and play streams.
- name: Voice Assistant Skills
description: Back Alexa/Google/Home Assistant skills that play "play jazz radio from France" requests by searching the
directory.
- name: Smart Speaker Integrations
description: Embedded firmware (e.g. AirMusic, Hama, internet radio hardware) ships Radio Browser as a station source.
- name: Music Discovery Research
description: Researchers analyze the catalog to study global radio programming, language distribution, and genre tagging.
- name: Streaming Health Dashboards
description: Use the /json/checks data to build dashboards showing global radio stream uptime.
- name: Editorial Curation
description: Editors use vote/click data to surface trending stations by country, language, or genre.
- type: Integrations
data:
- name: Home Assistant
description: Multiple custom components and the built-in Radio Browser integration use the API for station selection.
- name: VLC / Media Players
description: Media player extensions consume the API to populate radio station catalogs.
- name: Self-Hosted Mirrors
description: Operators run radiobrowser-api-rust to add to the all.api.radio-browser.info pool.
- name: Public APIs Directory
description: Listed in public-apis/public-apis under the Music category.
- type: Solutions
data:
- name: Hosted Community API
description: The free, hosted, AGPL-licensed Radio Browser mirror network — the default for most apps.
- name: Self-Hosted Mirror
description: Run radiobrowser-api-rust on your own infrastructure for guaranteed throughput, isolated data, or private
catalogs.
maintainers:
- FN: Kin Lane
email: kin@apievangelist.com