Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the NPR Station Finder 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.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fnpr.org%2Fstation-finder" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fnpr.org%2Fstation-finder" | 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 Station Finder Service API.
Search NPR member stations by latitude, longitude, ZIP, city, or state
Retrieve a single station's full profile via GET /v3/stations/{stationId}
Surface live audio stream URLs for HD and standard NPR broadcasts
Expose donation and pledge URLs scoped to each member station
Return programming and call-sign metadata for downstream client apps
GET STARTED
Patterns agents use NPR Station Finder Service API for, with concrete tasks.
★ Local Station Resolution in NPR-Powered Apps
News apps and smart speakers use the Station Finder to translate a listener's coordinates into the right local NPR affiliate, returning the live stream URL needed to start playback. The /v3/stations endpoint accepts lat/lon and ZIP queries and ranks results so the top match represents the listener's primary local station, with no client-side station database required.
Call GET /v3/stations with lat=37.7749&lon=-122.4194 and return the streamUrl of the top KQED result
Pledge-Drive Donation Routing
During NPR pledge drives, third-party apps must route donation buttons to each listener's correct local affiliate. The Station Finder returns a donationUrl per station, so the app can deep-link the user to the right pledge portal without hardcoded mappings. This is essential for compliance with NPR's member-station revenue-share model.
Resolve the listener's station via GET /v3/stations/{stationId}=305 and surface donationUrl in the in-app pledge button
AI Agent Public Radio Discovery via Jentic
Voice agents and chat assistants use Jentic to find the Station Finder, search for stations matching a location intent, and execute the call with isolated OAuth credentials. The agent never holds NPR client secrets, but can resolve "play my local public radio" into a concrete /v3/stations request and a stream URL.
Use Jentic to search 'find my local NPR station', load /v3/stations, and execute it with the user's geolocation
2 endpoints — the npr station finder service resolves geographic, zip, or station id lookups into structured npr member station data.
METHOD
PATH
DESCRIPTION
/v3/stations
Search NPR member stations by location or other criteria
/v3/stations/{stationId}
Retrieve a specific NPR member station's profile
/v3/stations
Search NPR member stations by location or other criteria
/v3/stations/{stationId}
Retrieve a specific NPR member station's profile
What agents get from Jentic-routed access to this vendor.
Setup
Wiring the NPR Station Finder Service by hand means carrying OAuth credentials into calls to station.api.npr.org and mapping the station lookup and metadata operations yourself. Through Jentic you install once, import the NPR Station Finder Service from the API Directory, store the credentials once, and your agent calls it.
Permission scoping
This service puts the station id in the URL path (/v3/stations/{stationId}), so a rule can pin your agent to one station and nothing else. Both operations here are read-only lookups, so you choose whether the agent lists stations, reads a single station, or both.
Credential isolation
Your NPR OAuth client credentials are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'find my local NPR station', and Jentic returns the GET /v3/stations operation with its query schema so the agent calls the right endpoint without browsing the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using NPR Station Finder Service API through Jentic.
What authentication does the NPR Station Finder use?
It uses OAuth 2.0 authorization code flow against https://authorization.api.npr.org/v2/token, with scopes including identity.readonly and listening.readonly. Through Jentic, OAuth client credentials are vaulted and only short-lived tokens reach agent execution context.
Can I look up NPR stations by ZIP code with the NPR Station Finder?
Yes. GET /v3/stations accepts ZIP, city, state, and lat/lon parameters and returns ranked station matches with stream URLs and donation pages.
What are the rate limits for the NPR Station Finder?
NPR's developer documentation at https://dev.npr.org/guide/services/station-finder does not publish a hard rate limit, but partner apps are expected to cache station results since the data updates infrequently.
How do I retrieve a single NPR station's profile through Jentic?
Search Jentic for 'NPR station details by ID', load the GET /v3/stations/{stationId} schema, and execute with the numeric station ID. The flow is pip install jentic, then await client.search, load, and execute.
Is the NPR Station Finder free to use?
Access requires registering an OAuth client at https://dev.npr.org. NPR does not charge for the API but limits use to apps under its NPR One Enterprise terms.
Can I limit what my agent is allowed to do with the NPR Station Finder API?
Yes. Because you run Jentic One yourself, your own rules decide which of this API's operations and credentials the agent may use. Both operations here are read-only lookups, so you can allow the agent to search stations with GET /v3/stations, read one station with GET /v3/stations/{stationId}, or both. Since the station id sits in the URL path, a rule can pin the agent to a single station and block everything else.
Know of an official OpenAPI document? Contribute it →
For Agents
Resolve a listener's location or station ID into NPR member station metadata, including stream URLs and donation pages. Two operations under /v3/stations.
Use for: Find the closest NPR member station to a ZIP code, Get the live stream URL for KQED San Francisco, Search for NPR stations in Texas, Retrieve full station details for station ID 412
Not supported: Does not handle audio playback, podcast search, or sponsorship insertion - use for NPR member station lookup and metadata only.
The NPR Station Finder service resolves geographic, ZIP, or station ID lookups into structured NPR member station data. It returns each station's call sign, frequency, broadcast streams, member affiliations, and donation portal URL. Two endpoints under /v3/stations cover both list-search and single-station retrieval, making it the canonical way to render the right local NPR station inside listener-facing apps.