{"uid":"cap_LMH6ehWHaLl8FZH-lY2Xy","slug":"particle-pro-podcast-search-ccd5680b","name":"Particle Pro Podcast Search","description":"Search podcasts. Searches the podcast catalog by show name — the canonical podcast search.","url":"https://api.particle.pro/v1/podcasts/search","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET"],"type":"string"},"queryParams":{"type":"object","properties":{"q":{"type":"string","description":"Search the catalog by podcast name. GET /v1/podcasts/search is the canonical search endpoint and accepts the same parameters. The search is forgiving: it handles typos, missing or extra words ('offline jon favreau' finds Offline with Jon Favreau), a name plus qualifiers ('equity techcrunch'), and pasted episode titles ('Ferrari | Acquired' finds Acquired). The best matches come first, and each result's match_quality tells you how confident the match is — including when a show matched only through its description (match_quality=description) rather than its name."},"slug":{"type":"string","description":"Filter by exact podcast slug (e.g., 'all-in'). Slugs are stable, human-readable identifiers returned on every podcast object."},"sort":{"enum":["relevance","popularity"],"type":"string","description":"Result ordering. relevance — the default whenever q is present — ranks by how well each podcast matches the query, breaking ties by popularity. popularity orders purely by the global popularity percentile (most popular first; podcasts not currently charting sort last), and also overrides topic_id's concentration ordering. Without q or topic_id, results are popularity-ordered either way."},"limit":{"type":"integer","format":"int64","description":"Results per page"},"cursor":{"type":"string","description":"Opaque pagination cursor from previous response"},"has_ads":{"enum":["true","false"],"type":"string","description":"Filter by advertiser presence. Pass false to find ad-free shows — an assertion that requires the show to have enough analyzed episodes, so sparsely-analyzed podcasts are excluded rather than presumed ad-free."},"language":{"type":"string","description":"Filter by the podcast's language (ISO 639-1 code, e.g. 'en', 'fr'). Matches the primary language subtag, so 'fr' covers 'fr-FR'."},"topic_id":{"type":"string","description":"Filter by topic ID, ancestry slug (e.g., technology/artificial-intelligence), or ancestry path hash. Matches podcasts where the topic accounts for at least 20% of the show's episodes, ranked by topic concentration — not merely podcasts that mention it once."},"has_video":{"enum":["true","false"],"type":"string","description":"Filter by whether episodes have discovered video versions (e.g. YouTube releases)."},"format_signal":{"type":"array","items":{"type":"string"},"description":"Filter by detected production format. Pass a comma-separated list to match any of several formats — e.g. panel,call_in. Values mirror the format.signals field on podcast responses; a show can carry several signals."},"guest_frequency":{"type":"array","items":{"type":"string"},"description":"Filter by how often episodes feature a guest. Pass a comma-separated list to match any of several buckets — e.g. regular,always for interview-driven shows, or never for shows that don't host guests. Only matches podcasts with enough analyzed episodes to judge; values mirror the format.guest_frequency field on podcast responses."},"suitability_tier":{"enum":["SAFE","LIMITED","SENSITIVE","UNSAFE"],"type":"string","description":"Filter by brand-suitability tier (IAB Tech Lab Brand Safety & Suitability Framework, formerly GARM). Only returns podcasts whose most recent suitability analysis assigned this tier. Podcasts without a suitability analysis are excluded when this filter is set."},"publishing_status":{"enum":["active","dormant"],"type":"string","description":"Filter by publishing activity: active shows have released an episode within the last 90 days; dormant shows have not."},"popularity_threshold":{"type":"number","format":"double","description":"Restrict results to podcasts whose global popularity percentile is at least this value (accepted range [0,1]). Omitting the parameter or passing 0 disables the filter; only a value greater than 0 activates it. Popularity is always global — a cume_dist ranking over all currently-charting podcasts (Apple Podcasts) — never scoped to topic_id or any other filter. When the filter is active (threshold > 0), podcasts not currently charting have no percentile and are excluded, so a high threshold combined with a narrow topic_id may return zero results; lower or remove the threshold to widen the set."},"max_episodes_per_week":{"type":"number","format":"double","description":"Only podcasts publishing at most this many episodes per week on average (e.g. 0.5 for fortnightly-or-slower shows)."},"min_episodes_per_week":{"type":"number","format":"double","description":"Only podcasts publishing at least this many episodes per week on average (e.g. 5 for weekday dailies). Cadence is measured over the trailing 90 days; podcasts tracked too briefly to measure are excluded."},"max_avg_episode_minutes":{"type":"integer","format":"int64","description":"Only podcasts whose average episode runs at most this many minutes."},"min_avg_episode_minutes":{"type":"integer","format":"int64","description":"Only podcasts whose average episode runs at least this many minutes. Combine with max_avg_episode_minutes to target a length band (e.g. 20–40 minute commute shows)."}}}},"additionalProperties":false}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.01","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.01/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.01","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.01","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_h_I0ETIbM81MZhsCFVhdl","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.01","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Search the podcast catalog by show name with typo tolerance and match quality scoring","exampleAgentPrompt":"Can you find the podcast 'Acquired' for me — search the Particle Pro catalog and show me the top matches sorted by relevance?","exampleUseCases":[{"title":"Find podcast slug for downstream API calls","prompt":"I need the slug for the 'Lex Fridman Podcast' — can you search the Particle Pro catalog and grab its stable identifier so I can use it in other lookups?"},{"title":"Locate show from vague or misremembered name","prompt":"I can't remember the exact name but it's something like 'offline jon favreau' — can you search the podcast catalog and find the best match, and tell me the match quality?"},{"title":"Find ad-free shows in a specific language","prompt":"Find me ad-free English-language podcasts about technology, sorted by popularity — use the Particle Pro podcast search with has_ads set to false."}],"resultDescription":"A paginated list of podcast objects ranked by relevance or popularity, each including the podcast name, stable slug, popularity percentile, match quality indicator (e.g. 'name' or 'description'), language, and advertiser presence. A pagination cursor is returned when more results are available.","failureModes":["Empty results when query is too specific or show is not in catalog","Ambiguous matches when show name is very generic — rely on match_quality field to disambiguate","has_ads=false excludes sparsely-analyzed podcasts, potentially missing valid ad-free shows","Invalid cursor value causes pagination error","Unsupported language code returns no results or an error"],"whenToPreferThis":"Use this endpoint when you need to look up a podcast by name, including fuzzy or partial names, typos, or pasted episode titles. It is the canonical podcast search endpoint in the Particle Pro catalog — prefer it over slug-based filtering when the exact slug is unknown. It is also the right choice when you need to discover podcasts by language, ad presence, or popularity before calling other Particle Pro endpoints that require a slug or show identifier.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T00:56:22.600Z","isFirstParty":false}