{ "opencollection": "1.0.0", "info": { "name": "Podbean Analytics Authentication API", "version": "1.0" }, "request": { "auth": { "type": "oauth2", "flow": "client_credentials", "accessTokenUrl": "https://api.podbean.com/v1/oauth/token", "credentials": { "clientId": "{{clientId}}", "clientSecret": "{{clientSecret}}" } } }, "items": [ { "info": { "name": "Authentication", "type": "folder" }, "items": [ { "info": { "name": "OAuth 2.0 login dialog", "type": "http" }, "http": { "method": "GET", "url": "https://api.podbean.com/v1/dialog/oauth", "params": [ { "name": "client_id", "value": "", "type": "query" }, { "name": "redirect_uri", "value": "", "type": "query" }, { "name": "response_type", "value": "", "type": "query" }, { "name": "scope", "value": "", "type": "query" }, { "name": "state", "value": "", "type": "query" } ] }, "docs": "Redirect the user here to authorize a third-party app. On approval, Podbean redirects back to the app's redirect_uri with an authorization code to exchange at /oauth/token." }, { "info": { "name": "Exchange for an access token", "type": "http" }, "http": { "method": "POST", "url": "https://api.podbean.com/v1/oauth/token", "body": { "type": "form-urlencoded", "data": [ { "name": "grant_type", "value": "" }, { "name": "client_id", "value": "" }, { "name": "client_secret", "value": "" }, { "name": "code", "value": "" }, { "name": "redirect_uri", "value": "" }, { "name": "refresh_token", "value": "" } ] } }, "docs": "Exchange an authorization code, client credentials, or a refresh token for an OAuth 2.0 access token. Supports grant_type values authorization_code, client_credentials, and refresh_token." }, { "info": { "name": "Inspect an access token", "type": "http" }, "http": { "method": "POST", "url": "https://api.podbean.com/v1/oauth/debugToken", "body": { "type": "form-urlencoded", "data": [ { "name": "access_token", "value": "" } ] } }, "docs": "Returns metadata about an access token - the podcast it is bound to, scopes, and expiry." }, { "info": { "name": "Get Multiple Podcasts tokens", "type": "http" }, "http": { "method": "POST", "url": "https://api.podbean.com/v1/oauth/multiplePodcastsToken", "body": { "type": "form-urlencoded", "data": [ { "name": "grant_type", "value": "" }, { "name": "client_id", "value": "" }, { "name": "client_secret", "value": "" } ] } }, "docs": "For agencies and networks - exchange client credentials for per-podcast access tokens covering all podcasts the app is authorized to manage." } ] } ], "bundled": true }