overlay: 1.0.0
info:
title: API Evangelist enhancements — Blubrry Podcast Hosting & Statistics API
version: 1.0.0
extends: openapi/blubrry-api-restful-api-for-podcast-publishing-statistics-podcaster-openapi.yaml
x-generated: '2026-09-06'
x-method: generated
x-source: https://blubrry.com/developer/api/podcaster.yaml + https://blubrry.com/developer/api/oauth-2/
x-note: Non-destructive Overlay 1.0.0 capturing the API Evangelist enrichment of Blubrry's own contract.
Every value here is traceable to Blubrry's published documentation or to a live probe recorded in this
repository; nothing is invented, and the original spec is not mutated.
actions:
- target: $.components
description: Blubrry documents OAuth 2.0 on https://blubrry.com/developer/api/oauth-2/ but the published
contract declares no securitySchemes. Add the documented scheme so the contract states its own auth
model.
update:
securitySchemes:
OAuth2:
type: oauth2
description: OAuth 2.0 authorization-code. Client ID/secret are created from Manage Account ->
Developers -> Create API Key. Access tokens expire after 1 hour; refresh tokens do not expire
but can be revoked. No scopes are supported. Documented at https://blubrry.com/developer/api/oauth-2/
flows:
authorizationCode:
authorizationUrl: https://api.blubrry.com/oauth2/authorize
tokenUrl: https://api.blubrry.com/oauth2/token
refreshUrl: https://api.blubrry.com/oauth2/token
scopes: {}
- target: $
description: Apply the documented OAuth 2.0 requirement to every operation; the API rejects unauthenticated
calls with 401.
update:
security:
- OAuth2: []
- target: $.info
description: Record the provenance, the authoritative source of this contract, and the enrichment artifacts
derived from it.
update:
x-apis-io-source: https://blubrry.com/developer/api/podcaster.yaml
x-apis-io-provider: blubrry-api-restful-api-for-podcast-publishing-statistics
x-apis-io-artifacts:
- conventions/blubrry-api-restful-api-for-podcast-publishing-statistics-conventions.yml
- errors/blubrry-api-restful-api-for-podcast-publishing-statistics-problem-types.yml
- data-model/blubrry-api-restful-api-for-podcast-publishing-statistics-data-model.yml
- lifecycle/blubrry-api-restful-api-for-podcast-publishing-statistics-lifecycle.yml
- conformance/blubrry-api-restful-api-for-podcast-publishing-statistics-conformance.yml
- target: $.info
description: 'State the runtime facts the contract omits: no published rate limits, no rate-limit response
headers, no idempotency mechanism on the 8 mutating operations, and no delete-episode operation (addEpisode
is irreversible through the API).'
update:
x-rate-limits:
documented: false
headers: []
status_on_exhaustion: null
source: rate-limits/blubrry-api-restful-api-for-podcast-publishing-statistics-rate-limits.yml
x-idempotency:
supported: false
coverage: none
source: conventions/blubrry-api-restful-api-for-podcast-publishing-statistics-conventions.yml
x-reversibility:
grade: documented
coverage: partial
source: conventions/blubrry-api-restful-api-for-podcast-publishing-statistics-conventions.yml
- target: $.paths['/stats/{keyword}/totals.json'].get
description: The summary says "(Deprecated)" but the OpenAPI deprecated flag is not set, so tooling
that reads the flag cannot see it. Set it.
update:
deprecated: true
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.