For Agents
Read and update an NPR One listener's profile, station preferences, and follow list, plus inherit listening data from temporary accounts.
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the NPR Identity Service, 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 Identity Service API.
Get the logged-in listener's NPR One profile, including follows and favorite stations
Update which programs, podcasts, or topics a listener follows
Set or replace the listener's favorite NPR member station(s)
Copy listening history from a temporary user into a logged-in account on first sign-in
GET STARTED
Use for: I need to read the logged-in NPR One listener's profile, Update the listener's favorite NPR member station, Follow a new podcast on behalf of the listener, Migrate listening history from a guest account to a signed-in account
Not supported: Does not handle audio recommendations, OAuth token issuance, or sponsorship — use for NPR One listener profile, follows, and station preferences only.
Jentic publishes the only available OpenAPI document for NPR Identity Service, keeping it validated and agent-ready.
Jentic publishes the only available OpenAPI specification for NPR Identity Service, keeping it validated and agent-ready. The NPR Identity Service is the entry point for user-specific information across the NPR One platform. It exposes the listener's profile, lets the listener follow programs and topics, manages favorite NPR member stations, copies listening data from a temporary account into a permanent one, and supports account deletion. All endpoints require an OAuth 2.0 access token issued by the NPR Authorization Service.
Delete the listener's NPR One account on user request
Patterns agents use NPR Identity Service API for, with concrete tasks.
★ Personalised NPR One Profile UI
An NPR One client app loads the listener's profile on launch to render the home screen — favorite station, followed programs, and recent activity. GET /v2/user returns the full profile in one call so the app can hydrate the UI without chaining multiple requests, and PUT /v2/stations updates the favorite when the listener changes city.
Call GET /v2/user with the listener's access token, then PUT /v2/stations with the new favorite call sign when the listener relocates.
Onboarding from Guest to Signed-In
A first-time NPR One listener may stream as a guest before signing in. POST /v2/user/inherit copies their guest listening history into the new permanent account so recommendations don't reset to zero. This dramatically improves day-one personalization for newly signed-in users.
After the listener signs in, call POST /v2/user/inherit with the temporary user's identifier so the new account inherits the existing recommendation profile.
Account Deletion on Request
Privacy regulations and listener expectation demand a path to fully delete an account. DELETE /v2/user removes the NPR One account associated with the bearer token, providing an end-to-end self-service delete flow that NPR One client apps wire to a settings screen.
On listener confirmation, call DELETE /v2/user with their access token and present a confirmation that the account has been removed.
Agent-Driven Profile Maintenance
A voice assistant agent receives a request like 'follow Planet Money' and uses Jentic to call POST /v2/following without hand-rolling the request body. The agent then re-reads the profile to confirm the follow has taken effect before responding to the listener.
Search Jentic for 'follow an npr program', execute POST /v2/following with the program identifier, then GET /v2/user to confirm the follow appears in the listener's profile.
5 endpoints — jentic publishes the only available openapi specification for npr identity service, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/v2/user
Get the logged-in listener's profile
/v2/user
Delete the listener's NPR One account
/v2/user/inherit
Copy listening data from a temporary user into the logged-in account
/v2/following
Update what the listener is following
/v2/stations
Update the listener's favorite station(s)
/v2/user
Get the logged-in listener's profile
/v2/user
Delete the listener's NPR One account
/v2/user/inherit
Copy listening data from a temporary user into the logged-in account
/v2/following
Update what the listener is following
/v2/stations
Update the listener's favorite station(s)
Three things that make agents converge on Jentic-routed access.
Credential isolation
OAuth 2.0 access tokens issued by the NPR Authorization Service are stored in the Jentic vault and injected into the Authorization header on each Identity call. The agent context never includes the raw bearer token.
Intent-based discovery
Agents search Jentic with intents like 'get the logged-in npr listener profile' and Jentic returns GET /v2/user with its input schema, so listener-facing flows are wired without reading documentation.
Time to first call
Direct NPR Identity integration: 1-2 days alongside Authorization. Through Jentic: under an hour once a token is in the vault — search, load schema, execute.
Alternatives and complements available in the Jentic catalogue.
NPR Authorization Service
Issues the OAuth 2.0 tokens that the Identity Service requires on every call.
Call Authorization first to obtain a token, then use it with Identity to read or update the profile.
NPR Listening Service
Returns audio recommendations shaped by the profile and follows held in Identity.
Use Listening after Identity to fetch personalised audio for the same listener.
Auth0
General-purpose user directory and authentication platform; not tied to NPR One.
Choose Auth0 when building user identity for a non-NPR application.
Okta
Enterprise identity directory for workforce or customer identity outside NPR.
Choose Okta when the use case is workforce SSO or non-NPR consumer identity.
Specific to using NPR Identity Service API through Jentic.
Why is there no official OpenAPI spec for NPR Identity Service?
NPR does not publish an OpenAPI specification for the Identity Service. Jentic generates and maintains this spec so that AI agents and developers can call NPR Identity Service 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 Identity Service use?
Every endpoint requires an OAuth 2.0 bearer access token issued by the NPR Authorization Service at https://authorization.api.npr.org. Jentic holds the access token in its encrypted vault and injects it into the Authorization header — agents never see the raw token.
Can I update a listener's favorite station with the NPR Identity Service?
Yes. PUT /v2/stations updates the listener's favorite NPR member station(s). Use this when a listener relocates or wants to switch their primary station — the change feeds directly into the Listening Service's recommendation logic.
How do I follow a podcast on behalf of an NPR One listener through Jentic?
Search Jentic with 'follow an npr program', load POST /v2/following, and execute it with the listener's access token plus the program identifier. The follow appears immediately in subsequent GET /v2/user responses.
Does the NPR Identity Service let me delete a user account?
Yes. DELETE /v2/user removes the NPR One account tied to the access token used in the request. This supports user-initiated account deletion from a settings screen and is the canonical path for honoring erasure requests.