Podbean API Episodes API

List and inspect episodes.

OpenAPI Specification

podbean-api-episodes-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Podbean Analytics Episodes API
  version: v1
  description: 'Podbean''s HTTP API for managing podcasts, episodes, private members,

    and analytics reports. Uses OAuth 2.0 with the client_credentials

    grant (and a multi-podcast token endpoint for accounts that publish

    several podcasts). Endpoint paths reflect those documented at

    https://developers.podbean.com/podbean-api-docs/ and confirmed

    against open-source Podbean clients.

    '
  contact:
    name: Podbean Developer Documentation
    url: https://developers.podbean.com/podbean-api-docs/
servers:
- url: https://api.podbean.com
  description: Podbean production API
security:
- oauth2ClientCredentials: []
- accessTokenQuery: []
tags:
- name: Episodes
  description: List and inspect episodes.
paths:
  /v1/episodes:
    get:
      tags:
      - Episodes
      operationId: listEpisodes
      summary: List episodes
      description: List episodes for the authenticated podcast.
      parameters:
      - $ref: '#/components/parameters/AccessTokenQuery'
      - in: query
        name: offset
        schema:
          type: integer
          minimum: 0
          default: 0
      - in: query
        name: limit
        schema:
          type: integer
          minimum: 1
          maximum: 100
          default: 20
      responses:
        '200':
          description: A page of episodes
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: integer
                  offset:
                    type: integer
                  limit:
                    type: integer
                  has_more:
                    type: boolean
                  episodes:
                    type: array
                    items:
                      $ref: '#/components/schemas/Episode'
components:
  parameters:
    AccessTokenQuery:
      in: query
      name: access_token
      required: false
      schema:
        type: string
      description: Access token issued by /v1/oauth/token (may also be sent via Authorization header).
  schemas:
    Episode:
      type: object
      properties:
        id:
          type: string
        podcast_id:
          type: string
        title:
          type: string
        content:
          type: string
        logo:
          type: string
          format: uri
        media_url:
          type: string
          format: uri
        player_url:
          type: string
          format: uri
        permalink_url:
          type: string
          format: uri
        publish_time:
          type: integer
          description: Unix timestamp.
        duration:
          type: integer
        status:
          type: string
        type:
          type: string
          enum:
          - public
          - premium
          - private
        season_number:
          type: integer
        episode_number:
          type: integer
        apple_episode_type:
          type: string
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic for OAuth token requests (client_id / client_secret).
    oauth2ClientCredentials:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://api.podbean.com/v1/oauth/token
          scopes: {}
    accessTokenQuery:
      type: apiKey
      in: query
      name: access_token
      description: 'Podbean accepts the OAuth bearer token as the `access_token`

        query parameter on resource endpoints.

        '