PlatPhorm Podcasts API

Podcast Playlist API Documentation

Endpoints resolve podcast links, validate feeds, return playback metadata, create share packets, expose Web Status, and support MCP. Operator controls are governed by PLATPHORM_PROTECTED.

Feed sources

11

Archived entries

0

Audio episodes

0

Archive mode

degraded-memory

Operator Controls

Public user workflows stay key-free. When PLATPHORM_PROTECTED=1, operator write paths use the backend PlatPhorm key policy from Vercel environment variables.

Endpoint Inventory

/api/health

get · Public service health.

/api/v1/health

get · Versioned public service health.

/api/v1/feeds

get · List public feed sources.post · Persistent feed ingestion with runtime operator controls.

/api/v1/ingest

get · Describe public podcast indexing ingest.post · Persistent podcast/feed ingestion with runtime operator controls.

/api/v1/ingest/dry-run

post · Public dry-run URL resolution and feed parser evidence without server-side persistence.

/api/v1/resolve

get · Describe the URL resolver.post · Resolve RSS, Atom, JSON Feed, platform, episode, host, and direct audio URLs into playable or honestly degraded podcast records.

/api/v1/storage/status

get · Runtime storage mode and archive configuration status.

/api/v1/feeds/{id}

get · Get a feed source.put · Non-destructive feed source update status with runtime operator controls.delete · Non-destructive archive request with runtime operator controls.

/api/v1/feeds/{id}/sync

post · Public resync of an indexed public feed source.

/api/v1/feeds/{id}/refresh

post · Scheduled or persistent feed refresh with runtime operator controls.

/api/v1/feeds/{id}/entries

get · List entries for one feed.

/api/v1/feeds/{id}/status

get · Get feed sync and archive status.

/api/v1/entries

get · List archived entries.

/api/v1/entries/search

get · Search archived entries.

/api/v1/entries/recent

get · List recent archived entries.

/api/v1/entries/archive

get · List archive entries and policy.

/api/v1/entries/{id}

get · Read one archived entry.

/api/v1/shows

get · List podcast shows/feed sources.

/api/v1/shows/{id}

get · Read one show.

/api/v1/shows/{id}/episodes

get · List show episodes.

/api/v1/episodes

get · List audio episodes.

/api/v1/episodes/{id}

get · Read one audio episode.

/api/v1/episodes/{id}/playback-url

get · Resolve a public remote or saved media playback URL for an episode.

/api/v1/episodes/{id}/archive

post · Saved media archive of a public remote audio enclosure with runtime operator controls.

/api/v1/episodes/{id}/score-emoji

post · Emoji scoring adapter with runtime operator controls. No score is claimed without an upstream Emoji response.

/api/v1/playlists

get · List public or local-compatible playlist records when persistence exists.post · Create an ephemeral playlist record; durable server persistence reports its runtime state.

/api/v1/playlists/{id}

get · Read one playlist record.put · Durable playlist persistence update with runtime operator controls.

/api/v1/playlists/{id}/items

post · Add an item to an ephemeral playlist record.

/api/v1/share

post · Create a public-safe share packet for an episode, clip, or playlist.

/api/v1/shares/{id}

get · Read a packet share page payload when encoded in the share id.

/api/v1/clip/dry-run

post · Create a local clip preview without saving an artifact.

/api/v1/clip

post · Saved clip generation with runtime operator controls and honest degraded state.

/api/v1/clips

get · List saved clips when configured.

/api/v1/clips/{id}

get · Read one saved clip manifest.

/api/v1/search

get · Search feed sources, episodes, and entries from real archive state.

/api/v1/categories

get · List categories from real feed and entry state.

/api/v1/tags

get · List tags from real feed and entry state.

/api/v1/sources

get · List feed sources.

/api/v1/validate/feed

post · Public feed validation dry-run with parser evidence.

/api/v1/validate/xml

post · XML validation adapter with local preflight; no external validation is claimed without service evidence.

/api/v1/validate/json

post · JSON validation adapter with local preflight; no external validation is claimed without service evidence.

/api/v1/integrations/status

get · Public-safe integration status for XML, JSON, Emoji, OpenContent, API analytics, and media storage.

/api/v1/status

get · Podcast product and Web Status summary.

/api/v1/opml/export

get · Export public feed sources as OPML.

/api/v1/opml/import

post · Public OPML import for public feed indexing.

/api/web/status

get · Web Status payload using schema web.status.v1.

/api/web/manifest

get · Public Web manifest for Podcasts.

/api/web/scorecard

get · Public Web scorecard.

/api/web/fingerprints

get · Public-safe fingerprints for routes, LLMS, OpenAPI, AsyncAPI, MCP, and policies.

/api/provenance/lookup

get · Public provenance lookup.

/api/provenance/verify

get · Public provenance verification.

/api/graph

get · Podcast graph nodes and edges.

/api/network/graph

get · Podcast graph exposed at network graph route.

/api/mcp

get · MCP metadata.post · JSON-RPC 2.0 MCP endpoint.

Operator-Controlled Actions

  • Operator-controlled persistent ingest when PLATPHORM_PROTECTED=1
  • Operator-controlled feed refresh and network sync when PLATPHORM_PROTECTED=1
  • Operator-controlled saved media and clip artifacts when PLATPHORM_PROTECTED=1
  • Operator-controlled publishing, report export, eval, browser journey, workflow, trace, catalog, and private report actions when PLATPHORM_PROTECTED=1
  • MCP operator tool calls when PLATPHORM_PROTECTED=1

Integration State

trace
trace-linked ingestion headers supported; export is degraded unless PLATPHORM_TRACE_EXPORT_ENABLED=true
mcp
https://podcasts.platphormnews.com/api/mcp
xml
XML validation adapter exists; external validation is not claimed without a real XML service response
json
JSON validation adapter exists; external validation is not claimed without a real JSON service response
emoji
Emoji scoring adapter exists; scores are unavailable unless the Emoji service returns a real score
opencontent
OpenContent publish is only reported after upstream confirmation
apiAnalytics
API analytics delivery is not claimed unless api.platphormnews.com confirms the event
docs
report creation is degraded until docs integration credentials are configured
sheets
report creation is degraded until sheets integration credentials are configured
decks
summary creation is degraded until decks integration credentials are configured
browserops
public navigation can be tested by BrowserOps; triggers follow PLATPHORM_PROTECTED runtime policy