PodcastIndex Recent API
Find recent additions to the index
Find recent additions to the index
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/podcastindex-recent-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:
version: 1.12.1
title: PodcastIndex.org Add Recent API
termsOfService: https://github.com/Podcastindex-org/legal/blob/main/TermsOfService.md
contact:
email: info@podcastindex.org
url: https://podcastindex.org/
license:
name: MIT
url: https://github.com/Podcastindex-org/docs-api/blob/master/LICENSE
x-logo:
url: logo.svg
href: /
description: "Download the openapi spec in [json](pi_api.json) or [yaml](pi_api.yaml) format.\n\n# Overview\n\nThe Podcast Index (Podcast Index LLC) is a software developer focused partnership that provides tools and data to\nanyone who aspires to create new and exciting Podcast experiences without the heavy lifting of indexing,\naggregation and data management.\n\n# Example Code\n\nUsers have provided example code for working the API in the following languages:\n\n - [AWS Lambda - python](https://github.com/tbowers/python-podcastindex-org-lambda)\n - [Bash](https://github.com/suorcd/Bash-podcastindex-org-example)\n - [C#](https://github.com/ComicStrip/csharp-podcastindex-org-example)\n - [Elisp](https://github.com/sabexx/elisp-example)\n - [Flutter/Dart](https://github.com/crediblecreative/flutter-dart-podcastindex-org-example)\n - [Go](https://github.com/ComicStrip/Go-podcastindex-org-example)\n - [Go](https://github.com/kilobit/podcast-index-client)\n - [Java](https://github.com/ComicStrip/Java-podcastindex-org-example)\n - [Java](https://github.com/stucoates/PodcastIndexJavaClient)\n - [Node.js](https://github.com/ComicStrip/node.js-podcastindex-org-example)\n - [PHP](https://github.com/Podcastindex-org/example-code)\n - [Python](https://github.com/tbowers/python-podcastindex-org-example)\n - [Swift](https://github.com/ComicStrip/Swift-podcastindex-org-example)\n - ... [More](https://github.com/Podcastindex-org-Examples)\n\nDon't see your desired language, create an example repo and create a\n[Pull Request](https://github.com/Podcastindex-org/docs-api/pulls) with a link to your example code project!\n\n# Libraries\n\nUser created libraries for working with the API:\n\n - Java\n - [podcast4j](https://github.com/yusufyilmazfr/podcast4j)\n - .NET\n - [PodcastIndexSharp](https://www.nuget.org/packages/PodcastIndexSharp)\n - Node.js/npm/yarn\n - [podcast-index-api](https://www.npmjs.com/package/podcast-index-api)\n - [podcastdx-client](https://www.npmjs.com/package/podcastdx-client)\n - PHP\n - [podcastindex-php](https://github.com/LowSociety/podcastindex-php)\n - Python/pip\n - [python-podcastindex](https://pypi.org/project/python-podcastindex/)\n - R\n - [podindexr](https://github.com/rpodcast/podindexr)\n - Ruby\n - [podcast-index](https://github.com/jasonyork/podcast-index)\n - Swift\n - [PodcastIndexKit](https://github.com/SparrowTek/PodcastIndexKit)\n - Kotlin\n - [PodcastIndex-SDK](https://github.com/mr3y-the-programmer/PodcastIndex-SDK)\n - Go\n - [podcastindex](https://github.com/jjgmckenzie/podcastindex)\n - [podcastindex-go](https://github.com/koalahl/podcastindex-go)\n\nAre we missing a library? Did you create one for a different language? Create a\n[Pull Request](https://github.com/Podcastindex-org/docs-api/pulls) with a link to the new library!\n\n# Postman\n\nA collection file for use in the [Postman](https://www.postman.com/) application is available for this API.\n\n 1. Download the contents of the [Postman Docs](https://github.com/Podcastindex-org/docs-api/tree/master/Postman%20Docs) folder.\n 2. Import the `PodcastIndex.postman_collection.json` collection to Postman\n 3. Import the `PodcastIndexOrgEnvironment.postman_environment.json` to Postman\n 4. Click \"Environments\" on the left sidebar\n 5. Select the checkbox next to the PodcastIndexOrgEnvironment entry\n 6. Set `AuthKey` and `SeceretKey` values under the \"Current Value\" column using your API information\n 7. Click \"Collections\" from the sidebar\n 8. Select PodcastIndex\n 9. Select and run the endpoint to test\n\n# Contributing\n\nThe source for this API documentation is available at\n[https://github.com/Podcastindex-org/docs-api](https://github.com/Podcastindex-org/docs-api).\nSubmit an Issue or create a Pull Request.\n\n# Authentication Details\n\nSending an API request is easy. We use an Amazon-style request authorization token to secure each request.\n\n\nRegister for a free API key at https://api.podcastindex.org/\n\n\nThese headers parameters are required for each request: `User-Agent`, `X-Auth-Date`, `X-Auth-Key`, `Authorization`\n\n\nSee [Authentication](#auth) for description of parameters.\n\n# Legal\n\nLegal\n\n - [Privacy Policy](https://github.com/Podcastindex-org/legal/blob/main/PrivacyPolicy.md)\n - [Terms of Service](https://github.com/Podcastindex-org/legal/blob/main/TermsOfService.md)\n - [License](https://github.com/Podcastindex-org/docs-api/blob/master/LICENSE)\n"
servers:
- url: https://api.podcastindex.org/api/1.0
tags:
- name: Recent
description: 'Find recent additions to the index
'
paths:
/recent/episodes:
get:
tags:
- Recent
summary: Episodes
description: 'This call returns the most recent `max` number of episodes globally across the whole index,
in reverse chronological order.
Example: https://api.podcastindex.org/api/1.0/recent/episodes?max=7&pretty
'
operationId: recent/episodes
security:
- API-Key: []
User-Agent: []
Date: []
Authorization: []
parameters:
- $ref: '#/components/parameters/max_recent_episodes'
- $ref: '#/components/parameters/excludeString'
- $ref: '#/components/parameters/before'
- $ref: '#/components/parameters/fulltext'
- $ref: '#/components/parameters/pretty'
responses:
'200':
$ref: '#/components/responses/recent_episodes'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
/recent/feeds:
get:
tags:
- Recent
summary: Feeds
description: "This call returns the most recent `max` feeds, in reverse chronological order.\n\n\nExamples:\n\n - https://api.podcastindex.org/api/1.0/recent/feeds?pretty\n - https://api.podcastindex.org/api/1.0/recent/feeds?max=20&cat=102,health&lang=de,ja&pretty\n"
operationId: recent/feeds
security:
- API-Key: []
User-Agent: []
Date: []
Authorization: []
parameters:
- $ref: '#/components/parameters/max_recent_feeds'
- $ref: '#/components/parameters/since'
- $ref: '#/components/parameters/lang'
- $ref: '#/components/parameters/cat'
- $ref: '#/components/parameters/notcat'
- $ref: '#/components/parameters/pretty'
responses:
'200':
$ref: '#/components/responses/recent_feeds'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
/recent/newfeeds:
get:
tags:
- Recent
summary: New Feeds
description: "This call returns every new feed added to the index over the past 24 hours in reverse chronological order.\n\n\nExamples:\n\n - https://api.podcastindex.org/api/1.0/recent/newfeeds?pretty\n - https://api.podcastindex.org/api/1.0/recent/newfeeds?pretty&since=1613805000\n - https://api.podcastindex.org/api/1.0/recent/newfeeds?feedid=2653471&pretty\n - https://api.podcastindex.org/api/1.0/recent/newfeeds?feedid=2653471&desc&pretty\n"
operationId: recent/newfeeds
security:
- API-Key: []
User-Agent: []
Date: []
Authorization: []
parameters:
- $ref: '#/components/parameters/max_recent_feeds'
- $ref: '#/components/parameters/since'
- $ref: '#/components/parameters/feedid_newfeeds'
- $ref: '#/components/parameters/desc'
- $ref: '#/components/parameters/pretty'
responses:
'200':
$ref: '#/components/responses/recent_newfeeds'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
/recent/newvaluefeeds:
get:
tags:
- Recent
summary: New Value Feeds
description: 'This call returns feeds that have added a `value` tag in reverse chronological order.
Example: https://api.podcastindex.org/api/1.0/recent/newvaluefeeds?pretty
'
operationId: recent/newvaluefeeds
security:
- API-Key: []
User-Agent: []
Date: []
Authorization: []
parameters:
- $ref: '#/components/parameters/max_recent_feeds'
- $ref: '#/components/parameters/since'
- $ref: '#/components/parameters/pretty'
responses:
'200':
$ref: '#/components/responses/recent_newvaluefeeds'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
/recent/data:
get:
tags:
- Recent
summary: Recent Data
description: "This call returns every new feed and episode added to the index over the past 24 hours in reverse chronological order.\n\n\nThis is similar to `/recent/feeds` but uses the date the feed was found by the index rather than the feed's\ninternal timestamp.\n\n\nSimilar data can also be accessed using object storage root url https://tracking.podcastindex.org/current\nFor details, see [Current](#get-/static/tracking/current).\n\n\nExamples:\n\n - https://api.podcastindex.org/api/1.0/recent/data?pretty\n - https://api.podcastindex.org/api/1.0/recent/data?pretty&max=10\n - https://api.podcastindex.org/api/1.0/recent/data?pretty&max=10&since=1671164867\n"
operationId: recent/data
security:
- API-Key: []
User-Agent: []
Date: []
Authorization: []
parameters:
- $ref: '#/components/parameters/max_recent_data'
- $ref: '#/components/parameters/since'
- $ref: '#/components/parameters/pretty'
responses:
'200':
$ref: '#/components/responses/recent_data'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
/recent/soundbites:
get:
tags:
- Recent
summary: Soundbites
description: 'This call returns the most recent `max` soundbites that the index has discovered.
A soundbite consists of an enclosure url, a start time and a duration.
It is documented in the [podcast namespace](https://github.com/Podcastindex-org/podcast-namespace/blob/main/docs/1.0.md#soundbite).
Example: https://api.podcastindex.org/api/1.0/recent/soundbites?pretty
'
operationId: recent/soundbites
security:
- API-Key: []
User-Agent: []
Date: []
Authorization: []
parameters:
- $ref: '#/components/parameters/max_recent_soundbites'
- $ref: '#/components/parameters/pretty'
responses:
'200':
$ref: '#/components/responses/recent_soundbites'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
components:
parameters:
max_recent_soundbites:
name: max
in: query
description: 'Maximum number of soundbites to return.
'
schema:
type: integer
default: 60
minimum: 1
maximum: 1000
example: 20
max_recent_data:
name: max
in: query
description: 'Maximum number of results to return (includes both `feeds` and `items`).
'
schema:
type: integer
default: 1000
minimum: 1
example: 200
cat:
name: cat
in: query
description: 'Use this argument to specify that you **ONLY** want episodes with these categories in the results.
Separate multiple categories with commas.
You may specify either the Category ID and/or the Category Name.
Values are not case sensitive.
The `cat` and `notcat` filters can be used together to fine tune a very specific result set.
Category numbers and names can be found in the
[Podcast Namespace documentation](https://github.com/Podcastindex-org/podcast-namespace/blob/main/categories.json)
'
schema:
type: string
examples:
single_name:
value: News
description: Single Category Name
single_id:
value: 65
description: Single Category ID
multiple_name:
value: News,Religion
description: Multiple Category Names
multiple_id_:
value: 55,65
description: Multiple Category IDs
multiple_mixed:
value: News,65
description: Multiple Categories Mixed Format
feedid_newfeeds:
name: feedid
in: query
description: 'The PodcastIndex Feed ID to start from (or go to if `desc` specified).
If `since` parameter also specified, value of `since` is ignored.
'
required: false
schema:
type: string
example: '2653471'
excludeString:
name: excludeString
in: query
description: 'Any item containing this string will be discarded from the result set.
This may, in certain cases, reduce your set size below your `max` value.
Matches against the `title` and URL properties.
'
schema:
type: string
example: religion
fulltext:
name: fulltext
in: query
description: 'If present, return the full text value of any text fields (ex: `description`).
If not provided, field value is truncated to 100 words.
Parameter shall not have a value
'
schema:
type: boolean
allowEmptyValue: true
pretty:
name: pretty
in: query
description: 'If present, makes the output “pretty” to help with debugging.
Parameter shall not have a value
'
schema:
type: boolean
allowEmptyValue: true
lang:
name: lang
in: query
description: 'Specifying a language code (like "en") will return only episodes having that specific language.
You can specify multiple languages by separating them with commas.
If you also want to return episodes that have no language given, use the token "unknown". (ex. en,es,ja,unknown).
Values are not case sensitive.
'
schema:
type: string
examples:
single:
value: en
description: Single ID
multiple:
value: en,es
description: Multiple IDs
before:
name: before
in: query
description: 'If you pass a PodcastIndex Episode ID, you will get recent episodes before that ID, allowing you to walk back
through the episode history sequentially.
'
schema:
type: integer
example: 1721351091
since:
name: since
in: query
description: 'Return items since the specified epoch timestamp.
'
schema:
type: integer
example: 1612125785
notcat:
name: notcat
in: query
description: 'Use this argument to specify categories of episodes to **NOT** show in the results.
Separate multiple categories with commas.
You may specify either the Category ID and/or the Category Name.
Values are not case sensitive.
The `cat` and `notcat` filters can be used together to fine tune a very specific result set.
Category numbers and names can be found in the
[Podcast Namespace documentation](https://github.com/Podcastindex-org/podcast-namespace/blob/main/categories.json)
'
schema:
type: string
examples:
single_name:
value: News
description: Single Category Name
single_id:
value: 65
description: Single Category ID
multiple_name:
value: News,Religion
description: Multiple Category Names
multiple_id_:
value: 55,65
description: Multiple Category IDs
multiple_mixed:
value: News,65
description: Multiple Categories Mixed Format
max_recent_episodes:
name: max
in: query
description: 'Maximum number of results to return.
'
schema:
type: integer
default: 10
minimum: 1
maximum: 1000
example: 7
max_recent_feeds:
name: max
in: query
description: 'Maximum number of results to return.
'
schema:
type: integer
default: 40
minimum: 1
maximum: 1000
example: 20
desc:
name: desc
in: query
description: 'If present, display feeds in descending order.
Only applicable when using `feedid` parameter.
Parameter shall not have a value
'
schema:
type: boolean
allowEmptyValue: true
schemas:
description_response:
description: 'Description of the response
'
type: string
example: Found matching feed
author:
description: 'The channel-level author element.
Usually iTunes specific, but could be from another namespace if not present.
'
type: string
example: Tony Sindelar
data:
description: 'Object containing the recent data
'
type: object
properties:
position:
$ref: '#/components/schemas/position'
feeds:
$ref: '#/components/schemas/feeds_data'
items:
$ref: '#/components/schemas/items_data'
explicit_episode:
description: "Is feed or episode marked as explicit\n\n - 0: not marked explicit\n - 1: marked explicit\n"
type: integer
enum:
- 0
- 1
example: 0
datePublishedPretty:
description: 'The date and time the episode was published formatted as a human readable string.
Note: uses the PodcastIndex server local time to do conversion.
'
type: string
example: January 01, 2019 9:30pm
title_feed:
description: 'Name of the feed
'
type: string
example: Batman University
itunesId_feed:
description: 'The iTunes ID of this feed if there is one, and we know what it is.
'
type:
- integer
- 'null'
example: 1441923632
since:
description: 'Value of `since` parameter passed to request.
'
type:
- integer
- 'null'
format: Unix Epoch
example: 1613805249
newestItemPublishTime:
description: "The time the most recent episode in the feed was published.\n\n\nNote: some endpoints use `newestItemPubdate` while others use `newestItemPublishTime`. \nThey return the same information. See https://github.com/Podcastindex-org/api/issues/3 to track when the property name is updated.\n"
type: integer
format: Unix Epoch
example: 1546399813
position:
description: 'Position in data
'
type: integer
example: 12843054496
status_feed:
description: 'Status of feed after being added to index
'
type: string
enum:
- unconfirmed
- confirmed
example: confirmed
language:
description: 'The channel-level language specification of the feed.
Languages accord with the [RSS Language Spec](https://www.rssboard.org/rss-language-codes).
'
type: string
example: en-us
dateCrawled:
description: 'The time this episode was found in the feed
'
type: integer
format: Unix Epoch
example: 1598369047
title_soundbite:
description: 'Name of the soundbite
'
type: string
example: Why the Podcast Namespace Matters
categories:
description: 'An array of categories, where the index is the Category ID and the value is the Category Name.
All Category numbers and names are returned by the `categories/list` endpoint.
'
type: object
example:
'104': Tv
'105': Film
'107': Reviews
contentHash:
description: 'Hash of the entire feed body
'
type: string
example: a652d25b56f3e2f0e069c0cc72145a85
feeds_data_obj:
type: object
properties:
feedId:
$ref: '#/components/schemas/id_feed'
feedUrl:
$ref: '#/components/schemas/url_feed'
feedTitle:
$ref: '#/components/schemas/title_feed'
feedDescription:
$ref: '#/components/schemas/description_feed'
feedImage:
$ref: '#/components/schemas/image_feed'
feedLanguage:
$ref: '#/components/schemas/language'
feedItunesId:
$ref: '#/components/schemas/itunesId_feed'
timeAdded:
description: 'The date and time the feed was added to the index
'
type: integer
format: Unix Epoch
example: 1613786624
items_recent:
description: 'List of episodes matching request
'
type: array
items:
$ref: '#/components/schemas/item_podcast_recent'
items_data_obj:
type: object
properties:
episodeId:
$ref: '#/components/schemas/id_episode'
episodeTitle:
$ref: '#/components/schemas/title_feed'
episodeDescription:
$ref: '#/components/schemas/description_episode'
episodeImage:
$ref: '#/components/schemas/image_episode'
episodeTimestamp:
$ref: '#/components/schemas/datePublished'
episodeAdded:
$ref: '#/components/schemas/episodeAdded'
episodeEnclosureUrl:
$ref: '#/components/schemas/enclosureUrl'
episodeEnclosureLength:
$ref: '#/components/schemas/enclosureLength'
episodeEnclosureType:
$ref: '#/components/schemas/enclosureType'
episodeDuration:
$ref: '#/components/schemas/duration'
episodeType:
$ref: '#/components/schemas/episodeType'
feedId:
$ref: '#/components/schemas/id_feed'
guid:
description: 'The unique identifier for the episode
'
type: string
example: incomparable/batman/19
enclosureType:
description: 'The Content-Type for the item specified by the `enclosureUrl`
'
type: string
example: audio/mp3
feeds_recent:
description: 'List of feeds matching request
'
type: array
items:
type: object
properties:
id:
$ref: '#/components/schemas/id_feed'
url:
$ref: '#/components/schemas/url_feed'
title:
$ref: '#/components/schemas/title_feed'
newestItemPublishTime:
$ref: '#/components/schemas/newestItemPublishTime'
oldestItemPublishTime:
$ref: '#/components/schemas/oldestItemPublishTime'
itunesId:
$ref: '#/components/schemas/itunesId_feed'
language:
$ref: '#/components/schemas/language'
categories:
$ref: '#/components/schemas/categories'
oldestItemPublishTime:
description: 'The date and time the oldest episode in the feed/index
'
type: integer
format: Unix Epoch
example: 1546399813
episodeType:
description: 'The type of episode. May be null for `liveItem`.
'
type:
- string
- 'null'
enum:
- full
- trailer
- bonus
example: full
image_episode:
description: 'The item-level image for the episode
'
type: string
format: URL
example: https://www.theincomparable.com/imgs/logos/logo-batmanuniversity-3x.jpg?cache-buster=2019-06-11
feeds_data:
description: 'List of recent feed data
'
type: array
items:
$ref: '#/components/schemas/feeds_data_obj'
enclosureLength:
description: 'The length of the item specified by the `enclosureUrl` in bytes
'
type: integer
format: bytes
example: 26385472
trendScore:
description: 'The ranking for how the podcast is trending in the index
'
type: integer
example: 1
id_episode:
description: 'The internal PodcastIndex.org episode ID.
'
type: integer
example: 16795088
items_data:
description: 'List of recent episode item data
'
type: array
items:
$ref: '#/components/schemas/items_data_obj'
nextSince:
description: 'Value to pass as `since` parameter to get next batch of data
'
type: integer
format: Unix Epoch
example: 1613805249
episodeAdded:
description: 'The time the episode was added to the index
'
type: integer
format: Unix Epoch
example: 1613786624
feedCount:
description: 'Number of items in the `feeds` returned in request
'
type: integer
example: 1
episode_number:
description: 'Episode number
'
type:
- integer
- 'null'
example: 19
datePublished:
description: 'The date and time the episode was published
'
type: integer
format: Unix Epoch
example: 1546399813
duration:
description: 'The estimated length of the item specified by the `enclosureUrl` in seconds. Will be null for `liveItem`.
'
type:
- integer
- 'null'
format: seconds
example: 54
season:
description: 'Season number. May be null for `liveItem`.
'
type:
- integer
- 'null'
example: 3
description_episode:
description: 'The item-level description of the episode.
Uses the longer of the possible fields in the feed: `<description>`, `<itunes:summary>` and `<content:encoded>`
'
type: string
example: Batman University is back in session! James Thomson and Nathan Alderman join Tony for a discussion of Fox’s “Gotham.” Tune in to hear our thoughts on how a half-baked comic book show was reborn into an unmissable train wreck.
feeds_recent_value:
description: 'List of feeds matching request
'
type: array
items:
type: object
properties:
id:
$ref: '#/components/schemas/id_feed'
url:
$ref: '#/components/schemas/url_feed'
title:
$ref: '#/components/schemas/title_feed'
author:
$ref: '#/components/schemas/author'
image:
$ref: '#/components/schemas/image_feed'
newestItemPublishTime:
$ref: '#/components/schemas/newestItemPublishTime'
itunesId:
$ref: '#/components/schemas/itunesId_feed'
trendScore:
$ref: '#/components/schemas/trendScore'
language:
$ref: '#/components/schemas/language'
categories:
$ref: '#/components/schemas/categories'
count:
description: 'Number of items returned in request
'
type: integer
example: 1
item_podcast_recent:
type: object
properties:
id:
$ref: '#/components/schemas/id_episode'
title:
$ref: '#/components/schemas/title_feed'
link:
$ref: '#/components/schemas/link_feed'
description:
$ref: '#/components/schemas/description_episode'
guid:
$ref: '#/components/schemas/guid'
datePublished:
$ref: '#/components/schemas/datePublished'
datePublishedPretty:
$ref: '#/components/schemas/datePublishedPretty'
dateCrawled:
$ref: '#/components/schemas/dateCrawled'
enclosureUrl:
$ref: '#/components/schemas/enclosureUrl'
enclosureType:
$ref: '#/components/schemas/enclosureType'
enclosureLength:
$ref: '#/components/schemas/enclosureLength'
explicit:
$ref: '#/components/schemas/explicit_episode'
episode:
$ref: '#/components/schemas/episode_number'
episodeType:
$ref: '#/components/schemas/episodeType'
season:
$ref: '#/components/schemas/season'
image:
$ref: '#/components/schemas/image_episode'
feedItunesId:
$ref: '#/components/schemas/itunesId_feed'
feedImage:
$ref: '#/components/schemas/image_feed'
feedId:
$ref: '#/components/schemas/id_feed'
feedTitle:
$ref: '#/components/schemas/title_feed'
feedLanguage:
$ref: '#/components/schemas/language'
duration_soundbite:
description: 'The length to play the item specified by the `enclosureUrl`
'
type: integer
format: seconds
example: 40
itemCount:
description: 'Number of items in the `items` returned in request
'
type: integer
example: 1
max:
description: 'Value of `max` parameter passed to request.
'
type:
- integer
- 'null'
example: 2
status:
description: 'Indicates API request status
'
type: string
enum:
- 'true'
- 'false'
example: 'true'
items_soundbites:
description: 'List of soundbites matching request
'
type: array
items:
type: object
properties:
enclosureUrl:
$ref: '#/components/schemas/enclosureUrl'
title:
$ref: '#/components/schemas/title_soundbite'
startTime:
$ref: '#/components/schemas/startTime'
duration:
$ref: '#/components/schemas/duration_soundbite'
episodeId:
$ref: '#/components/schemas/id_episode'
episodeTitle:
$ref: '#/components/schemas/title_episode'
feedTitle:
$ref: '#/components/schemas/title_feed'
feedUrl:
$ref: '#/components/schemas/url_feed'
feedId:
$ref: '#/components/schemas/id_feed'
title_episode:
description: 'Name of the episode
'
type: string
example: Gotham
description_feed:
description: 'The channel-level description
Uses the longer of the possible fields in the feed: `<description>`, `<itunes:summary>` and `<content:encoded>`
'
type: string
example: 'Batman University is a seasonal podcast about you know who. It began with an analysis of episodes of “Batman: The Animated Series” but has now expanded to cover other series, movies, and media. Your professor is Tony Sindelar.'
startTime:
description: 'The time where the soundbite begins in the item specified by the `enclosureUrl`
'
type: integer
format: seconds
example: 1123
enclosureUrl:
description: 'URL/link to the episode file
'
type: string
format: URL
example: https://www.theincomparable.com/podcast/batmanuniversity302.mp3
feeds_recent_new:
description: 'List of feeds matching request
'
type: array
items:
type: object
properties:
id:
$ref: '#/components/schemas/id_feed'
url:
$ref: '#/components/schemas/url_feed'
image:
$ref: '#/components/schemas/image_feed'
timeAdded:
$ref: '#/components/schemas/timeAdded'
status:
$ref: '#/components/schemas/status_feed'
contentHash:
$ref: '#/components/schemas/contentHash'
language:
$ref: '#/components/schemas/language'
link_feed:
description: 'The channel-level link in the feed
'
type: string
format: URL
example: https://www.theincomparable.com/batmanuniversity/
image_feed:
description: 'The channel-level image element.
'
type: string
format: URL
example: https://www.theincomparable.com/imgs/logos/logo-batmanuniversity-3x.jpg?cache-buster=2019-06-11
url_feed:
description: 'Current feed URL
'
type: string
format: URL
example: https://feeds.theincomparable.com/batmanuniversity
id_feed:
description: 'The internal PodcastIndex.org Feed ID.
'
type: integer
example: 75075
responses:
rec
# --- truncated at 32 KB (37 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/podcastindex/refs/heads/main/openapi/podcastindex-recent-api-openapi.yml