canonical: https://jentic.com/apis/npr.org/npr-sponsorship-service

# NPR Sponsorship Service

Jentic publishes the only available OpenAPI specification for NPR Sponsorship Service, keeping it validated and agent-ready. The NPR Sponsorship Service serves VAST-formatted sponsorship units to non-NPR-One client applications, allowing third-party players to request and report on NPR sponsorship audio. The two endpoints cover requesting a VAST sponsorship unit and recording playback tracking events. Authentication is OAuth 2.0 with credentials provisioned by NPR.

## For AI agents

Request VAST sponsorship audio units from NPR and record playback tracking events for non-NPR-One client applications.

## Scope

Does not handle editorial audio recommendations, listener profile, or NPR One client sponsorship - use for VAST sponsorship inventory and tracking in non-NPR-One partner applications only.

## Capabilities

- Request a VAST sponsorship audio unit for insertion into a non-NPR-One audio player
- Record VAST tracking events such as start, midpoint, and complete for a sponsorship unit
- Authenticate as a sponsorship-enabled NPR client via OAuth 2.0
- Operate sponsorship outside the NPR One client surface using the same backend logic

## Use cases

### Sponsorship in Partner Audio Apps

Partner apps that surface NPR audio outside the NPR One client request a VAST sponsorship unit before or between segments via GET `/v2/ads.` The response is a VAST XML payload that the partner audio player can render directly, ensuring NPR sponsorship inventory is delivered consistently across third-party surfaces.

Example prompt: Call GET `/v2/ads` with the partner application credentials before each NPR audio segment, parse the returned VAST XML, and play the sponsorship audio.

### VAST Tracking and Reporting

POST `/v2/ads` records VAST tracking events such as start, midpoint, and complete back to NPR. This closes the loop on sponsorship reporting, allowing NPR to attribute impressions and completions to the correct partner application and to ensure pacing across the sponsorship inventory.

Example prompt: On a complete event from the audio player, call POST `/v2/ads` with the VAST tracking payload to record the impression.

### Agent-Driven Sponsorship Insertion

An audio agent assembling a partner experience uses Jentic to fetch the next sponsorship unit before each segment and report tracking events afterwards. Because Jentic exposes both `/v2/ads` operations as discrete tools, the agent does not need to maintain VAST request logic or hand-rolled OAuth state.

Example prompt: Search Jentic for 'request npr sponsorship unit', execute GET `/v2/ads`, play the returned audio, then call POST `/v2/ads` with the tracking payload.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/v2/ads` | Request a VAST sponsorship unit |
| POST | `/v2/ads` | Record VAST tracking data for a sponsorship unit |

## Key resources

- **Ads** — Request VAST sponsorship units and record VAST tracking events

## Why Jentic

- **Setup:** Wiring the NPR Sponsorship Service by hand means carrying OAuth 2.0 partner credentials into calls to sponsorship.api.npr.org and handling VAST ad retrieval and tracking yourself. Through Jentic you install once, import the NPR Sponsorship Service from the API Directory, store the partner credentials once, and your agent calls it.
- **Permission scoping:** The sponsorship target here travels in the request and body rather than a URL path resource, so scope the agent to the operations it needs, such as requesting a sponsorship unit. You choose the operations it may call, so posting tracking events is not included unless you add it.
- **Credential handling:** Your NPR OAuth 2.0 partner 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.
- **Discovery method:** Agents search Jentic by intent such as 'request an NPR sponsorship unit', and Jentic returns the matching Sponsorship operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **NPR Authorization Service** — Issues the OAuth 2.0 tokens that the Sponsorship Service requires.
- **NPR Listening Service** — Pairs sponsorship insertion with the editorial audio queue from Listening.
- **YouTube Data API** — Different content surface with its own ad request and tracking flow.

## FAQ

### Why is there no official OpenAPI spec for NPR Sponsorship Service?

NPR does not publish an OpenAPI specification for the Sponsorship Service. Jentic generates and maintains this spec so that AI agents and developers can call NPR Sponsorship Service via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the NPR Sponsorship Service use?

The Sponsorship Service uses OAuth 2.0 with partner-scoped credentials provisioned by NPR for non-NPR-One client applications. Jentic stores the access token in its encrypted vault and injects it into the Authorization header on each `/v2/ads` call.

### Can I get a midroll sponsorship for a partner audio app with this service?

Yes. GET `/v2/ads` returns a VAST sponsorship unit ready for the partner audio player to render. Pair this with POST `/v2/ads` to record start, midpoint, and complete tracking events so NPR can attribute the impression.

### How do I record a sponsorship completion event through Jentic?

Search Jentic with 'record vast tracking npr', load POST `/v2/ads`, and execute it with the tracking payload from the audio player. NPR's reporting pipeline registers the impression against the partner application.

### Is the NPR Sponsorship Service intended for NPR One client apps?

No. NPR One client apps receive sponsorship through the main listening pipeline. This service is specifically for non-NPR-One client applications that need VAST sponsorship inventory and tracking, which is why it is documented at `/guide/app-experience/sponsorship/.`

### Can I limit what my agent is allowed to do with the NPR Sponsorship Service?

Yes. Because you run Jentic One yourself, your own rules decide which of the two operations your agent may call: requesting a VAST sponsorship unit with GET `/v2/ads`, recording tracking events with POST `/v2/ads`, or both. You can grant only GET `/v2/ads` so the agent can fetch sponsorship inventory but cannot post start, midpoint, or complete tracking events unless you add that operation. The OAuth 2.0 partner credentials are held by your instance and injected at execution time, so the agent scope is defined entirely by the operations you enable.
