For Agents
Build NPR One listening experiences end-to-end: authenticate, fetch personalised recommendations, search audio, rate playback, and manage stations and profile.
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the NPR One API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with NPR One API API.
Get a personalised audio recommendation queue for the logged-in NPR One listener
Submit a rating or interaction event to refine future recommendations
Search NPR audio content for matching episodes and aggregations
Read and update the authenticated listener's profile
GET STARTED
Use for: I need to play the next NPR One recommendation for the listener, Submit a completion rating for an episode that just finished playing, Search NPR One for audio about the federal budget, Find NPR member stations near a given ZIP code
Not supported: Does not handle music streaming rights, third-party podcast hosting, or sponsorship inventory — use for the NPR One personalised public-radio experience only.
Jentic publishes the only available OpenAPI document for NPR One API, keeping it validated and agent-ready.
Jentic publishes the only available OpenAPI specification for NPR One API, keeping it validated and agent-ready. The NPR One API is a unified surface across the four NPR One sub-services — Listening, Identity, Stations, and Authorization — that together power the NPR One personalised public-radio experience. It exposes recommendation queues, ratings, search, listening history, listener profile read and update, station search, and OAuth 2.0 authorize and token endpoints. Authentication is OAuth 2.0 bearer for user-facing endpoints, with the authorize and token endpoints handled directly under this API.
Search NPR member stations by call sign or location to set as the listener's home station
Run OAuth 2.0 authorize and token exchanges to obtain a bearer token for the platform
Retrieve recent listening history and the listener's available channels
Patterns agents use NPR One API API for, with concrete tasks.
★ Full NPR One Client App Backend
An NPR One client on iOS, Android, or a smart speaker uses this single unified API to handle authentication, the personalised recommendation queue, ratings, and station search. Building against one cross-service spec is significantly simpler than wiring each NPR sub-service separately, which is the canonical reason apps consume the NPR One API rather than the underlying Listening, Identity, Stations, and Authorization services individually.
Authenticate with POST /v2/token, call GET /v2/recommendations to fill the play queue, then submit POST /v2/ratings as each item finishes.
Personalised Search and Discovery
Listeners often hunt for a specific topic, host, or show. GET /v2/search/recommendations returns a ranked list of audio and aggregation items matching a query, while GET /v2/stations supports finding a local member station to anchor the listener's recommendation profile.
Call GET /v2/search/recommendations with q=federal budget, then on a station-switch intent call GET /v2/stations with the listener's ZIP.
Profile and Station Management
GET /v2/user reads the listener's profile and PUT /v2/user updates display name and preferences. Combined with GET /v2/stations for station search, this is enough to power a settings screen end-to-end inside an NPR One client app.
Read the profile with GET /v2/user, then update display name and notification settings via PUT /v2/user.
Agent-Driven Smart Speaker Listening
A voice assistant agent handles a 'play NPR' intent by exchanging an OAuth code for a token, fetching the next recommendation, playing it, and submitting a completion rating. Because Jentic exposes each NPR One operation discretely, the agent does not need to chain low-level OAuth and recommendation logic by hand.
Search Jentic for 'play the next npr one episode', execute POST /v2/token then GET /v2/recommendations, play the first item, then POST /v2/ratings on completion.
10 endpoints — jentic publishes the only available openapi specification for npr one api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/v2/recommendations
Get personalised audio recommendations
/v2/ratings
Send a rating or interaction event
/v2/channels
Get available listening channels
/v2/history
Get listening history
/v2/search/recommendations
Search for audio content
/v2/user
Get the authenticated user's profile
/v2/user
Update the user's profile
/v2/stations
Search for NPR member stations
/v2/recommendations
Get personalised audio recommendations
/v2/ratings
Send a rating or interaction event
/v2/channels
Get available listening channels
/v2/history
Get listening history
/v2/search/recommendations
Search for audio content
Three things that make agents converge on Jentic-routed access.
Credential isolation
OAuth 2.0 bearer tokens for the NPR One platform are stored in the Jentic vault and injected into the Authorization header on each call. The agent context never holds the raw bearer token, which matters because the same token grants access to listener profile data.
Intent-based discovery
Agents search Jentic with intents like 'play the next npr one episode' or 'find an npr station' and Jentic returns the matching NPR One operation with its input schema, so the right endpoint is selected without inspecting the spec.
Time to first call
Direct NPR One integration: 2-4 days to wire OAuth, recommendations, ratings, and station search. Through Jentic: under an hour once the bearer token is in the vault — search, load schema, execute.
Alternatives and complements available in the Jentic catalogue.
NPR Authorization Service
Standalone OAuth 2.0 server backing NPR One; useful when you only need auth.
Use the Authorization Service directly if you only need token issuance without the rest of NPR One.
NPR Listening Service
Standalone listening sub-service if you only need recommendations and ratings.
Use Listening directly when you do not need profile, station, or auth endpoints in the same surface.
Spotify Web API
General-purpose music and podcast streaming with its own recommendations.
Choose Spotify when the listener wants music or third-party podcasts beyond NPR's curated public-radio output.
YouTube Data API
Broad video and audio content discovery beyond public radio.
Choose YouTube when the listener wants any creator content, not curated NPR audio.
Specific to using NPR One API API through Jentic.
Why is there no official OpenAPI spec for NPR One API?
NPR publishes developer documentation but not a full OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call NPR One API via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the NPR One API use?
User-facing endpoints accept an OAuth 2.0 bearer access token, and the authorize and token endpoints under /v2 handle the OAuth flow itself. Jentic stores the bearer token in its encrypted vault and injects it into the Authorization header on each call.
Can I get personalised audio recommendations with the NPR One API?
Yes. GET /v2/recommendations returns a personalised queue tied to the bearer token's listener, and POST /v2/ratings feeds completion, skip, and share events back into the recommendation engine to shape future calls.
How do I find an NPR member station with the NPR One API through Jentic?
Search Jentic with 'find npr member station', load GET /v2/stations, and execute it with a ZIP code or call sign. The response lists matching stations, which you can then set as the listener's home station via the profile update endpoint.
Does the NPR One API include OAuth 2.0 endpoints?
Yes. GET /v2/authorize starts the OAuth 2.0 authorization flow and POST /v2/token exchanges an authorization code for a bearer access token. These mirror the standalone NPR Authorization Service and let you complete the full sign-in loop without leaving the unified NPR One API.
/v2/user
Get the authenticated user's profile
/v2/user
Update the user's profile
/v2/stations
Search for NPR member stations