Simplecast Podcasts API
Podcasts (shows) and their related metadata.
Podcasts (shows) and their related metadata.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/simplecast-podcasts-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Simplecast Analytics Podcasts API
description: 'The Simplecast API lets you manage and read your podcasting data on the Simplecast platform - podcasts (shows), episodes, audience analytics, and distribution channels. The API is accessed at https://api.simplecast.com and is self-describing: each response returns the actions available to the authenticated user. Authentication uses a bearer token obtained from the Private Apps page in the Simplecast dashboard (authorization: Bearer {token}). List endpoints support limit and offset query parameters for pagination. The API is predominantly read-only (HTTP GET); a small number of write operations exist, such as uploading episode audio. Simplecast is owned by SiriusXM Media. Endpoint paths in this document are derived from Simplecast''s official public Postman collection and API documentation; request and response schemas are lightly modeled where the docs do not publish a formal schema.'
version: '1.0'
contact:
name: Simplecast
url: https://www.simplecast.com
servers:
- url: https://api.simplecast.com
description: Simplecast production API
security:
- bearerAuth: []
tags:
- name: Podcasts
description: Podcasts (shows) and their related metadata.
paths:
/podcasts:
get:
operationId: listPodcasts
tags:
- Podcasts
summary: List podcasts
description: Lists the podcasts (shows) accessible to the authenticated account.
parameters:
- $ref: '#/components/parameters/Limit'
- $ref: '#/components/parameters/Offset'
responses:
'200':
description: A paged collection of podcasts.
content:
application/json:
schema:
$ref: '#/components/schemas/Collection'
'401':
$ref: '#/components/responses/Unauthorized'
/podcasts/{podcast_id}:
get:
operationId: getPodcast
tags:
- Podcasts
summary: Retrieve a podcast
description: Retrieves a single podcast by its ID.
parameters:
- $ref: '#/components/parameters/PodcastId'
responses:
'200':
description: The requested podcast.
content:
application/json:
schema:
$ref: '#/components/schemas/Podcast'
'401':
$ref: '#/components/responses/Unauthorized'
/podcasts/{podcast_id}/episodes:
get:
operationId: listPodcastEpisodes
tags:
- Podcasts
summary: List episodes for a podcast
description: Lists the episodes belonging to the given podcast.
parameters:
- $ref: '#/components/parameters/PodcastId'
- $ref: '#/components/parameters/Limit'
- $ref: '#/components/parameters/Offset'
responses:
'200':
description: A paged collection of episodes.
content:
application/json:
schema:
$ref: '#/components/schemas/Collection'
'401':
$ref: '#/components/responses/Unauthorized'
/podcasts/{podcast_id}/authors:
get:
operationId: listPodcastAuthors
tags:
- Podcasts
summary: List authors for a podcast
parameters:
- $ref: '#/components/parameters/PodcastId'
responses:
'200':
description: A collection of authors.
content:
application/json:
schema:
$ref: '#/components/schemas/Collection'
'401':
$ref: '#/components/responses/Unauthorized'
/podcasts/{podcast_id}/categories:
get:
operationId: listPodcastCategories
tags:
- Podcasts
summary: List categories for a podcast
parameters:
- $ref: '#/components/parameters/PodcastId'
responses:
'200':
description: A collection of categories.
content:
application/json:
schema:
$ref: '#/components/schemas/Collection'
'401':
$ref: '#/components/responses/Unauthorized'
/podcasts/{podcast_id}/categories/{category_id}:
get:
operationId: getPodcastCategory
tags:
- Podcasts
summary: Retrieve a podcast category
parameters:
- $ref: '#/components/parameters/PodcastId'
- $ref: '#/components/parameters/CategoryId'
responses:
'200':
description: The requested category.
content:
application/json:
schema:
$ref: '#/components/schemas/Resource'
'401':
$ref: '#/components/responses/Unauthorized'
/podcasts/{podcast_id}/categories/{category_id}/subcategories:
get:
operationId: listPodcastSubcategories
tags:
- Podcasts
summary: List subcategories for a podcast category
parameters:
- $ref: '#/components/parameters/PodcastId'
- $ref: '#/components/parameters/CategoryId'
responses:
'200':
description: A collection of subcategories.
content:
application/json:
schema:
$ref: '#/components/schemas/Collection'
'401':
$ref: '#/components/responses/Unauthorized'
/podcasts/{podcast_id}/categories/{category_id}/subcategories/{subcategory_id}:
get:
operationId: getPodcastSubcategory
tags:
- Podcasts
summary: Retrieve a podcast subcategory
parameters:
- $ref: '#/components/parameters/PodcastId'
- $ref: '#/components/parameters/CategoryId'
- name: subcategory_id
in: path
required: true
schema:
type: string
responses:
'200':
description: The requested subcategory.
content:
application/json:
schema:
$ref: '#/components/schemas/Resource'
'401':
$ref: '#/components/responses/Unauthorized'
/podcasts/{podcast_id}/keywords:
get:
operationId: listPodcastKeywords
tags:
- Podcasts
summary: List keywords for a podcast
parameters:
- $ref: '#/components/parameters/PodcastId'
responses:
'200':
description: A collection of keywords.
content:
application/json:
schema:
$ref: '#/components/schemas/Collection'
'401':
$ref: '#/components/responses/Unauthorized'
/podcasts/{podcast_id}/keywords/{keyword_id}:
get:
operationId: getPodcastKeyword
tags:
- Podcasts
summary: Retrieve a podcast keyword
parameters:
- $ref: '#/components/parameters/PodcastId'
- $ref: '#/components/parameters/KeywordId'
responses:
'200':
description: The requested keyword.
content:
application/json:
schema:
$ref: '#/components/schemas/Resource'
'401':
$ref: '#/components/responses/Unauthorized'
/podcasts/{podcast_id}/seasons:
get:
operationId: listPodcastSeasons
tags:
- Podcasts
summary: List seasons for a podcast
parameters:
- $ref: '#/components/parameters/PodcastId'
responses:
'200':
description: A collection of seasons.
content:
application/json:
schema:
$ref: '#/components/schemas/Collection'
'401':
$ref: '#/components/responses/Unauthorized'
/podcasts/{podcast_id}/rss:
get:
operationId: getPodcastRss
tags:
- Podcasts
summary: Retrieve a podcast RSS feed
description: Returns the generated RSS feed for the podcast.
parameters:
- $ref: '#/components/parameters/PodcastId'
responses:
'200':
description: The podcast RSS feed.
'401':
$ref: '#/components/responses/Unauthorized'
/seasons/{season_id}:
get:
operationId: getSeason
tags:
- Podcasts
summary: Retrieve a season
parameters:
- $ref: '#/components/parameters/SeasonId'
responses:
'200':
description: The requested season.
content:
application/json:
schema:
$ref: '#/components/schemas/Resource'
'401':
$ref: '#/components/responses/Unauthorized'
/seasons/{season_id}/episodes:
get:
operationId: listSeasonEpisodes
tags:
- Podcasts
summary: List episodes in a season
parameters:
- $ref: '#/components/parameters/SeasonId'
responses:
'200':
description: A collection of episodes.
content:
application/json:
schema:
$ref: '#/components/schemas/Collection'
'401':
$ref: '#/components/responses/Unauthorized'
components:
schemas:
Error:
type: object
properties:
error:
type: string
message:
type: string
Resource:
type: object
description: A generic Simplecast resource. The API is self-describing; exact fields vary by type.
properties:
id:
type: string
href:
type: string
Podcast:
type: object
description: A podcast (show). Fields are modeled from documented responses.
properties:
id:
type: string
title:
type: string
description:
type: string
author:
type: string
href:
type: string
Collection:
type: object
description: A paged collection of resources. Fields are modeled; the API is self-describing.
properties:
collection:
type: array
items:
$ref: '#/components/schemas/Resource'
pages:
type: object
properties:
total:
type: integer
limit:
type: integer
offset:
type: integer
responses:
Unauthorized:
description: Missing or invalid bearer token.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
parameters:
Limit:
name: limit
in: query
required: false
description: Maximum number of objects to return.
schema:
type: integer
SeasonId:
name: season_id
in: path
required: true
schema:
type: string
KeywordId:
name: keyword_id
in: path
required: true
schema:
type: string
CategoryId:
name: category_id
in: path
required: true
schema:
type: string
PodcastId:
name: podcast_id
in: path
required: true
schema:
type: string
Offset:
name: offset
in: query
required: false
description: Index at which to start the page of results.
schema:
type: integer
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: 'Bearer token generated from the Private Apps page in the Simplecast dashboard. Sent as "authorization: Bearer {token}".'