Skip to content

Developers

PodcasterPlus ships a public, read-only JSON API and an embeddable audio player you can drop into any website. No account, no API key, no sign-up: if a show is published on PodcasterPlus, you can read it and embed it.

Know what the API is (and isn't)

  • Read-only. Every public endpoint answers GET, HEAD, and OPTIONS only. There are no write endpoints.
  • Keyless. No authentication is required. An auth scheme is reserved for future endpoints, but v1 read endpoints ignore any credentials you send.
  • Published content only. The API exposes exactly what a show's public RSS feed and listen pages already expose: published episodes of active, PodcasterPlus-hosted shows. Drafts, scheduled episodes, and private data are never returned.
  • Browser-friendly. CORS is open (Access-Control-Allow-Origin: *), so you can call it directly from client-side JavaScript on any origin.
  • Fair use. There are no hard published quotas, but abusive traffic is rate limited at the edge. See fair-use limits.

Start with the base URL

https://api.podcasterplus.com/v1

All endpoints are versioned under the /v1 path prefix. Additive changes (new fields, new endpoints) land in v1 without notice; breaking changes only ever ship as a new version. Read the versioning policy for the guarantees.

Fetch a podcast

bash
curl https://api.podcasterplus.com/v1/podcasts/acme-radio-hour
json
{
	"data": {
		"id": "b7e4c1a0-5f2d-4e8a-9c3b-1d6f8a2e4c90",
		"slug": "acme-radio-hour",
		"title": "The Acme Radio Hour",
		"author": "Jess Doe",
		"episode_count": 42,
		"links": {
			"listen": "https://listen.podcasterplus.com/acme-radio-hour",
			"feed": "https://feed.podcasterplus.com/acme-radio-hour"
		}
	}
}

(Response truncated; see the full payload reference.)

Embed a player in two lines

Paste this anywhere HTML is allowed. The player fetches episode data from the API and renders directly in your page:

html
<script async src="https://embed.podcasterplus.com/player/v1.js"></script>
<podcasterplus-player episode="3f9d2b6e-8c41-4a57-b2f0-6e5d4c3b2a19"></podcasterplus-player>

Or embed a whole show, so the player always plays the newest episode:

html
<script async src="https://embed.podcasterplus.com/player/v1.js"></script>
<podcasterplus-player podcast="acme-radio-hour"></podcasterplus-player>

Full attribute reference, iframe fallback, and oEmbed support are on the embedded player page.

Get ready-made embed code from the dashboard

If you host on PodcasterPlus, you don't need to hand-write embeds: every published episode has a Share & embed card in the episode editor, and Settings → Distribution has a show-level embed builder. See Share and embed your episodes.

Explore the docs

  • API reference: every v1 endpoint, with request conventions, payload shapes, errors, pagination, and caching.
  • Embedded player: the <podcasterplus-player> web component, iframe fallback, theming, and oEmbed.
  • Webhooks: HTTP callbacks from your automations, with magic-tag payloads.
  • Versioning & policies: versioning and deprecation guarantees, the reserved auth scheme, fair-use limits, and the changelog.

Was this page helpful?