{"schema_version":"1.0","service":"platphorm-podcasts","baseUrl":"https://podcasts.platphormnews.com","domainAllowlist":["platphormnews.com","*.platphormnews.com","innovativefuturesolutions.com","*.innovativefuturesolutions.com"],"auth":{"protectionEnv":"PLATPHORM_PROTECTED","operatorModeEnabled":true,"backendKey":"PLATPHORM_API_KEY","acceptedHeaders":["Authorization: Bearer $PLATPHORM_API_KEY","X-PlatPhorm-API-Key: $PLATPHORM_API_KEY"],"note":"The backend key is a server-side Vercel environment value and is not shown in public UI."},"publicReadOnlyAccess":["homepage paste-link resolver","public D1-backed playlist builder","browser-local draft queue","local clip preview","public share packet pages","search","library","feed and episode pages","audio playback for public feeds and public platform episode pages","public feed validation dry-run","public OPML export","categories and tags","RSS/Atom/feed outputs","discovery files","graph files","Web Status","health summaries","read-only MCP introspection"],"operatorActions":["Operator-controlled persistent ingest when PLATPHORM_PROTECTED=1","Operator-controlled feed refresh and network sync when PLATPHORM_PROTECTED=1","Operator-controlled RSSCloud registration and renewal 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"],"permanentArchivePolicy":"Public flow resolves metadata and streams original audio remotely. Persistent server-side ingest, saved media, publishing, exports, evals, browser journeys, workflows, trace, catalog, and private reports follow PLATPHORM_PROTECTED runtime policy. Without configured persistence the UI reports local queue and remote_streaming_only mode.","localPreferencePersistencePolicy":"Browser storage may hold only non-sensitive UI preferences, public feed favorites, selected station, queue, and playback settings. Keys, private feeds, cookies, and session tokens are not stored in browser storage.","trustedDomainPolicy":"PlatPhorm network discovery trusts *.platphormnews.com and *.innovativefuturesolutions.com. External public feed URLs pass HTTPS, DNS, redirect, timeout, and response-size checks before fetch.","routeStandard":["/","/listen","/library","/live","/search","/submit","/add-feed","/resolve","/feeds","/episodes","/queue","/playlists","/clips","/archive","/archive/status","/integrations","/docs","/faq","/privacy","/terms","/security","/data","/agents","/trust","/web","/web/status","/web/fingerprints","/web/provenance","/api/health","/api/v1/health","/api/v1/status","/api/v1/storage/status","/api/v1/discovery","/api/v1/metrics","/api/v1/resolve","/api/v1/imports/[id]","/api/v1/ingest/dry-run","/api/v1/feeds","/api/v1/feeds/[id]","/api/v1/feeds/[id]/episodes","/api/v1/episodes","/api/v1/shares/[id]","/api/v1/validate/feed","/api/v1/validate/xml","/api/v1/validate/json","/api/v1/search","/api/v1/media/search","/api/v1/media/recent","/api/v1/media/[id]","/api/v1/radio/stations","/api/v1/live/channels","/api/v1/playback/resolve","/api/v1/analysis","/api/ai/chat","/api/ai/analyze","/api/ai/recommend","/api/v1/integrations/status","/api/web/status","/api/web/manifest","/api/web/scorecard","/api/web/fingerprints","/api/docs","/openapi.yaml","/openapi.json","/asyncapi.yaml","/llms.txt","/llms-full.txt","/llms-index.json","/agents.md","/rss.xml","/feed.xml","/atom.xml","/feed.json","/sitemap.xml","/sitemap-main.xml","/sitemap-index.xml","/sitemap-network.xml","/sitemap-full.xml","/robots.txt","/manifest.webmanifest","/graph.json","/podcasts.graph.json","/api/graph","/api/network/graph","/api/mcp","/.well-known/web.json","/.well-known/web4.json","/.well-known/mcp.json","/.well-known/agents.json","/.well-known/api-catalog","/.well-known/agent-policy.json","/.well-known/ai-policy.json","/.well-known/security.txt","/.well-known/trust.json","/.well-known/provenance.json"],"vercelMetadataPolicy":"Safe Vercel request metadata may be captured with IP values hashed or rounded. Operator keys, cookies, tokens, and raw bodies are not stored.","tracePropagationPolicy":"W3C traceparent/tracestate and safe X-PlatPhorm trace headers are accepted and propagated on outbound platform calls.","dataExposurePolicy":"Public views expose only public feed metadata, public entries, public enclosures, public health, and public compliance summaries.","securityContact":"security@platphormnews.com","requiredTrustLine":"Web dashboard, public-safe discovery, browser-based operations, trusted-domain discovery, standard route compliance, Vercel metadata capture, trace inspection, and agentic workflow discovery are intentionally supported for public read-only debugging and operator workflows. Mutating, administrative, ingestion, replay, fork, remediation, deployment, sync, test-triggering, reporting, and write actions require PLATPHORM_API_KEY. For this public media library, ingestion in that baseline means bulk or administrative ingestion: one-at-a-time public URL submission, grounded analysis, recommendations, discovery, and playback metadata remain public without a user key. Deletion, bulk insertion/import, publishing, replay, and raw backend writes require PLATPHORM_API_KEY.","operatorControlPolicy":"PLATPHORM_PROTECTED controls operator mode; enabled write paths enforce server-side PLATPHORM_API_KEY."}