Use search to search through all 4 million podcasts and 180 million episodes in blazing fast speed.
Examples:
Searching
1. Searching for podcasts that match the term "Planet Money"
{
search(term:"Planet Money", filterForTypes:PODCASTSERIES){
searchId
podcastSeries{
uuid
name
description
}
}
}
2. Searching for podcasts and episodes that match "Tim Ferriss"
{
search(term:"Tim Ferriss", filterForTypes:[PODCASTSERIES, PODCASTEPISODE]){
searchId
podcastSeries{
uuid
name
description
}
podcastEpisodes{
uuid
name
description
audioUrl
}
}
}
Pagination
3. Searching for episodes from page 2 that match "Tim Ferriss"
{
search(term:"Tim Ferriss", filterForTypes:PODCASTEPISODE, page:2, limitPerPage: 25){
searchId
podcastEpisodes{
uuid
name
description
audioUrl
}
}
}
Sorting
By default,
search
will return the results that best match the exact term you pass it. However, you may want to prioritize results from popular podcasts over an exact match. 4. When searching for podcasts with the term "Dentist" with sortBy:
EXACTNESS
(default) it will rank podcasts that have the exact title or description "Dentist" highest. However, if you use sortBy:
POPULARITY
it will give more weight to the podcast’s popularity over an exact match. This is good if you care about more popular (and usually higher quality) results over an exact match. {
search(term:"Dentist", filterForTypes:PODCASTSERIES, sortBy:POPULARITY){
searchId
podcastSeries{
uuid
name
description
}
}
}
Note: See Sorting documentation for more details.
Matching
You have the ability to match the results being returned from
EXACT_PHRASE
(Strict), ALL_TERMS
, or MOST_TERMS
(Least strict & default). 5. Searching "Jim Farley" episodes with matchBy:
EXACT_PHRASE
requires the exact phrase to be in the search results (which makes this option useful when searching for someone’s name){
search(term:"Jim Farley", filterForTypes:PODCASTEPISODE, matchBy:EXACT_PHRASE, sortBy:POPULARITY){
searchId
podcastEpisodes{
uuid
name
description
audioUrl
podcastSeries{
uuid
name
}
}
}
}
6. Searching "Music Theory Jazz" episodes with matchBy:
ALL_TERMS
requires all passed in words to be present.{
search(term:"Music Theory Jazz", filterForTypes:PODCASTEPISODE, matchBy:ALL_TERMS, sortBy:POPULARITY){
searchId
podcastEpisodes{
uuid
name
description
audioUrl
podcastSeries{
uuid
name
}
}
}
}
Note: See Matching documentation for more details.
Filtering
You can filter your search for results from a specific country, genre, language, from a particular podcast, before or after a certain publish date, before or after the latest episode was published, or if there is a transcript available. You can see the full list of filtering options available in the Query Input section below.
7. Searching for Neil deGrasse Tyson episodes but only after a certain publish date
{
search(term:"Neil deGrasse Tyson", filterForTypes:PODCASTEPISODE, sortBy:POPULARITY, filterForPublishedAfter:1596649011){
searchId
podcastEpisodes{
uuid
name
datePublished
description
audioUrl
podcastSeries{
uuid
name
}
}
}
}
8. Searching for only Neil deGrasse Tyson episodes but only if they have a transcript available.
{
search(term:"Neil deGrasse Tyson", filterForTypes:PODCASTEPISODE, sortBy:POPULARITY, filterForHasTranscript:true){
searchId
podcastEpisodes{
uuid
name
datePublished
description
audioUrl
transcript
podcastSeries{
uuid
name
}
}
}
}
Note: All Taddy users can view transcripts that have been provided by the podcast, but you will need to be a Taddy Business user to view transcripts that we automatically generate.
9. Searching for the term "James Webb Space Telescope" but filter only for episodes from the podcast StarTalk Radio.
{
search(term:"James Webb Space Telescope", filterForTypes:PODCASTEPISODE, filterForSeriesUuids:"e02ffac2-4a0e-4c6d-a42a-c59d02fe37bc"){
searchId
podcastEpisodes{
uuid
name
description
audioUrl
podcastSeries{
uuid
name
}
}
}
}
Ranking Score
10. You can check the ranking score for each search result. The higher the ranking score, the more relevant the result.
{
search(term:"James Webb Space Telescope Black Hole", filterForTypes:PODCASTEPISODE, sortBy:POPULARITY){
searchId
podcastEpisodes{
uuid
name
description
audioUrl
podcastSeries{
uuid
name
}
}
rankingDetails{
id
uuid
rankingScore
}
}
}
Exclude search terms
11. You can limit the results you get back by excluding words you don’t want. You do this by adding a minus sign in front of any word you want to exclude.
{
search(term:"Tim Ferriss -crypto", filterForTypes:PODCASTEPISODE){
searchId
podcastEpisodes{
uuid
name
description
audioUrl
}
}
}
Query Input:
For search, you can search for podcasts or episodes using these properties:
" The term you are searching for "
term: String
" (Optional) Allows for pagination. Default is 1 (ie: page 1 of the results). Max value is 20. "
page: Int
" (Optional) The number of results per page. Default is 10. Max value is 25 (ie: that max results you can return in one query in 25) "
limitPerPage: Int
" (Optional) Filter for certain types of content. Default is PODCASTSERIES. Possible values are PODCASTSERIES, PODCASTEPISODE, COMICSERIES, CREATOR "
filterForTypes: [SearchContentType]
" (Optional) Filter for only content made in certain countries "
filterForCountries: [Country]
" (Optional) Filter for only content made in certain languages "
filterForLanguages: [Language]
" (Optional) Filter for only content from certain genres "
filterForGenres: [Genre]
" (Optional) Filter for results only from certain series "
filterForSeriesUuids: [ID]
" (Optional) Filter for results that are not from certain series "
filterForNotInSeriesUuids: [ID]
" (Optional) Filter to return only AUDIO or VIDEO podcasts. Default is null (include both AUDIO & VIDEO podcasts)."
filterForPodcastContentType: [PodcastContentType]
" (Optional) Filter for results that are published after a certain date (Epoch time in seconds)"
filterForPublishedAfter: Int
" (Optional) Filter for results that are published before a certain date (Epoch time in seconds) "
filterForPublishedBefore: Int
" (Optional - for PODCASTSERIES) Filter for content that have an episode published after a certain date (Epoch time in seconds). This filter is only for PODCASTSERIES and will return an empty array for PODCASTEPISODE "
filterForLastUpdatedAfter: Int
" (Optional - for PODCASTSERIES) Filter for results that have an episode published before a certain date (Epoch time in seconds). This filter is only for PODCASTSERIES and will return an empty array for PODCASTEPISODE "
filterForLastUpdatedBefore: Int
" (Optional - for PODCASTSERIES) Filter for only content that has a certain total number of episodes. This filter is only for PODCASTSERIES and will return an empty array for any other type "
filterForTotalEpisodesLessThan: Int
" (Optional - for PODCASTSERIES) Filter for only content that has a certain total number of episodes. This filter is only for PODCASTSERIES and will return an empty array for any other type "
filterForTotalEpisodesGreaterThan: Int
" (Optional - for PODCASTEPISODE) Filter for episodes that have a duration less than a certain number of seconds. This filter is only for PODCASTEPISODE and will return an empty array for any other type "
filterForDurationLessThan: Int
" (Optional - for PODCASTEPISODE) Filter for episodes that have a duration greater than a certain number of seconds. This filter is only for PODCASTEPISODE and will return an empty array for any other type "
filterForDurationGreaterThan: Int
" (Optional - for PODCASTEPISODE) Filter for episodes that have a transcript available. This filter is only for PODCASTEPISODE and will return an empty array for any other type "
filterForHasTranscript: Boolean
" (Optional - for PODCASTEPISODE) Filter for episodes that have chapter files available. This filter is only for PODCASTEPISODE and will return an empty array for any other type "
filterForHasChapters: Boolean
" (Optional) Choose how the results are sorted. Default is sort by EXACTNESS. Possible values are EXACTNESS and POPULARITY. "
sortBy: SearchSortOrder
" (Optional) Choose which results are matched as valid search results. Default is MOST_TERMS. Possible values are MOST_TERMS, ALL_TERMS, FREQUENCY. If you search has multiple terms, FREQUENCY gives more weight to the terms that appear less frequently in results "
matchBy: SearchMatchType
" (Optional) Choose to only return safe (not explicit) content or all content. Default is false (include everything, including explicit content) "
isSafeMode: Boolean
Query Response:
The response you get back includes an array of PodcastSeries and PodcastEpisodes that match your search term.
" Identifier for the search query being sent (Used for caching)"
searchId: ID!
" A list of PodcastSeries items "
podcastSeries: [PodcastSeries]
" A list of PodcastEpisode items "
podcastEpisodes: [PodcastEpisode]
" Ranking information for each search result "
rankingDetails: [SearchRankingDetails]
" Additional information on the search results (Total # of results, pages, etc) "
responseDetails: [SearchResponseDetails]
Referenced types in this document:
If you are new to using Taddy’s API, Get Started with our 🤖 Intro to Taddy’s API.
More Links:
PricingTerms of ServiceDeveloper Policy