To find podcasts (shows) by name or topic, use /v1/podcasts/search?q=…. This endpoint searches inside episode dialogue — by meaning (semantic_search), by exact phrase (keyword_search), or both at once (hybrid). Each result is a segment of an episode, returned with bounded preview windows of dialogue and any highlight clips that overlap the segment.
For “every line about a person or company” use /v1/podcasts/mentions instead — that endpoint returns episode-grouped mention windows with line-level highlights and is shaped for the read-everything-about-X use case. entity_id and company_id here narrow the result set to episodes featuring the resolved entity, but the ranking still comes from semantic_search / keyword_search.
Prefer the terminal? This endpoint is also a command in the Particle CLI: pick Particle CLI in the request example’s language menu. Install the Particle CLI.
Vector-similarity search by meaning. Express the query the way you'd describe the topic to a colleague — paraphrase tolerant, finds segments that express the same idea in different vocabulary. Combine with keyword_search for hybrid ranking. Describe a topic, not a name: to find a specific person or company, filter with entity_id / company_id (or use /v1/podcasts/mentions for every line about them) — and for an exact token like a ticker, use keyword_search.
BM25 lexical search over dialogue. Use when an exact token must appear verbatim — tickers, drug names, product codes. By default every token must appear somewhere in the matched segment (see keyword_match). Wrap any token sequence in double quotes (e.g. "machine learning") to additionally require those words adjacent and in order in the segment's spoken dialogue — a speaker's own name is not indexed as dialogue, so quoting a person's name finds segments where the name appears in what was said, not segments they speak in. Adjacency spans consecutive lines, so a phrase may rarely straddle a line break. Multiple quoted phrases AND together (e.g. "central bank" "interest rates"). There is no boolean OR — a bare OR is treated as an ordinary word, so pass alternatives as separate requests.
How unquoted keyword_search terms are applied. 'required' (default) filters to segments containing every term, so results are guaranteed to contain what you typed — this also constrains semantic_search, making a hybrid query an intersection of the two. 'ranked' instead lets unquoted terms only boost BM25 relevance without excluding anything, which widens recall for loose bag-of-words queries but returns segments that may contain none of them. Quoted phrases are unaffected: they filter in BOTH modes, so to relax a phrase remove its quotes. Ignored when keyword_search is empty.
Optional entity or person slug or ID. Filters results to episodes featuring this entity. A person with no linked entity matches the episodes they speak in. A slug that names both an entity and a person means the entity; pass the person's ID to filter by the person. For 'every line about X', use /v1/podcasts/mentions instead.
Optional entity category slug. Filters to episodes that mention any entity in that category (e.g. 'company', 'school', 'book'). Speakers are always people, so this filter only narrows mentioned entities. Cannot be combined with 'role'. Ignored when entity_id resolves to a specific entity. See GET /v1/entities/types for the available slugs.
Optional person slug or ID (a person's entity slug or ID works too). Keeps only segments in which this person speaks a line, and only their lines can be a window's match: 'did X say Y' rather than entity_id's 'Y came up in an episode with X'. With keyword_search, the person's own lines in the segment must carry every quoted phrase, and every unquoted term under keyword_match=required; a phrase may run across their consecutive lines but never into someone else's. Only speaking roles count: a clip of the person played on another show (a soundbite) is not them speaking, so their original turns up and its replays do not. With format=compact the page keeps the same shape and the same filtering, but loads transcripts to apply it. Retrieval narrows to the person's episodes before the line check, so lines of theirs that rank below other segments of those episodes can be missed: an empty page does not prove they never said it. Narrow with podcast_id, episode_id, since or until, or try semantic_search. Cannot be combined with the guest_ filters.
How the entity must relate to the episode. Speaking roles: 'guest', 'host', 'panelist', 'correspondent', or 'speaker' for any of them. 'mention' means the entity is talked about rather than speaking. Omit to match both. Matches the role values on /v1/podcasts/episodes.
Response shape. 'full' (default) carries each match's bounded dialogue windows and overlapping clips. 'compact' omits windows and clips and skips the transcript load and line scoring that produce them, so the page is a fraction of the size and returns sooner: each match keeps its episode, its segment (id, title, description, summary, bounds) and its relevance score. Use it to screen many results — a fan-out over companies, themes, or dates — and fetch dialogue only for the matches that survive, via GET /v1/podcasts/segments/{id}/transcript or a full-format search narrowed with episode_id.
Lines of surrounding dialogue around each matched line (1-15, default 1). Widens each match's transcript window in place — request more context instead of fetching the full transcript. Window size stays bounded even at the maximum. Ignored when format=compact.
Only segments of episodes with a guest listed under this SOC 2018 or ISCO-08 occupation (code, slug, or title), including a SOC group or everyday name such as physicians or doctors. A word with no occupation filters by the field of research or capacity it names: oncologists is field 3211, founders is guest_capacity=executive_founder.
Only segments of episodes with a guest who knows their field in this capacity, such as executive_founder for founders. It narrows the other filters; an everyday word for a capacity passed as guest_occupation (founders, politicians) lands here too.
Keep only lines said a certain way, by their speaker statement characteristics: speaker_statement_characteristics[certainty]=confident&speaker_statement_characteristics[temporal_orientation]=future finds confident predictions. Each key is an axis (sentiment, certainty, specificity, temporal_orientation) and its value one or more of that axis's labels, comma-separated: labels on one axis match any of them, and axes combine with AND. Every is_match line carries labels the filter accepts, and a segment is returned only when one of its lines does. Requires semantic_search, which names the topic: how something is said belongs here, never in the search text. With speaker or the guest_ filters, only the lines the selected people say count: confident predictions by cardiologists are guest_occupation=cardiologists with these. When more than 10,000 of their lines carry the labels, the newest 10,000 are searched; narrow with since, until, podcast_id or another label to reach older ones. The guest_ filters must name guest_occupation, guest_field or guest_capacity here and may select at most 5,000 guests with at most 50,000 appearances between them; narrow a broader filter with guest_practicing, guest_seniority or guest_standing. Cannot be combined with keyword_search alone, a quoted keyword_search phrase, or keyword_match=ranked.
Resolved entity, when entity_id or company_id filtered the result set
Show child attributes
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Particle API","colors":{"primary":"#0369a1","light":"#0369a1","dark":"#0369a1"},"logo":{"light":"https://mintcdn.com/particle-c40da4e2/tk5mmLn_iJIxNhbI/logo/light.svg?fit=max\u0026auto=format\u0026n=tk5mmLn_iJIxNhbI\u0026q=85\u0026s=a659784e597694177292b154cc1808f4","dark":"https://mintcdn.com/particle-c40da4e2/i9nEIhB1W5dtahvW/logo/dark.svg?fit=max\u0026auto=format\u0026n=i9nEIhB1W5dtahvW\u0026q=85\u0026s=53bcea9f9026f0bf0083447adbc1d006"},"favicon":"https://mintcdn.com/particle-c40da4e2/tk5mmLn_iJIxNhbI/favicon.png?fit=max\u0026auto=format\u0026n=tk5mmLn_iJIxNhbI\u0026q=85\u0026s=f4b42e6e90da406c6f1e6b4b8615113c","api":{"examples":{"languages":["curl","bash"],"autogenerate":false}},"appearance":{"default":"dark","strict":true},"background":{"color":{"dark":"#0C0D0D"}},"navbar":{"links":[{"href":"https://status.particle.pro","label":"Status"},{"href":"mailto:api@particle.pro","label":"Support"}],"primary":{"type":"button","label":"API Dashboard","href":"https://platform.particle.pro"}},"footer":{"socials":{"x":"https://x.com/particle_news","github":"https://github.com/particlepro","linkedin":"https://linkedin.com/company/particle-news"}},"fonts":{"family":"Geist","weight":400},"styling":{"codeblocks":"dark","latex":true},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","cursor","vscode",{"title":"Connect Particle Pro MCP","description":"Install the Particle Pro MCP server in your AI client","icon":"plug","href":"/mcp/quickstart"},{"title":"Set up an AI agent","description":"Hand your agent agents.md and it connects itself","icon":"robot","href":"https://api.particle.pro/agents.md"}],"display":"header"},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"particle-c40da4e2","hasAudioNarration":false,"actualSubdomain":"particle-c40da4e2","customDomains":["docs.particle.pro"],"gitSource":{"type":"github","owner":"mongoosehq","repo":"api","deployBranch":"main","contentDirectory":"server/particlepro/docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6adfee4fd8d363e6a2d6c69a","collectionId":"f441cc21-a863-4b1a-b18d-da72009ceffd","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6adfee4fd8d363e6a2d6c69a"},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6adff174a4ee73f0fec76a42","clientVersion":"0.0.3971","searchFilterCounts":[{"language":"default","tag":"API reference","count":166},{"language":"default","tag":"Guides","count":126},{"language":"default","tag":"Errors","count":70},{"language":"default","tag":"Podcasts","count":57},{"language":"default","tag":"MCP server","count":54},{"language":"default","tag":"Tools","count":47},{"language":"default","tag":"Billing \u0026 subscription","count":30},{"language":"default","tag":"Alerts","count":27},{"language":"default","tag":"People","count":19},{"language":"default","tag":"Podcast Episodes","count":16}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true,"deflection":{"enabled":true,"email":"api@particle.news","showHelpButton":true}},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":"body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html.dark #mdx-content,html.dark #page-title,html.dark h1,html.dark h2,html.dark h3{color:rgba(255,255,255,.9)}html.dark #sidebar a,html.dark .accordion,html.dark [class*=tooltip]{color:rgba(255,255,255,.6)}html.dark .method-pill,html.dark [class*=admonition] p,html.dark [class*=breadcrumb],html.dark [class*=callout] p,html.dark [class*=eyebrow]{color:rgba(255,255,255,.5)}html.dark footer,html.dark footer *{color:rgba(255,255,255,.2)}html.dark .accordion,html.dark .card,html.dark .code-block,html.dark .steps,html.dark .tabs{border-color:rgba(255,255,255,.15)}html.dark .card{border-radius:.75rem}html.dark .code-block{border-radius:.5rem}html.dark .code-block pre{background-color:#1a1b1b}.dark\\:border-white\\/\\[0\\.07\\]:is(.dark *){border-color:rgba(255,255,255,.15)}html.dark #sidebar{background-color:#0c0d0d;border-color:rgba(255,255,255,.15)}html.dark,html.dark *{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}html.dark ::-webkit-scrollbar,html.dark::-webkit-scrollbar{width:6px;height:6px}html.dark ::-webkit-scrollbar-track,html.dark::-webkit-scrollbar-track{background:0 0}html.dark ::-webkit-scrollbar-thumb,html.dark::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:3px}html.dark ::-webkit-scrollbar-thumb:hover,html.dark::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}"}],"page":{"pagePath":"api-reference/podcast-episode-search/search-podcast-episode-content","slug":"/api-reference/podcast-episode-search/search-podcast-episode-content","pageMetadata":{"title":"Search podcast episode content","description":"To find podcasts (shows) by name or topic, use `/v1/podcasts/search?q=…`. This endpoint searches *inside* episode dialogue — by meaning (`semantic_search`), by exact phrase (`keyword_search`), or both at once (hybrid). Each result is a segment of an episode, returned with bounded preview windows of dialogue and any highlight clips that overlap the segment.\n\nFor \"every line about a person or company\" use `/v1/podcasts/mentions` instead — that endpoint returns episode-grouped mention windows with line-level highlights and is shaped for the read-everything-about-X use case. `entity_id` and `company_id` here narrow the result set to episodes featuring the resolved entity, but the ranking still comes from `semantic_search` / `keyword_search`.","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/search","href":"/api-reference/podcast-episode-search/search-podcast-episode-content","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n em: \"em\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [\"To find podcasts (shows) by name or topic, use \", _jsx(_components.code, {\n children: \"/v1/podcasts/search?q=…\"\n }), \". This endpoint searches \", _jsx(_components.em, {\n children: \"inside\"\n }), \" episode dialogue — by meaning (\", _jsx(_components.code, {\n children: \"semantic_search\"\n }), \"), by exact phrase (\", _jsx(_components.code, {\n children: \"keyword_search\"\n }), \"), or both at once (hybrid). Each result is a segment of an episode, returned with bounded preview windows of dialogue and any highlight clips that overlap the segment.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"For “every line about a person or company” use \", _jsx(_components.code, {\n children: \"/v1/podcasts/mentions\"\n }), \" instead — that endpoint returns episode-grouped mention windows with line-level highlights and is shaped for the read-everything-about-X use case. \", _jsx(_components.code, {\n children: \"entity_id\"\n }), \" and \", _jsx(_components.code, {\n children: \"company_id\"\n }), \" here narrow the result set to episodes featuring the resolved entity, but the ranking still comes from \", _jsx(_components.code, {\n children: \"semantic_search\"\n }), \" / \", _jsx(_components.code, {\n children: \"keyword_search\"\n }), \".\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,strong:`strong`,..._provideComponents(),...props.components},{Tip}=_components;if(!Tip)_missingMdxReference(`Tip`,true);return _jsxs(Tip,{children:[`Prefer the terminal? This endpoint is also a command in the Particle CLI: pick `,_jsx(_components.strong,{children:`Particle CLI`}),` in the request example’s language menu. `,_jsx(_components.a,{href:`https://cli.particle.pro`,children:`Install the Particle CLI`}),`.`]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"codeStyling":"dark","config":{},"pageMetadata":{"title":"Search podcast episode content","description":"To find podcasts (shows) by name or topic, use `/v1/podcasts/search?q=…`. This endpoint searches *inside* episode dialogue — by meaning (`semantic_search`), by exact phrase (`keyword_search`), or both at once (hybrid). Each result is a segment of an episode, returned with bounded preview windows of dialogue and any highlight clips that overlap the segment.\n\nFor \"every line about a person or company\" use `/v1/podcasts/mentions` instead — that endpoint returns episode-grouped mention windows with line-level highlights and is shaped for the read-everything-about-X use case. `entity_id` and `company_id` here narrow the result set to episodes featuring the resolved entity, but the ranking still comes from `semantic_search` / `keyword_search`.","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/search","href":"/api-reference/podcast-episode-search/search-podcast-episode-content","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"To find podcasts (shows) by name or topic, use `/v1/podcasts/search?q=…`. This endpoint searches *inside* episode dialogue — by meaning (`semantic_search`), by exact phrase (`keyword_search`), or both at once (hybrid). Each result is a segment of an episode, returned with bounded preview windows of dialogue and any highlight clips that overlap the segment.\n\nFor \"every line about a person or company\" use `/v1/podcasts/mentions` instead — that endpoint returns episode-grouped mention windows with line-level highlights and is shaped for the read-everything-about-X use case. `entity_id` and `company_id` here narrow the result set to episodes featuring the resolved entity, but the ranking still comes from `semantic_search` / `keyword_search`.","operationId":"search-episodes","parameters":["dc5f0b99-c3f1-458e-be3a-cfe80ddece2e","b6259c06-3f6c-4603-8339-ff3020d18b84","19b1ba8b-8959-4509-8d7e-948eb52c9be9","20eb1543-c13b-4de1-913e-7f30c6308ce9","3f41d442-9cc7-4c67-b2c4-d93226421f81","b6873470-53ae-475c-8c5f-d528ab611f74","0eb1c81f-3c51-4672-8ff0-d0c4bc2272cc","b35ec737-8d79-4b09-a668-7ba098c38be3","61620415-b27b-4e1b-902b-00080dfce7e0","1022e8e1-4257-4a1d-bfb5-89cd77d10bde","8825b144-fb92-45c2-81fe-5194d3f5c6ab","5097ecb2-95fc-448c-8154-b1870e914203","a5ce29b7-71cc-4432-8430-c8b0efa847b5","2b9e7960-de42-4c39-80db-c9c0c30e5200","a45a9c5e-e080-43e5-8edb-0cfa4bcd236f","9a58cf20-e0ee-413e-9388-220937195c82","8e4f3fe6-f82e-4d0c-aa64-e7b152b93a09","ac0273c8-bce1-4615-b1e4-2d1affbd523e","6886d1ae-4ee9-4382-a7ce-08d132e02974","13b2cec5-5642-4df0-a544-d1f44ee17427","4fa38da2-9279-4eb1-8ccc-22841c38142e","de48ba79-2fcf-48db-be9c-133ca356ee0e","4962a839-b5ef-4adb-9549-0464dab66545","2ad1be4c-97a2-44a2-80c4-c0a0d5c05dc6","a564638c-62cd-45d4-9b2d-b25ebf31f68c","8d7d2031-2fba-450f-a521-894972eeec09","12ca6e1e-5411-4ad2-a761-dfe00812a551"],"responses":{"200":"c72a6cd3-cb47-4ee2-9c84-b741f43d105f","402":"f2ff5f8d-50ef-4dd9-b920-84a0013c6aab","default":"a8c77bcd-cbb4-4405-87cf-10bf1e6d41cb"},"summary":"Search podcast episode content","tags":["Podcast Episode Search","tier:standard"],"x-codeSamples":[{"label":"cURL","lang":"curl","source":"curl -H \"X-API-Key: $PARTICLE_API_KEY\" \\\n \"https://api.particle.pro/v1/podcasts/episodes/search?keyword_match=required\u0026format=full\u0026context=1\u0026limit=25\""},{"label":"Particle CLI","lang":"bash","source":"# Install: https://cli.particle.pro\nparticle search \u003csemantic_search>"}],"x-cost-weight":1,"x-mint":{"content":"\u003cTip>Prefer the terminal? This endpoint is also a command in the Particle CLI: pick **Particle CLI** in the request example's language menu. [Install the Particle CLI](https://cli.particle.pro).\u003c/Tip>"},"x-pagination":"cursor","x-payment-info":{"price":{"amount":"0.030000","currency":"USD","mode":"fixed"},"protocols":[{"x402":{}}]},"x-tier":"standard","method":"get","type":"path","servers":["9d8bd59a-3251-48f4-b107-f87824ed03d9"],"security":["0e11c280-b0b8-440b-b186-22a5487cb9a8","84facd77-9c06-489c-b8d6-96a8ff9a2411"],"path":"/v1/podcasts/episodes/search","baseUrlOptions":["https://api.particle.pro"],"title":"Search podcast episode content","codeSamples":[{"label":"cURL","lang":"curl","source":"curl -H \"X-API-Key: $PARTICLE_API_KEY\" \\\n \"https://api.particle.pro/v1/podcasts/episodes/search?keyword_match=required\u0026format=full\u0026context=1\u0026limit=25\""},{"label":"Particle CLI","lang":"bash","source":"# Install: https://cli.particle.pro\nparticle search \u003csemantic_search>"}],"requestExampleLanguages":["bash","bash"],"requiredOnlyExamples":false,"disableCodeSampleGeneration":true,"requestExampleType":"codeSamples","responseExampleType":"generated"},"dependencies":{"parameters":{"dc5f0b99-c3f1-458e-be3a-cfe80ddece2e":{"description":"Vector-similarity search by meaning. Express the query the way you'd describe the topic to a colleague — paraphrase tolerant, finds segments that express the same idea in different vocabulary. Combine with keyword_search for hybrid ranking. Describe a topic, not a name: to find a specific person or company, filter with entity_id / company_id (or use /v1/podcasts/mentions for every line about them) — and for an exact token like a ticker, use keyword_search.","explode":false,"in":"query","name":"semantic_search","schema":{"description":"Vector-similarity search by meaning. Express the query the way you'd describe the topic to a colleague — paraphrase tolerant, finds segments that express the same idea in different vocabulary. Combine with keyword_search for hybrid ranking. Describe a topic, not a name: to find a specific person or company, filter with entity_id / company_id (or use /v1/podcasts/mentions for every line about them) — and for an exact token like a ticker, use keyword_search.","maxLength":500,"type":"string","uniqueKey":"","typeLabel":"string"}},"b6259c06-3f6c-4603-8339-ff3020d18b84":{"description":"BM25 lexical search over dialogue. Use when an exact token must appear verbatim — tickers, drug names, product codes. By default every token must appear somewhere in the matched segment (see keyword_match). Wrap any token sequence in double quotes (e.g. \"machine learning\") to additionally require those words adjacent and in order in the segment's spoken dialogue — a speaker's own name is not indexed as dialogue, so quoting a person's name finds segments where the name appears in what was said, not segments they speak in. Adjacency spans consecutive lines, so a phrase may rarely straddle a line break. Multiple quoted phrases AND together (e.g. \"central bank\" \"interest rates\"). There is no boolean OR — a bare OR is treated as an ordinary word, so pass alternatives as separate requests.","explode":false,"in":"query","name":"keyword_search","schema":{"description":"BM25 lexical search over dialogue. Use when an exact token must appear verbatim — tickers, drug names, product codes. By default every token must appear somewhere in the matched segment (see keyword_match). Wrap any token sequence in double quotes (e.g. \"machine learning\") to additionally require those words adjacent and in order in the segment's spoken dialogue — a speaker's own name is not indexed as dialogue, so quoting a person's name finds segments where the name appears in what was said, not segments they speak in. Adjacency spans consecutive lines, so a phrase may rarely straddle a line break. Multiple quoted phrases AND together (e.g. \"central bank\" \"interest rates\"). There is no boolean OR — a bare OR is treated as an ordinary word, so pass alternatives as separate requests.","maxLength":500,"type":"string","uniqueKey":"","typeLabel":"string"}},"19b1ba8b-8959-4509-8d7e-948eb52c9be9":{"description":"How unquoted keyword_search terms are applied. 'required' (default) filters to segments containing every term, so results are guaranteed to contain what you typed — this also constrains semantic_search, making a hybrid query an intersection of the two. 'ranked' instead lets unquoted terms only boost BM25 relevance without excluding anything, which widens recall for loose bag-of-words queries but returns segments that may contain none of them. Quoted phrases are unaffected: they filter in BOTH modes, so to relax a phrase remove its quotes. Ignored when keyword_search is empty.","explode":false,"in":"query","name":"keyword_match","schema":{"default":"required","description":"How unquoted keyword_search terms are applied. 'required' (default) filters to segments containing every term, so results are guaranteed to contain what you typed — this also constrains semantic_search, making a hybrid query an intersection of the two. 'ranked' instead lets unquoted terms only boost BM25 relevance without excluding anything, which widens recall for loose bag-of-words queries but returns segments that may contain none of them. Quoted phrases are unaffected: they filter in BOTH modes, so to relax a phrase remove its quotes. Ignored when keyword_search is empty.","enum":["required","ranked"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"20eb1543-c13b-4de1-913e-7f30c6308ce9":{"description":"Optional entity or person slug or ID. Filters results to episodes featuring this entity. A person with no linked entity matches the episodes they speak in. A slug that names both an entity and a person means the entity; pass the person's ID to filter by the person. For 'every line about X', use /v1/podcasts/mentions instead.","explode":false,"in":"query","name":"entity_id","schema":{"description":"Optional entity or person slug or ID. Filters results to episodes featuring this entity. A person with no linked entity matches the episodes they speak in. A slug that names both an entity and a person means the entity; pass the person's ID to filter by the person. For 'every line about X', use /v1/podcasts/mentions instead.","type":"string","uniqueKey":"","typeLabel":"string"}},"3f41d442-9cc7-4c67-b2c4-d93226421f81":{"description":"Optional entity category slug. Filters to episodes that *mention* any entity in that category (e.g. 'company', 'school', 'book'). Speakers are always people, so this filter only narrows mentioned entities. Cannot be combined with 'role'. Ignored when entity_id resolves to a specific entity. See GET /v1/entities/types for the available slugs.","explode":false,"in":"query","name":"entity_type","schema":{"description":"Optional entity category slug. Filters to episodes that *mention* any entity in that category (e.g. 'company', 'school', 'book'). Speakers are always people, so this filter only narrows mentioned entities. Cannot be combined with 'role'. Ignored when entity_id resolves to a specific entity. See GET /v1/entities/types for the available slugs.","type":"string","uniqueKey":"","typeLabel":"string"}},"b6873470-53ae-475c-8c5f-d528ab611f74":{"description":"Optional company slug, domain, or ID. Resolves to the company's linked entity and applies as a filter.","explode":false,"in":"query","name":"company_id","schema":{"description":"Optional company slug, domain, or ID. Resolves to the company's linked entity and applies as a filter.","type":"string","uniqueKey":"","typeLabel":"string"}},"0eb1c81f-3c51-4672-8ff0-d0c4bc2272cc":{"description":"Optional person slug or ID (a person's entity slug or ID works too). Keeps only segments in which this person speaks a line, and only their lines can be a window's match: 'did X say Y' rather than entity_id's 'Y came up in an episode with X'. With keyword_search, the person's own lines in the segment must carry every quoted phrase, and every unquoted term under keyword_match=required; a phrase may run across their consecutive lines but never into someone else's. Only speaking roles count: a clip of the person played on another show (a soundbite) is not them speaking, so their original turns up and its replays do not. With format=compact the page keeps the same shape and the same filtering, but loads transcripts to apply it. Retrieval narrows to the person's episodes before the line check, so lines of theirs that rank below other segments of those episodes can be missed: an empty page does not prove they never said it. Narrow with podcast_id, episode_id, since or until, or try semantic_search. Cannot be combined with the guest_ filters.","explode":false,"in":"query","name":"speaker","schema":{"description":"Optional person slug or ID (a person's entity slug or ID works too). Keeps only segments in which this person speaks a line, and only their lines can be a window's match: 'did X say Y' rather than entity_id's 'Y came up in an episode with X'. With keyword_search, the person's own lines in the segment must carry every quoted phrase, and every unquoted term under keyword_match=required; a phrase may run across their consecutive lines but never into someone else's. Only speaking roles count: a clip of the person played on another show (a soundbite) is not them speaking, so their original turns up and its replays do not. With format=compact the page keeps the same shape and the same filtering, but loads transcripts to apply it. Retrieval narrows to the person's episodes before the line check, so lines of theirs that rank below other segments of those episodes can be missed: an empty page does not prove they never said it. Narrow with podcast_id, episode_id, since or until, or try semantic_search. Cannot be combined with the guest_ filters.","type":"string","uniqueKey":"","typeLabel":"string"}},"b35ec737-8d79-4b09-a668-7ba098c38be3":{"description":"Filter to a specific episode by slug or ID.","explode":false,"in":"query","name":"episode_id","schema":{"description":"Filter to a specific episode by slug or ID.","type":"string","uniqueKey":"","typeLabel":"string"}},"61620415-b27b-4e1b-902b-00080dfce7e0":{"description":"Podcast slug, internal ID, or numeric iTunes ID.","explode":false,"in":"query","name":"podcast_id","schema":{"description":"Podcast slug, internal ID, or numeric iTunes ID.","type":"string","uniqueKey":"","typeLabel":"string"}},"1022e8e1-4257-4a1d-bfb5-89cd77d10bde":{"description":"Segment type filter.","explode":false,"in":"query","name":"type","schema":{"description":"Segment type filter.","enum":["INTRO","PERSONAL_BANTER","TOPIC_DISCUSSION","INTERVIEW","TRANSITION","AD","OUTRO"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"8825b144-fb92-45c2-81fe-5194d3f5c6ab":{"description":"How the entity must relate to the episode. Speaking roles: 'guest', 'host', 'panelist', 'correspondent', or 'speaker' for any of them. 'mention' means the entity is talked about rather than speaking. Omit to match both. Matches the role values on /v1/podcasts/episodes.","explode":false,"in":"query","name":"role","schema":{"description":"How the entity must relate to the episode. Speaking roles: 'guest', 'host', 'panelist', 'correspondent', or 'speaker' for any of them. 'mention' means the entity is talked about rather than speaking. Omit to match both. Matches the role values on /v1/podcasts/episodes.","enum":["guest","host","panelist","correspondent","speaker","mention"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"5097ecb2-95fc-448c-8154-b1870e914203":{"description":"Restrict to episodes of podcasts in this language (ISO 639-1 code, e.g. 'fr'). Matches the podcast's primary language subtag, so 'fr' covers 'fr-FR'.","explode":false,"in":"query","name":"language","schema":{"description":"Restrict to episodes of podcasts in this language (ISO 639-1 code, e.g. 'fr'). Matches the podcast's primary language subtag, so 'fr' covers 'fr-FR'.","examples":["fr"],"type":"string","uniqueKey":"","typeLabel":"string"}},"a5ce29b7-71cc-4432-8430-c8b0efa847b5":{"description":"Only segments from episodes published after this date.","explode":false,"in":"query","name":"since","schema":{"description":"Only segments from episodes published after this date.","examples":["2024-01-01"],"type":"string","uniqueKey":"","typeLabel":"string"}},"2b9e7960-de42-4c39-80db-c9c0c30e5200":{"description":"Only segments from episodes published on or before this date. A bare date includes that whole day.","explode":false,"in":"query","name":"until","schema":{"description":"Only segments from episodes published on or before this date. A bare date includes that whole day.","examples":["2024-06-01"],"type":"string","uniqueKey":"","typeLabel":"string"}},"a45a9c5e-e080-43e5-8edb-0cfa4bcd236f":{"description":"Sort order. Defaults to relevance.","explode":false,"in":"query","name":"sort","schema":{"description":"Sort order. Defaults to relevance.","enum":["relevance","recency"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"9a58cf20-e0ee-413e-9388-220937195c82":{"description":"Response shape. 'full' (default) carries each match's bounded dialogue windows and overlapping clips. 'compact' omits windows and clips and skips the transcript load and line scoring that produce them, so the page is a fraction of the size and returns sooner: each match keeps its episode, its segment (id, title, description, summary, bounds) and its relevance score. Use it to screen many results — a fan-out over companies, themes, or dates — and fetch dialogue only for the matches that survive, via GET /v1/podcasts/segments/{id}/transcript or a full-format search narrowed with episode_id.","explode":false,"in":"query","name":"format","schema":{"default":"full","description":"Response shape. 'full' (default) carries each match's bounded dialogue windows and overlapping clips. 'compact' omits windows and clips and skips the transcript load and line scoring that produce them, so the page is a fraction of the size and returns sooner: each match keeps its episode, its segment (id, title, description, summary, bounds) and its relevance score. Use it to screen many results — a fan-out over companies, themes, or dates — and fetch dialogue only for the matches that survive, via GET /v1/podcasts/segments/{id}/transcript or a full-format search narrowed with episode_id.","enum":["full","compact"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"8e4f3fe6-f82e-4d0c-aa64-e7b152b93a09":{"description":"Lines of surrounding dialogue around each matched line (1-15, default 1). Widens each match's transcript window in place — request more context instead of fetching the full transcript. Window size stays bounded even at the maximum. Ignored when format=compact.","explode":false,"in":"query","name":"context","schema":{"default":1,"description":"Lines of surrounding dialogue around each matched line (1-15, default 1). Widens each match's transcript window in place — request more context instead of fetching the full transcript. Window size stays bounded even at the maximum. Ignored when format=compact.","format":"int64","maximum":15,"minimum":1,"type":"integer","uniqueKey":"","typeLabel":"integer\u003cint64>"}},"ac0273c8-bce1-4615-b1e4-2d1affbd523e":{"description":"Results per page (1-100, default 25).","explode":false,"in":"query","name":"limit","schema":{"default":25,"description":"Results per page (1-100, default 25).","format":"int64","maximum":100,"minimum":1,"type":"integer","uniqueKey":"","typeLabel":"integer\u003cint64>"}},"6886d1ae-4ee9-4382-a7ce-08d132e02974":{"description":"Opaque cursor from a previous response.","explode":false,"in":"query","name":"cursor","schema":{"description":"Opaque cursor from a previous response.","type":"string","uniqueKey":"","typeLabel":"string"}},"13b2cec5-5642-4df0-a544-d1f44ee17427":{"description":"Only segments of episodes with a guest listed under this SOC 2018 or ISCO-08 occupation (code, slug, or title), including a SOC group or everyday name such as physicians or doctors. A word with no occupation filters by the field of research or capacity it names: oncologists is field 3211, founders is guest_capacity=executive_founder.","explode":false,"in":"query","name":"guest_occupation","schema":{"description":"Only segments of episodes with a guest listed under this SOC 2018 or ISCO-08 occupation (code, slug, or title), including a SOC group or everyday name such as physicians or doctors. A word with no occupation filters by the field of research or capacity it names: oncologists is field 3211, founders is guest_capacity=executive_founder.","maxLength":200,"type":"string","uniqueKey":"","typeLabel":"string"}},"4fa38da2-9279-4eb1-8ccc-22841c38142e":{"description":"Only segments of episodes with a guest listed under this ANZSRC 2020 field of research (code, slug, or title).","explode":false,"in":"query","name":"guest_field","schema":{"description":"Only segments of episodes with a guest listed under this ANZSRC 2020 field of research (code, slug, or title).","maxLength":200,"type":"string","uniqueKey":"","typeLabel":"string"}},"de48ba79-2fcf-48db-be9c-133ca356ee0e":{"description":"Only segments of episodes with a guest whose standing is recognized this way.","explode":false,"in":"query","name":"guest_standing","schema":{"description":"Only segments of episodes with a guest whose standing is recognized this way.","enum":["established","self_described","unverified"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"4962a839-b5ef-4adb-9549-0464dab66545":{"description":"Only segments of episodes with a guest at this seniority or above.","explode":false,"in":"query","name":"guest_seniority","schema":{"description":"Only segments of episodes with a guest at this seniority or above.","enum":["professional","senior","distinguished"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"2ad1be4c-97a2-44a2-80c4-c0a0d5c05dc6":{"description":"Only segments of episodes with a guest who knows their field in this capacity, such as executive_founder for founders. It narrows the other filters; an everyday word for a capacity passed as guest_occupation (founders, politicians) lands here too.","explode":false,"in":"query","name":"guest_capacity","schema":{"description":"Only segments of episodes with a guest who knows their field in this capacity, such as executive_founder for founders. It narrows the other filters; an everyday word for a capacity passed as guest_occupation (founders, politicians) lands here too.","enum":["researcher","licensed_professional","practitioner","executive_founder","public_official","journalist_analyst","creator_entertainer","athlete_coach","clergy","firsthand","layperson"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"a564638c-62cd-45d4-9b2d-b25ebf31f68c":{"description":"Only segments of episodes with a guest who still works in guest_occupation, a SOC 2018 occupation or group.","explode":false,"in":"query","name":"guest_practicing","schema":{"description":"Only segments of episodes with a guest who still works in guest_occupation, a SOC 2018 occupation or group.","type":"boolean","uniqueKey":"","typeLabel":"boolean"}},"8d7d2031-2fba-450f-a521-894972eeec09":{"description":"Only segments of episodes with a guest speaking within their field (the guest the other guest_ filters select, when given).","explode":false,"in":"query","name":"guest_in_field","schema":{"description":"Only segments of episodes with a guest speaking within their field (the guest the other guest_ filters select, when given).","type":"boolean","uniqueKey":"","typeLabel":"boolean"}},"12ca6e1e-5411-4ad2-a761-dfe00812a551":{"description":"Keep only lines said a certain way, by their speaker statement characteristics: speaker_statement_characteristics[certainty]=confident\u0026speaker_statement_characteristics[temporal_orientation]=future finds confident predictions. Each key is an axis (sentiment, certainty, specificity, temporal_orientation) and its value one or more of that axis's labels, comma-separated: labels on one axis match any of them, and axes combine with AND. Every is_match line carries labels the filter accepts, and a segment is returned only when one of its lines does. Requires semantic_search, which names the topic: how something is said belongs here, never in the search text. With speaker or the guest_ filters, only the lines the selected people say count: confident predictions by cardiologists are guest_occupation=cardiologists with these. When more than 10,000 of their lines carry the labels, the newest 10,000 are searched; narrow with since, until, podcast_id or another label to reach older ones. The guest_ filters must name guest_occupation, guest_field or guest_capacity here and may select at most 5,000 guests with at most 50,000 appearances between them; narrow a broader filter with guest_practicing, guest_seniority or guest_standing. Cannot be combined with keyword_search alone, a quoted keyword_search phrase, or keyword_match=ranked.","explode":true,"in":"query","name":"speaker_statement_characteristics","schema":{"additionalProperties":false,"description":"Keep only lines said a certain way, by their speaker statement characteristics: speaker_statement_characteristics[certainty]=confident\u0026speaker_statement_characteristics[temporal_orientation]=future finds confident predictions. Each key is an axis (sentiment, certainty, specificity, temporal_orientation) and its value one or more of that axis's labels, comma-separated: labels on one axis match any of them, and axes combine with AND. Every is_match line carries labels the filter accepts, and a segment is returned only when one of its lines does. Requires semantic_search, which names the topic: how something is said belongs here, never in the search text. With speaker or the guest_ filters, only the lines the selected people say count: confident predictions by cardiologists are guest_occupation=cardiologists with these. When more than 10,000 of their lines carry the labels, the newest 10,000 are searched; narrow with since, until, podcast_id or another label to reach older ones. The guest_ filters must name guest_occupation, guest_field or guest_capacity here and may select at most 5,000 guests with at most 50,000 appearances between them; narrow a broader filter with guest_practicing, guest_seniority or guest_standing. Cannot be combined with keyword_search alone, a quoted keyword_search phrase, or keyword_match=ranked.","properties":{"certainty":{"description":"Keep lines labelled hedged, neutral, confident on certainty; comma-separate labels to accept any of them.","examples":["confident"],"type":"string","uniqueKey":"certainty","typeLabel":"string"},"sentiment":{"description":"Keep lines labelled negative, neutral, positive on sentiment; comma-separate labels to accept any of them.","examples":["positive"],"type":"string","uniqueKey":"sentiment","typeLabel":"string"},"specificity":{"description":"Keep lines labelled vague, neutral, specific on specificity; comma-separate labels to accept any of them.","examples":["specific"],"type":"string","uniqueKey":"specificity","typeLabel":"string"},"temporal_orientation":{"description":"Keep lines labelled past, present, future on temporal_orientation; comma-separate labels to accept any of them.","examples":["future"],"type":"string","uniqueKey":"temporal_orientation","typeLabel":"string"}},"type":"object","uniqueKey":"","typeLabel":"object"},"style":"deepObject"}},"responses":{"c72a6cd3-cb47-4ee2-9c84-b741f43d105f":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"data":{"description":"Matches on this page, ranked by relevance (default) or recency","items":{"additionalProperties":false,"properties":{"episode":{"additionalProperties":false,"properties":{"id":{"description":"Episode ID","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].episode.id","typeLabel":"string"},"title":{"description":"Episode title","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].episode.title","typeLabel":"string"},"podcast":{"additionalProperties":false,"properties":{"id":{"description":"Podcast ID","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].episode.podcast.id","typeLabel":"string"},"title":{"description":"Podcast title","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].episode.podcast.title","typeLabel":"string"},"best_rank":{"additionalProperties":false,"properties":{"captured_at":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].episode.podcast.best_rank.captured_at","typeLabel":"string\u003cdate-time>"},"chart_type":{"enum":["top_podcasts"],"type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].episode.podcast.best_rank.chart_type","typeLabel":"enum\u003cstring>"},"rank":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"data.items.[INDEX].episode.podcast.best_rank.rank","typeLabel":"integer\u003cint64>"},"source":{"enum":["apple","spotify"],"type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].episode.podcast.best_rank.source","typeLabel":"enum\u003cstring>"},"category_slug":{"type":"string","uniqueKey":"data.items.[INDEX].episode.podcast.best_rank.category_slug","typeLabel":"string"},"country":{"type":"string","uniqueKey":"data.items.[INDEX].episode.podcast.best_rank.country","typeLabel":"string"}},"required":["source","chart_type","rank","captured_at"],"type":"object","description":"The single best (lowest-numbered) chart position this podcast currently holds across all charts. Omitted when the podcast holds no current chart appearances, and on endpoints that do not attach it. Reading a full chart (with country/category/source filters and history) remains premium; a single show's own placement is available on every plan.","uniqueKey":"data.items.[INDEX].episode.podcast.best_rank","typeLabel":"object"},"image_url":{"description":"Cover image URL","type":"string","uniqueKey":"data.items.[INDEX].episode.podcast.image_url","typeLabel":"string"},"popularity":{"description":"Global popularity percentile in (0,1], a cume_dist ranking over all currently-charting podcasts (Apple Podcasts charts). Higher is more popular. Omitted when the podcast is not currently charting, on endpoints that build this resource from a projection rather than the full podcast row, and in episode stream, feed and archive payloads, which are stored and replayed: read it live from the podcast endpoints.","format":"double","type":"number","uniqueKey":"data.items.[INDEX].episode.podcast.popularity","typeLabel":"number\u003cdouble>"},"publisher":{"additionalProperties":false,"properties":{"id":{"description":"Publisher ID","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].episode.podcast.publisher.id","typeLabel":"string"},"name":{"description":"Publisher name","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].episode.podcast.publisher.name","typeLabel":"string"},"slug":{"description":"Human-readable slug identifier (e.g., 'goalhanger', 'iheartpodcasts'). When present, accepted in place of the ID anywhere a publisher reference is taken in the API. Occasionally absent on publishers whose name doesn't slugify (e.g., scripts not representable in ASCII URL slugs).","type":"string","uniqueKey":"data.items.[INDEX].episode.podcast.publisher.slug","typeLabel":"string"}},"required":["id","name"],"type":"object","description":"Publisher (network) attributed to this podcast. Present only when the embedding endpoint preloads publisher attribution and the podcast's publisher is known.","uniqueKey":"data.items.[INDEX].episode.podcast.publisher","typeLabel":"object"},"slug":{"description":"Human-readable slug identifier","type":"string","uniqueKey":"data.items.[INDEX].episode.podcast.slug","typeLabel":"string"}},"required":["id","title"],"type":"object","description":"Parent podcast","uniqueKey":"data.items.[INDEX].episode.podcast","typeLabel":"object"},"published_at":{"description":"Publication date","format":"date-time","type":"string","uniqueKey":"data.items.[INDEX].episode.published_at","typeLabel":"string\u003cdate-time>"},"slug":{"description":"Human-readable slug identifier","type":"string","uniqueKey":"data.items.[INDEX].episode.slug","typeLabel":"string"},"web_url":{"description":"The episode's page on Radar, where it plays beside its transcript: https://radar.particle.pro/podcasts/{podcast}/episodes/{episode}, each segment the slug or, when there is none, the raw UUID. Append ?t={seconds} to start at a moment; the hit's own url field already does. Omitted for back-catalogue episodes we have not ingested, which have no page, and in episode stream, feed and archive payloads stored before this field shipped (they are replayed as stored): build it from the slugs, or fetch the episode.","type":"string","uniqueKey":"data.items.[INDEX].episode.web_url","typeLabel":"string"}},"required":["id","title"],"type":"object","description":"Episode containing the match","isRequired":true,"uniqueKey":"data.items.[INDEX].episode","typeLabel":"object"},"match":{"additionalProperties":false,"properties":{"source":{"description":"Which ranking signal produced this result: semantic | keyword | hybrid","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].match.source","typeLabel":"string"},"relevance_score":{"description":"Raw relevance score from the underlying ranker. For semantic this is cosine similarity in [-1, 1] (typically 0..1). For keyword this is the BM25 score (unbounded, higher = better). For hybrid this is the reciprocal-rank-fusion score (small positive number, higher = better). Compare scores within a single response, not across queries.","format":"double","type":"number","uniqueKey":"data.items.[INDEX].match.relevance_score","typeLabel":"number\u003cdouble>"}},"required":["source"],"type":"object","description":"Source and relevance metadata","isRequired":true,"uniqueKey":"data.items.[INDEX].match","typeLabel":"object"},"segment":{"additionalProperties":false,"properties":{"duration_seconds":{"description":"Segment duration","format":"double","type":"number","isRequired":true,"uniqueKey":"data.items.[INDEX].segment.duration_seconds","typeLabel":"number\u003cdouble>"},"end_seconds":{"description":"End time within the episode — when the segment's last spoken line ends. Where start_line/end_line are present, segments partition the transcript's lines rather than tiling the wall-clock timeline, and the interval between this and the next segment's start_seconds contains no transcribed speech (typically under a second, occasionally minutes of music or silence). Segments without a recorded line range were produced by an earlier segmenter and a small share of them do leave transcript lines uncovered, so a gap between two such segments may contain real speech. Use start_line/end_line to slice a transcript losslessly.","format":"double","type":"number","isRequired":true,"uniqueKey":"data.items.[INDEX].segment.end_seconds","typeLabel":"number\u003cdouble>"},"id":{"description":"Unique identifier","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].segment.id","typeLabel":"string"},"number":{"description":"Segment position within the episode","format":"int64","type":"integer","isRequired":true,"uniqueKey":"data.items.[INDEX].segment.number","typeLabel":"integer\u003cint64>"},"start_seconds":{"description":"Start time within the episode — when the segment's first spoken line begins","format":"double","type":"number","isRequired":true,"uniqueKey":"data.items.[INDEX].segment.start_seconds","typeLabel":"number\u003cdouble>"},"title":{"description":"AI-generated segment title","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].segment.title","typeLabel":"string"},"type":{"description":"Segment type (INTRO, PERSONAL_BANTER, TOPIC_DISCUSSION, INTERVIEW, TRANSITION, AD, OUTRO)","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].segment.type","typeLabel":"string"},"audio_url":{"description":"Direct audio URL for this segment","type":"string","uniqueKey":"data.items.[INDEX].segment.audio_url","typeLabel":"string"},"description":{"description":"AI-generated segment description","type":"string","uniqueKey":"data.items.[INDEX].segment.description","typeLabel":"string"},"end_line":{"description":"Last transcript line covered by this segment (1-indexed, inclusive). Omitted for episodes segmented before line ranges were recorded.","format":"int64","type":"integer","uniqueKey":"data.items.[INDEX].segment.end_line","typeLabel":"integer\u003cint64>"},"read_type":{"description":"For AD segments, how the ad was delivered (HOST_READ, PRE_RECORDED, NETWORK_PROMO)","type":"string","uniqueKey":"data.items.[INDEX].segment.read_type","typeLabel":"string"},"start_line":{"description":"First transcript line covered by this segment (1-indexed, inclusive). Line numbers match the number field of GET /v1/podcasts/episodes/{id}/transcript lines. This segment's end_line + 1 is the next segment's start_line, and the segments together cover every line of the transcript. Omitted for episodes segmented before line ranges were recorded.","format":"int64","type":"integer","uniqueKey":"data.items.[INDEX].segment.start_line","typeLabel":"integer\u003cint64>"},"summary":{"description":"AI-generated segment summary","type":"string","uniqueKey":"data.items.[INDEX].segment.summary","typeLabel":"string"},"url":{"description":"Moment link that plays the segment on Radar from start_seconds: the episode's web_url with ?t=. Ad placements are segments, so this is also the link to an ad read. On a search match's segment it comes from the match's episode. Omitted only when the segment's episode or its podcast is unavailable.","type":"string","uniqueKey":"data.items.[INDEX].segment.url","typeLabel":"string"}},"required":["id","number","type","title","start_seconds","end_seconds","duration_seconds"],"type":"object","description":"Matching segment. Its episode is the match's episode.","isRequired":true,"uniqueKey":"data.items.[INDEX].segment","typeLabel":"object"},"clips":{"oneOf":[{"description":"Highlight clips that overlap this segment, when any exist. Their episode is the match's episode. Omitted when format=compact.","items":{"additionalProperties":false,"properties":{"duration_seconds":{"description":"Clip duration","format":"double","type":"number","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].duration_seconds","typeLabel":"number\u003cdouble>"},"end_seconds":{"description":"End time within the episode","format":"double","type":"number","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].end_seconds","typeLabel":"number\u003cdouble>"},"engagement_score":{"description":"AI-predicted engagement potential (integer, 0 to 100). Values above 70 are typical for a strong clip.","format":"double","type":"number","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].engagement_score","typeLabel":"number\u003cdouble>"},"id":{"description":"Unique identifier","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].id","typeLabel":"string"},"start_seconds":{"description":"Start time within the episode","format":"double","type":"number","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].start_seconds","typeLabel":"number\u003cdouble>"},"title":{"description":"AI-generated clip title","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].title","typeLabel":"string"},"audio_url":{"description":"Direct audio URL for this clip","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].audio_url","typeLabel":"string"},"description":{"description":"AI-generated clip description","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].description","typeLabel":"string"},"intro_statement":{"description":"AI-generated hook text for social sharing","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].intro_statement","typeLabel":"string"},"quote":{"description":"Verbatim transcript line from the clip, at most 140 characters, by the clip's speaker where possible","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].quote","typeLabel":"string"},"segment":{"additionalProperties":false,"properties":{"id":{"description":"Segment ID","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].segment.id","typeLabel":"string"},"title":{"description":"Segment title","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].segment.title","typeLabel":"string"},"type":{"description":"Segment type","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].segment.type","typeLabel":"string"}},"required":["id","type","title"],"type":"object","description":"Parent segment context","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].segment","typeLabel":"object"},"speaker":{"additionalProperties":false,"properties":{"name":{"description":"Speaker name","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.name","typeLabel":"string"},"entity":{"additionalProperties":false,"properties":{"id":{"description":"Entity ID","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.id","typeLabel":"string"},"name":{"description":"Entity name","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.name","typeLabel":"string"},"slug":{"description":"Human-readable slug identifier","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.slug","typeLabel":"string"},"company":{"additionalProperties":false,"properties":{"id":{"description":"Company identifier","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.company.id","typeLabel":"string"},"domain":{"description":"Company website domain","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.company.domain","typeLabel":"string"},"ticker":{"description":"Primary stock ticker symbol","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.company.ticker","typeLabel":"string"}},"required":["id"],"type":"object","description":"Linked company record, if this entity is a known company","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.company","typeLabel":"object"},"description":{"description":"Short description","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.description","typeLabel":"string"},"image_url":{"description":"Entity image URL","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.image_url","typeLabel":"string"},"person":{"additionalProperties":false,"properties":{"id":{"description":"Person identifier","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.person.id","typeLabel":"string"},"company":{"description":"Current company name","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.person.company","typeLabel":"string"},"image_url":{"description":"Person headshot URL","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.person.image_url","typeLabel":"string"},"title":{"description":"Current role title","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.person.title","typeLabel":"string"}},"required":["id"],"type":"object","description":"Linked person record, if this entity is a known person","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.person","typeLabel":"object"},"type":{"additionalProperties":false,"properties":{"name":{"description":"Human-friendly display label (e.g. 'Company').","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.type.name","typeLabel":"string"},"slug":{"description":"Stable identifier, safe to pass to the type query parameter (e.g. 'company').","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.type.slug","typeLabel":"string"}},"required":["slug","name"],"type":"object","description":"Category. Omitted when the entity falls outside the supported set.","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.type","typeLabel":"object"},"wikipedia_url":{"description":"Wikipedia URL","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity.wikipedia_url","typeLabel":"string"}},"required":["id","slug","name"],"type":"object","description":"Linked knowledge graph entity, when this speaker is identified","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.entity","typeLabel":"object"},"person":{"additionalProperties":false,"properties":{"id":{"description":"Encoded Person identifier","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.person.id","typeLabel":"string"},"name":{"description":"Display name","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.person.name","typeLabel":"string"},"description":{"description":"Short description (e.g. current role), when known.","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.person.description","typeLabel":"string"},"image_url":{"description":"Canonical headshot URL when one is known for the Person","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.person.image_url","typeLabel":"string"},"slug":{"description":"Stable human-readable handle (e.g. 'satya-nadella'). Recommended canonical identifier on every Particle Pro person surface.","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.person.slug","typeLabel":"string"}},"required":["id","name"],"type":"object","description":"Linked first-class Person, when the speaker has been resolved","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.person","typeLabel":"object"},"role":{"description":"Speaker role","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker.role","typeLabel":"string"}},"required":["name"],"type":"object","description":"Primary speaker in this clip","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].speaker","typeLabel":"object"},"type":{"description":"Clip type","enum":["SPICY","CONTROVERSIAL","EMOTIONAL","FUNNY","SHOCKING","INSIGHTFUL","INFORMATIVE","EDUCATIONAL","PHILOSOPHICAL","AHA_MOMENT","NOTABLE_LINE","BEST_STORY","DEBATE_DISAGREEMENT"],"type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"url":{"description":"Moment link that plays the clip in its episode on Radar: the episode's web_url with ?t= at start_seconds. Cite or share it to link the exact moment. On a clip inside a search match it comes from the match's episode. Omitted when the episode is not known.","type":"string","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX].url","typeLabel":"string"}},"required":["id","title","engagement_score","start_seconds","end_seconds","duration_seconds"],"type":"object","uniqueKey":"data.items.[INDEX].clips.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"data.items.[INDEX].clips.oneOf.0","typeLabel":"object[]"},{"description":"Highlight clips that overlap this segment, when any exist. Their episode is the match's episode. Omitted when format=compact.","items":{"additionalProperties":false,"properties":{"audio_url":{"description":"Direct audio URL for this clip","type":"string"},"description":{"description":"AI-generated clip description","type":"string"},"duration_seconds":{"description":"Clip duration","format":"double","type":"number"},"end_seconds":{"description":"End time within the episode","format":"double","type":"number"},"engagement_score":{"description":"AI-predicted engagement potential (integer, 0 to 100). Values above 70 are typical for a strong clip.","format":"double","type":"number"},"id":{"description":"Unique identifier","type":"string"},"intro_statement":{"description":"AI-generated hook text for social sharing","type":"string"},"quote":{"description":"Verbatim transcript line from the clip, at most 140 characters, by the clip's speaker where possible","type":"string"},"segment":{"additionalProperties":false,"properties":{"id":{"description":"Segment ID","type":"string"},"title":{"description":"Segment title","type":"string"},"type":{"description":"Segment type","type":"string"}},"required":["id","type","title"],"type":"object","description":"Parent segment context"},"speaker":{"additionalProperties":false,"properties":{"entity":{"additionalProperties":false,"properties":{"company":{"additionalProperties":false,"properties":{"domain":{"description":"Company website domain","type":"string"},"id":{"description":"Company identifier","type":"string"},"ticker":{"description":"Primary stock ticker symbol","type":"string"}},"required":["id"],"type":"object","description":"Linked company record, if this entity is a known company"},"description":{"description":"Short description","type":"string"},"id":{"description":"Entity ID","type":"string"},"image_url":{"description":"Entity image URL","type":"string"},"name":{"description":"Entity name","type":"string"},"person":{"additionalProperties":false,"properties":{"company":{"description":"Current company name","type":"string"},"id":{"description":"Person identifier","type":"string"},"image_url":{"description":"Person headshot URL","type":"string"},"title":{"description":"Current role title","type":"string"}},"required":["id"],"type":"object","description":"Linked person record, if this entity is a known person"},"slug":{"description":"Human-readable slug identifier","type":"string"},"type":{"additionalProperties":false,"properties":{"name":{"description":"Human-friendly display label (e.g. 'Company').","type":"string"},"slug":{"description":"Stable identifier, safe to pass to the type query parameter (e.g. 'company').","type":"string"}},"required":["slug","name"],"type":"object","description":"Category. Omitted when the entity falls outside the supported set."},"wikipedia_url":{"description":"Wikipedia URL","type":"string"}},"required":["id","slug","name"],"type":"object","description":"Linked knowledge graph entity, when this speaker is identified"},"name":{"description":"Speaker name","type":"string"},"person":{"additionalProperties":false,"properties":{"description":{"description":"Short description (e.g. current role), when known.","type":"string"},"id":{"description":"Encoded Person identifier","type":"string"},"image_url":{"description":"Canonical headshot URL when one is known for the Person","type":"string"},"name":{"description":"Display name","type":"string"},"slug":{"description":"Stable human-readable handle (e.g. 'satya-nadella'). Recommended canonical identifier on every Particle Pro person surface.","type":"string"}},"required":["id","name"],"type":"object","description":"Linked first-class Person, when the speaker has been resolved"},"role":{"description":"Speaker role","type":"string"}},"required":["name"],"type":"object","description":"Primary speaker in this clip"},"start_seconds":{"description":"Start time within the episode","format":"double","type":"number"},"title":{"description":"AI-generated clip title","type":"string"},"type":{"description":"Clip type","enum":["SPICY","CONTROVERSIAL","EMOTIONAL","FUNNY","SHOCKING","INSIGHTFUL","INFORMATIVE","EDUCATIONAL","PHILOSOPHICAL","AHA_MOMENT","NOTABLE_LINE","BEST_STORY","DEBATE_DISAGREEMENT"],"type":"string"},"url":{"description":"Moment link that plays the clip in its episode on Radar: the episode's web_url with ?t= at start_seconds. Cite or share it to link the exact moment. On a clip inside a search match it comes from the match's episode. Omitted when the episode is not known.","type":"string"}},"required":["id","title","engagement_score","start_seconds","end_seconds","duration_seconds"],"type":"object"},"type":"null","uniqueKey":"data.items.[INDEX].clips.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.items.[INDEX].clips","typeLabel":"object[] | null"},"speakers":{"oneOf":[{"description":"The identified people speaking in the windows' lines, in order of first line, each with their expertise; a line's speaker matches an entry by name. A segment kept by a guest_ filter can also carry lines of other speakers, such as the host, so read each line's speaker here. Omitted when format=compact or when no speaker is identified.","items":{"additionalProperties":false,"properties":{"name":{"description":"Speaker name","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].name","typeLabel":"string"},"description":{"description":"Brief description of the speaker","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].description","typeLabel":"string"},"descriptor":{"description":"Movie-credits-style role-in-context label for speakers we can describe but not identify by name (\"Taylor's Lawyer\", \"Court Officer\"). Co-exists with name carrying the raw STT label when no identity could be established. Rendered by clients when descriptor is non-empty and the speaker is otherwise unresolved.","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].descriptor","typeLabel":"string"},"entity":{"additionalProperties":false,"properties":{"id":{"description":"Entity ID","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.id","typeLabel":"string"},"name":{"description":"Entity name","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.name","typeLabel":"string"},"slug":{"description":"Human-readable slug identifier","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.slug","typeLabel":"string"},"company":{"additionalProperties":false,"properties":{"id":{"description":"Company identifier","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.company.id","typeLabel":"string"},"domain":{"description":"Company website domain","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.company.domain","typeLabel":"string"},"ticker":{"description":"Primary stock ticker symbol","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.company.ticker","typeLabel":"string"}},"required":["id"],"type":"object","description":"Linked company record, if this entity is a known company","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.company","typeLabel":"object"},"description":{"description":"Short description","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.description","typeLabel":"string"},"image_url":{"description":"Entity image URL","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.image_url","typeLabel":"string"},"person":{"additionalProperties":false,"properties":{"id":{"description":"Person identifier","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.person.id","typeLabel":"string"},"company":{"description":"Current company name","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.person.company","typeLabel":"string"},"image_url":{"description":"Person headshot URL","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.person.image_url","typeLabel":"string"},"title":{"description":"Current role title","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.person.title","typeLabel":"string"}},"required":["id"],"type":"object","description":"Linked person record, if this entity is a known person","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.person","typeLabel":"object"},"type":{"additionalProperties":false,"properties":{"name":{"description":"Human-friendly display label (e.g. 'Company').","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.type.name","typeLabel":"string"},"slug":{"description":"Stable identifier, safe to pass to the type query parameter (e.g. 'company').","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.type.slug","typeLabel":"string"}},"required":["slug","name"],"type":"object","description":"Category. Omitted when the entity falls outside the supported set.","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.type","typeLabel":"object"},"wikipedia_url":{"description":"Wikipedia URL","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity.wikipedia_url","typeLabel":"string"}},"required":["id","slug","name"],"type":"object","description":"Linked knowledge graph entity, when this speaker is identified","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].entity","typeLabel":"object"},"expertise":{"additionalProperties":false,"properties":{"standing":{"description":"How the speaker's standing is recognized: established (conferred by others: a credential, a position, recognition in the field), self_described (claimed by the speaker), or unverified (the records do not say, which never means the speaker is not an expert).","enum":["established","self_described","unverified"],"type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.standing","typeLabel":"enum\u003cstring>"},"fields":{"oneOf":[{"description":"Up to three ANZSRC 2020 fields of research the speaker is listed under, most specific first, none an ancestor of another. Pass a code or slug as guest_field (or field) to filter by it.","items":{"additionalProperties":false,"properties":{"code":{"description":"The standard's own notation, such as 29-1212 (SOC), 2212 (ISCO), or 320101 (FoR).","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.fields.oneOf.0.items.[INDEX].code","typeLabel":"string"},"slug":{"description":"The title as a URL segment, such as cardiologists.","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.fields.oneOf.0.items.[INDEX].slug","typeLabel":"string"},"standard":{"description":"The standard the code belongs to: soc_2018 (US Standard Occupational Classification), isco_08 (the ILO's International Standard Classification of Occupations), or anzsrc_for_2020 (ANZSRC Fields of Research).","enum":["soc_2018","isco_08","anzsrc_for_2020"],"type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.fields.oneOf.0.items.[INDEX].standard","typeLabel":"enum\u003cstring>"},"title":{"description":"The standard's official title, such as Cardiologists.","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.fields.oneOf.0.items.[INDEX].title","typeLabel":"string"},"group":{"description":"Set for a code that stands for several detailed SOC 2018 occupations: a SOC minor group (such as 29-1000 Healthcare Diagnosing or Treating Practitioners), a broad group (such as 29-1210 Physicians), or an alias, an everyday name such as doctors (physicians and surgeons). Every occupation filter accepts one and matches a speaker listed under any of its occupations.","enum":["minor","broad","alias"],"type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.fields.oneOf.0.items.[INDEX].group","typeLabel":"enum\u003cstring>"},"level":{"description":"Depth in the standard's official hierarchy: SOC major group 1 and detailed occupation 2; FoR division 1, group 2, field 3; ISCO-08 unit group 4 and minor group 3. ISCO-08 codes are the groups SOC maps to, listed flat without the standard's upper levels. Omitted for a SOC group or alias (see group).","format":"int64","type":"integer","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.fields.oneOf.0.items.[INDEX].level","typeLabel":"integer\u003cint64>"},"parent_code":{"description":"The standard's official parent code; omitted at the top level and for every ISCO-08 code, since ISCO-08 is listed without its upper levels. A SOC broad group's parent is its minor group and a minor group's its major group, but a detailed SOC occupation's official parent is its major group (29-1211 has parent_code 29-0000), so it can differ from parent, which is the browse parent one level up (29-1210).","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.fields.oneOf.0.items.[INDEX].parent_code","typeLabel":"string"}},"required":["standard","code","title","slug"],"type":"object","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.fields.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.fields.oneOf.0","typeLabel":"object[]"},{"description":"Up to three ANZSRC 2020 fields of research the speaker is listed under, most specific first, none an ancestor of another. Pass a code or slug as guest_field (or field) to filter by it.","items":{"additionalProperties":false,"properties":{"code":{"description":"The standard's own notation, such as 29-1212 (SOC), 2212 (ISCO), or 320101 (FoR).","type":"string"},"group":{"description":"Set for a code that stands for several detailed SOC 2018 occupations: a SOC minor group (such as 29-1000 Healthcare Diagnosing or Treating Practitioners), a broad group (such as 29-1210 Physicians), or an alias, an everyday name such as doctors (physicians and surgeons). Every occupation filter accepts one and matches a speaker listed under any of its occupations.","enum":["minor","broad","alias"],"type":"string"},"level":{"description":"Depth in the standard's official hierarchy: SOC major group 1 and detailed occupation 2; FoR division 1, group 2, field 3; ISCO-08 unit group 4 and minor group 3. ISCO-08 codes are the groups SOC maps to, listed flat without the standard's upper levels. Omitted for a SOC group or alias (see group).","format":"int64","type":"integer"},"parent_code":{"description":"The standard's official parent code; omitted at the top level and for every ISCO-08 code, since ISCO-08 is listed without its upper levels. A SOC broad group's parent is its minor group and a minor group's its major group, but a detailed SOC occupation's official parent is its major group (29-1211 has parent_code 29-0000), so it can differ from parent, which is the browse parent one level up (29-1210).","type":"string"},"slug":{"description":"The title as a URL segment, such as cardiologists.","type":"string"},"standard":{"description":"The standard the code belongs to: soc_2018 (US Standard Occupational Classification), isco_08 (the ILO's International Standard Classification of Occupations), or anzsrc_for_2020 (ANZSRC Fields of Research).","enum":["soc_2018","isco_08","anzsrc_for_2020"],"type":"string"},"title":{"description":"The standard's official title, such as Cardiologists.","type":"string"}},"required":["standard","code","title","slug"],"type":"object"},"type":"null","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.fields.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.fields","typeLabel":"object[] | null"},"occupations":{"oneOf":[{"description":"Up to three SOC 2018 occupations the speaker is listed under, most specific first, none an ancestor of another. Pass a code or slug as guest_occupation (or occupation) to filter by it.","items":{"additionalProperties":false,"properties":{"code":{"description":"The standard's own notation, such as 29-1212 (SOC), 2212 (ISCO), or 320101 (FoR).","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.occupations.oneOf.0.items.[INDEX].code","typeLabel":"string"},"slug":{"description":"The title as a URL segment, such as cardiologists.","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.occupations.oneOf.0.items.[INDEX].slug","typeLabel":"string"},"standard":{"description":"The standard the code belongs to: soc_2018 (US Standard Occupational Classification), isco_08 (the ILO's International Standard Classification of Occupations), or anzsrc_for_2020 (ANZSRC Fields of Research).","enum":["soc_2018","isco_08","anzsrc_for_2020"],"type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.occupations.oneOf.0.items.[INDEX].standard","typeLabel":"enum\u003cstring>"},"title":{"description":"The standard's official title, such as Cardiologists.","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.occupations.oneOf.0.items.[INDEX].title","typeLabel":"string"},"established":{"description":"Whether others conferred the speaker's standing in this occupation, such as a licence or an appointment, rather than the speaker describing it. Present for detailed SOC 2018 occupations only.","type":"boolean","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.occupations.oneOf.0.items.[INDEX].established","typeLabel":"boolean"},"group":{"description":"Set for a code that stands for several detailed SOC 2018 occupations: a SOC minor group (such as 29-1000 Healthcare Diagnosing or Treating Practitioners), a broad group (such as 29-1210 Physicians), or an alias, an everyday name such as doctors (physicians and surgeons). Every occupation filter accepts one and matches a speaker listed under any of its occupations.","enum":["minor","broad","alias"],"type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.occupations.oneOf.0.items.[INDEX].group","typeLabel":"enum\u003cstring>"},"level":{"description":"Depth in the standard's official hierarchy: SOC major group 1 and detailed occupation 2; FoR division 1, group 2, field 3; ISCO-08 unit group 4 and minor group 3. ISCO-08 codes are the groups SOC maps to, listed flat without the standard's upper levels. Omitted for a SOC group or alias (see group).","format":"int64","type":"integer","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.occupations.oneOf.0.items.[INDEX].level","typeLabel":"integer\u003cint64>"},"parent_code":{"description":"The standard's official parent code; omitted at the top level and for every ISCO-08 code, since ISCO-08 is listed without its upper levels. A SOC broad group's parent is its minor group and a minor group's its major group, but a detailed SOC occupation's official parent is its major group (29-1211 has parent_code 29-0000), so it can differ from parent, which is the browse parent one level up (29-1210).","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.occupations.oneOf.0.items.[INDEX].parent_code","typeLabel":"string"},"practicing":{"description":"Whether the speaker still works in this occupation, as opposed to having worked in it. Present for detailed SOC 2018 occupations only.","type":"boolean","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.occupations.oneOf.0.items.[INDEX].practicing","typeLabel":"boolean"}},"required":["standard","code","title","slug"],"type":"object","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.occupations.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.occupations.oneOf.0","typeLabel":"object[]"},{"description":"Up to three SOC 2018 occupations the speaker is listed under, most specific first, none an ancestor of another. Pass a code or slug as guest_occupation (or occupation) to filter by it.","items":{"additionalProperties":false,"properties":{"code":{"description":"The standard's own notation, such as 29-1212 (SOC), 2212 (ISCO), or 320101 (FoR).","type":"string"},"established":{"description":"Whether others conferred the speaker's standing in this occupation, such as a licence or an appointment, rather than the speaker describing it. Present for detailed SOC 2018 occupations only.","type":"boolean"},"group":{"description":"Set for a code that stands for several detailed SOC 2018 occupations: a SOC minor group (such as 29-1000 Healthcare Diagnosing or Treating Practitioners), a broad group (such as 29-1210 Physicians), or an alias, an everyday name such as doctors (physicians and surgeons). Every occupation filter accepts one and matches a speaker listed under any of its occupations.","enum":["minor","broad","alias"],"type":"string"},"level":{"description":"Depth in the standard's official hierarchy: SOC major group 1 and detailed occupation 2; FoR division 1, group 2, field 3; ISCO-08 unit group 4 and minor group 3. ISCO-08 codes are the groups SOC maps to, listed flat without the standard's upper levels. Omitted for a SOC group or alias (see group).","format":"int64","type":"integer"},"parent_code":{"description":"The standard's official parent code; omitted at the top level and for every ISCO-08 code, since ISCO-08 is listed without its upper levels. A SOC broad group's parent is its minor group and a minor group's its major group, but a detailed SOC occupation's official parent is its major group (29-1211 has parent_code 29-0000), so it can differ from parent, which is the browse parent one level up (29-1210).","type":"string"},"practicing":{"description":"Whether the speaker still works in this occupation, as opposed to having worked in it. Present for detailed SOC 2018 occupations only.","type":"boolean"},"slug":{"description":"The title as a URL segment, such as cardiologists.","type":"string"},"standard":{"description":"The standard the code belongs to: soc_2018 (US Standard Occupational Classification), isco_08 (the ILO's International Standard Classification of Occupations), or anzsrc_for_2020 (ANZSRC Fields of Research).","enum":["soc_2018","isco_08","anzsrc_for_2020"],"type":"string"},"title":{"description":"The standard's official title, such as Cardiologists.","type":"string"}},"required":["standard","code","title","slug"],"type":"object"},"type":"null","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.occupations.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.occupations","typeLabel":"object[] | null"},"seniority":{"description":"The highest level the speaker has reached in their field; omitted below professional.","enum":["professional","senior","distinguished"],"type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise.seniority","typeLabel":"enum\u003cstring>"}},"required":["standing"],"type":"object","description":"What the speaker knows, compactly: standing, seniority, and their most specific occupations and fields with the codes the guest_occupation and guest_field filters take. Omitted when the person is not read yet, when their link is unsettled, when the episode may describe someone else than the linked person, or for a role reads do not cover (only hosts, guests, panelists and correspondents carry one). The full read is GET /v1/people/{id}/expertise.","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].expertise","typeLabel":"object"},"person":{"additionalProperties":false,"properties":{"id":{"description":"Encoded Person identifier","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].person.id","typeLabel":"string"},"name":{"description":"Display name","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].person.name","typeLabel":"string"},"description":{"description":"Short description (e.g. current role), when known.","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].person.description","typeLabel":"string"},"image_url":{"description":"Canonical headshot URL when one is known for the Person","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].person.image_url","typeLabel":"string"},"slug":{"description":"Stable human-readable handle (e.g. 'satya-nadella'). Recommended canonical identifier on every Particle Pro person surface.","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].person.slug","typeLabel":"string"}},"required":["id","name"],"type":"object","description":"Linked first-class Person, when the speaker has been resolved to a row in /v1/people","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].person","typeLabel":"object"},"role":{"description":"Speaker role, always one of HOST, GUEST, PANELIST, CORRESPONDENT, MODERATOR, NARRATOR, ANNOUNCER, VOICE_ACTOR, SOUNDBITE_SPEAKER, AUDIENCE, ADVERTISER, PRODUCER, UNKNOWN, OTHER. Responses carry only HOST, GUEST, PANELIST and CORRESPONDENT unless you widen the set with the role query param.","type":"string","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].role","typeLabel":"string"},"speaking_duration_seconds":{"description":"Total speaking time in seconds","format":"double","type":"number","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX].speaking_duration_seconds","typeLabel":"number\u003cdouble>"}},"required":["name"],"type":"object","uniqueKey":"data.items.[INDEX].speakers.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"data.items.[INDEX].speakers.oneOf.0","typeLabel":"object[]"},{"description":"The identified people speaking in the windows' lines, in order of first line, each with their expertise; a line's speaker matches an entry by name. A segment kept by a guest_ filter can also carry lines of other speakers, such as the host, so read each line's speaker here. Omitted when format=compact or when no speaker is identified.","items":{"additionalProperties":false,"properties":{"description":{"description":"Brief description of the speaker","type":"string"},"descriptor":{"description":"Movie-credits-style role-in-context label for speakers we can describe but not identify by name (\"Taylor's Lawyer\", \"Court Officer\"). Co-exists with name carrying the raw STT label when no identity could be established. Rendered by clients when descriptor is non-empty and the speaker is otherwise unresolved.","type":"string"},"entity":{"additionalProperties":false,"properties":{"company":{"additionalProperties":false,"properties":{"domain":{"description":"Company website domain","type":"string"},"id":{"description":"Company identifier","type":"string"},"ticker":{"description":"Primary stock ticker symbol","type":"string"}},"required":["id"],"type":"object","description":"Linked company record, if this entity is a known company"},"description":{"description":"Short description","type":"string"},"id":{"description":"Entity ID","type":"string"},"image_url":{"description":"Entity image URL","type":"string"},"name":{"description":"Entity name","type":"string"},"person":{"additionalProperties":false,"properties":{"company":{"description":"Current company name","type":"string"},"id":{"description":"Person identifier","type":"string"},"image_url":{"description":"Person headshot URL","type":"string"},"title":{"description":"Current role title","type":"string"}},"required":["id"],"type":"object","description":"Linked person record, if this entity is a known person"},"slug":{"description":"Human-readable slug identifier","type":"string"},"type":{"additionalProperties":false,"properties":{"name":{"description":"Human-friendly display label (e.g. 'Company').","type":"string"},"slug":{"description":"Stable identifier, safe to pass to the type query parameter (e.g. 'company').","type":"string"}},"required":["slug","name"],"type":"object","description":"Category. Omitted when the entity falls outside the supported set."},"wikipedia_url":{"description":"Wikipedia URL","type":"string"}},"required":["id","slug","name"],"type":"object","description":"Linked knowledge graph entity, when this speaker is identified"},"expertise":{"additionalProperties":false,"properties":{"fields":{"oneOf":[{"description":"Up to three ANZSRC 2020 fields of research the speaker is listed under, most specific first, none an ancestor of another. Pass a code or slug as guest_field (or field) to filter by it.","items":{"additionalProperties":false,"properties":{"code":{"description":"The standard's own notation, such as 29-1212 (SOC), 2212 (ISCO), or 320101 (FoR).","type":"string"},"group":{"description":"Set for a code that stands for several detailed SOC 2018 occupations: a SOC minor group (such as 29-1000 Healthcare Diagnosing or Treating Practitioners), a broad group (such as 29-1210 Physicians), or an alias, an everyday name such as doctors (physicians and surgeons). Every occupation filter accepts one and matches a speaker listed under any of its occupations.","enum":["minor","broad","alias"],"type":"string"},"level":{"description":"Depth in the standard's official hierarchy: SOC major group 1 and detailed occupation 2; FoR division 1, group 2, field 3; ISCO-08 unit group 4 and minor group 3. ISCO-08 codes are the groups SOC maps to, listed flat without the standard's upper levels. Omitted for a SOC group or alias (see group).","format":"int64","type":"integer"},"parent_code":{"description":"The standard's official parent code; omitted at the top level and for every ISCO-08 code, since ISCO-08 is listed without its upper levels. A SOC broad group's parent is its minor group and a minor group's its major group, but a detailed SOC occupation's official parent is its major group (29-1211 has parent_code 29-0000), so it can differ from parent, which is the browse parent one level up (29-1210).","type":"string"},"slug":{"description":"The title as a URL segment, such as cardiologists.","type":"string"},"standard":{"description":"The standard the code belongs to: soc_2018 (US Standard Occupational Classification), isco_08 (the ILO's International Standard Classification of Occupations), or anzsrc_for_2020 (ANZSRC Fields of Research).","enum":["soc_2018","isco_08","anzsrc_for_2020"],"type":"string"},"title":{"description":"The standard's official title, such as Cardiologists.","type":"string"}},"required":["standard","code","title","slug"],"type":"object"},"type":"array"},{"description":"Up to three ANZSRC 2020 fields of research the speaker is listed under, most specific first, none an ancestor of another. Pass a code or slug as guest_field (or field) to filter by it.","items":{"additionalProperties":false,"properties":{"code":{"description":"The standard's own notation, such as 29-1212 (SOC), 2212 (ISCO), or 320101 (FoR).","type":"string"},"group":{"description":"Set for a code that stands for several detailed SOC 2018 occupations: a SOC minor group (such as 29-1000 Healthcare Diagnosing or Treating Practitioners), a broad group (such as 29-1210 Physicians), or an alias, an everyday name such as doctors (physicians and surgeons). Every occupation filter accepts one and matches a speaker listed under any of its occupations.","enum":["minor","broad","alias"],"type":"string"},"level":{"description":"Depth in the standard's official hierarchy: SOC major group 1 and detailed occupation 2; FoR division 1, group 2, field 3; ISCO-08 unit group 4 and minor group 3. ISCO-08 codes are the groups SOC maps to, listed flat without the standard's upper levels. Omitted for a SOC group or alias (see group).","format":"int64","type":"integer"},"parent_code":{"description":"The standard's official parent code; omitted at the top level and for every ISCO-08 code, since ISCO-08 is listed without its upper levels. A SOC broad group's parent is its minor group and a minor group's its major group, but a detailed SOC occupation's official parent is its major group (29-1211 has parent_code 29-0000), so it can differ from parent, which is the browse parent one level up (29-1210).","type":"string"},"slug":{"description":"The title as a URL segment, such as cardiologists.","type":"string"},"standard":{"description":"The standard the code belongs to: soc_2018 (US Standard Occupational Classification), isco_08 (the ILO's International Standard Classification of Occupations), or anzsrc_for_2020 (ANZSRC Fields of Research).","enum":["soc_2018","isco_08","anzsrc_for_2020"],"type":"string"},"title":{"description":"The standard's official title, such as Cardiologists.","type":"string"}},"required":["standard","code","title","slug"],"type":"object"},"type":"null"}]},"occupations":{"oneOf":[{"description":"Up to three SOC 2018 occupations the speaker is listed under, most specific first, none an ancestor of another. Pass a code or slug as guest_occupation (or occupation) to filter by it.","items":{"additionalProperties":false,"properties":{"code":{"description":"The standard's own notation, such as 29-1212 (SOC), 2212 (ISCO), or 320101 (FoR).","type":"string"},"established":{"description":"Whether others conferred the speaker's standing in this occupation, such as a licence or an appointment, rather than the speaker describing it. Present for detailed SOC 2018 occupations only.","type":"boolean"},"group":{"description":"Set for a code that stands for several detailed SOC 2018 occupations: a SOC minor group (such as 29-1000 Healthcare Diagnosing or Treating Practitioners), a broad group (such as 29-1210 Physicians), or an alias, an everyday name such as doctors (physicians and surgeons). Every occupation filter accepts one and matches a speaker listed under any of its occupations.","enum":["minor","broad","alias"],"type":"string"},"level":{"description":"Depth in the standard's official hierarchy: SOC major group 1 and detailed occupation 2; FoR division 1, group 2, field 3; ISCO-08 unit group 4 and minor group 3. ISCO-08 codes are the groups SOC maps to, listed flat without the standard's upper levels. Omitted for a SOC group or alias (see group).","format":"int64","type":"integer"},"parent_code":{"description":"The standard's official parent code; omitted at the top level and for every ISCO-08 code, since ISCO-08 is listed without its upper levels. A SOC broad group's parent is its minor group and a minor group's its major group, but a detailed SOC occupation's official parent is its major group (29-1211 has parent_code 29-0000), so it can differ from parent, which is the browse parent one level up (29-1210).","type":"string"},"practicing":{"description":"Whether the speaker still works in this occupation, as opposed to having worked in it. Present for detailed SOC 2018 occupations only.","type":"boolean"},"slug":{"description":"The title as a URL segment, such as cardiologists.","type":"string"},"standard":{"description":"The standard the code belongs to: soc_2018 (US Standard Occupational Classification), isco_08 (the ILO's International Standard Classification of Occupations), or anzsrc_for_2020 (ANZSRC Fields of Research).","enum":["soc_2018","isco_08","anzsrc_for_2020"],"type":"string"},"title":{"description":"The standard's official title, such as Cardiologists.","type":"string"}},"required":["standard","code","title","slug"],"type":"object"},"type":"array"},{"description":"Up to three SOC 2018 occupations the speaker is listed under, most specific first, none an ancestor of another. Pass a code or slug as guest_occupation (or occupation) to filter by it.","items":{"additionalProperties":false,"properties":{"code":{"description":"The standard's own notation, such as 29-1212 (SOC), 2212 (ISCO), or 320101 (FoR).","type":"string"},"established":{"description":"Whether others conferred the speaker's standing in this occupation, such as a licence or an appointment, rather than the speaker describing it. Present for detailed SOC 2018 occupations only.","type":"boolean"},"group":{"description":"Set for a code that stands for several detailed SOC 2018 occupations: a SOC minor group (such as 29-1000 Healthcare Diagnosing or Treating Practitioners), a broad group (such as 29-1210 Physicians), or an alias, an everyday name such as doctors (physicians and surgeons). Every occupation filter accepts one and matches a speaker listed under any of its occupations.","enum":["minor","broad","alias"],"type":"string"},"level":{"description":"Depth in the standard's official hierarchy: SOC major group 1 and detailed occupation 2; FoR division 1, group 2, field 3; ISCO-08 unit group 4 and minor group 3. ISCO-08 codes are the groups SOC maps to, listed flat without the standard's upper levels. Omitted for a SOC group or alias (see group).","format":"int64","type":"integer"},"parent_code":{"description":"The standard's official parent code; omitted at the top level and for every ISCO-08 code, since ISCO-08 is listed without its upper levels. A SOC broad group's parent is its minor group and a minor group's its major group, but a detailed SOC occupation's official parent is its major group (29-1211 has parent_code 29-0000), so it can differ from parent, which is the browse parent one level up (29-1210).","type":"string"},"practicing":{"description":"Whether the speaker still works in this occupation, as opposed to having worked in it. Present for detailed SOC 2018 occupations only.","type":"boolean"},"slug":{"description":"The title as a URL segment, such as cardiologists.","type":"string"},"standard":{"description":"The standard the code belongs to: soc_2018 (US Standard Occupational Classification), isco_08 (the ILO's International Standard Classification of Occupations), or anzsrc_for_2020 (ANZSRC Fields of Research).","enum":["soc_2018","isco_08","anzsrc_for_2020"],"type":"string"},"title":{"description":"The standard's official title, such as Cardiologists.","type":"string"}},"required":["standard","code","title","slug"],"type":"object"},"type":"null"}]},"seniority":{"description":"The highest level the speaker has reached in their field; omitted below professional.","enum":["professional","senior","distinguished"],"type":"string"},"standing":{"description":"How the speaker's standing is recognized: established (conferred by others: a credential, a position, recognition in the field), self_described (claimed by the speaker), or unverified (the records do not say, which never means the speaker is not an expert).","enum":["established","self_described","unverified"],"type":"string"}},"required":["standing"],"type":"object","description":"What the speaker knows, compactly: standing, seniority, and their most specific occupations and fields with the codes the guest_occupation and guest_field filters take. Omitted when the person is not read yet, when their link is unsettled, when the episode may describe someone else than the linked person, or for a role reads do not cover (only hosts, guests, panelists and correspondents carry one). The full read is GET /v1/people/{id}/expertise."},"name":{"description":"Speaker name","type":"string"},"person":{"additionalProperties":false,"properties":{"description":{"description":"Short description (e.g. current role), when known.","type":"string"},"id":{"description":"Encoded Person identifier","type":"string"},"image_url":{"description":"Canonical headshot URL when one is known for the Person","type":"string"},"name":{"description":"Display name","type":"string"},"slug":{"description":"Stable human-readable handle (e.g. 'satya-nadella'). Recommended canonical identifier on every Particle Pro person surface.","type":"string"}},"required":["id","name"],"type":"object","description":"Linked first-class Person, when the speaker has been resolved to a row in /v1/people"},"role":{"description":"Speaker role, always one of HOST, GUEST, PANELIST, CORRESPONDENT, MODERATOR, NARRATOR, ANNOUNCER, VOICE_ACTOR, SOUNDBITE_SPEAKER, AUDIENCE, ADVERTISER, PRODUCER, UNKNOWN, OTHER. Responses carry only HOST, GUEST, PANELIST and CORRESPONDENT unless you widen the set with the role query param.","type":"string"},"speaking_duration_seconds":{"description":"Total speaking time in seconds","format":"double","type":"number"}},"required":["name"],"type":"object"},"type":"null","uniqueKey":"data.items.[INDEX].speakers.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.items.[INDEX].speakers","typeLabel":"object[] | null"},"url":{"description":"Moment link that plays the match on Radar: the episode's web_url with ?t= at the first window's start, or at the segment's start when windows are omitted (format=compact). Cite or share it to link the exact moment.","type":"string","uniqueKey":"data.items.[INDEX].url","typeLabel":"string"},"windows":{"oneOf":[{"description":"Bounded transcript windows highlighting the relevant lines. Omitted when format=compact; otherwise at least one window whenever the segment's transcript is loaded.","items":{"additionalProperties":false,"properties":{"end_seconds":{"description":"Window end time in seconds (episode-absolute)","format":"double","type":"number","isRequired":true,"uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].end_seconds","typeLabel":"number\u003cdouble>"},"lines":{"oneOf":[{"description":"Dialogue lines in this window","items":{"additionalProperties":false,"properties":{"end_seconds":{"description":"End time in seconds (episode-absolute)","format":"double","type":"number","isRequired":true,"uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].end_seconds","typeLabel":"number\u003cdouble>"},"number":{"description":"Line number within the episode (1-indexed)","format":"int64","type":"integer","isRequired":true,"uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].number","typeLabel":"integer\u003cint64>"},"speaker":{"description":"Speaker name or label","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].speaker","typeLabel":"string"},"start_seconds":{"description":"Start time in seconds (episode-absolute)","format":"double","type":"number","isRequired":true,"uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].start_seconds","typeLabel":"number\u003cdouble>"},"text":{"description":"Spoken text","type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].text","typeLabel":"string"},"is_match":{"description":"Top-scored line within the window for the current query, on /v1/podcasts/episodes/search results. Not set on /v1/podcasts/mentions.","type":"boolean","uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].is_match","typeLabel":"boolean"},"is_mention":{"description":"Line contains a textual mention of the resolved entity. Set on /v1/podcasts/mentions only — /v1/podcasts/episodes/search treats entity_id as a filter and does not mark mention lines.","type":"boolean","uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].is_mention","typeLabel":"boolean"},"matched_terms":{"oneOf":[{"description":"Terms from the query that occur in this line, longest-first, for clients to highlight. Locate them case-insensitively: each term is spelled as the query spelled it, which may differ in case from the line's text (query \"openai\" is reported for a line reading \"OpenAI\"). Whole-token matches only — a term never matches inside a longer word, so \"AI\" is not reported for \"said\". A multi-word query yields the whole phrase (\"founder mode\") when it occurs contiguously, so clients mark it as one span rather than highlighting each word separately; individual words appear only where they occur outside the phrase. Only the longest term is reported at any position, so terms never overlap. On /v1/podcasts/episodes/search this is set on any line in the window containing the query, not only is_match lines; on /v1/podcasts/mentions it is set only on is_mention lines. Absent when nothing matched or the query was not text-based.","items":{"type":"string","uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].matched_terms.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].matched_terms.oneOf.0","typeLabel":"string[]"},{"description":"Terms from the query that occur in this line, longest-first, for clients to highlight. Locate them case-insensitively: each term is spelled as the query spelled it, which may differ in case from the line's text (query \"openai\" is reported for a line reading \"OpenAI\"). Whole-token matches only — a term never matches inside a longer word, so \"AI\" is not reported for \"said\". A multi-word query yields the whole phrase (\"founder mode\") when it occurs contiguously, so clients mark it as one span rather than highlighting each word separately; individual words appear only where they occur outside the phrase. Only the longest term is reported at any position, so terms never overlap. On /v1/podcasts/episodes/search this is set on any line in the window containing the query, not only is_match lines; on /v1/podcasts/mentions it is set only on is_mention lines. Absent when nothing matched or the query was not text-based.","items":{"type":"string"},"type":"null","uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].matched_terms.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].matched_terms","typeLabel":"string[] | null"},"role":{"description":"Speaker role (HOST, GUEST, etc.)","type":"string","uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].role","typeLabel":"string"},"segment_id":{"description":"The segment containing this line. Set on is_mention lines of /v1/podcasts/mentions, so a mention can be cited by segment even when its window opened in the previous one (a window starts context_lines before its first mention, and the window's segment is where the window starts). Absent elsewhere.","type":"string","uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].segment_id","typeLabel":"string"},"speaker_statement_characteristics":{"additionalProperties":false,"properties":{"certainty":{"description":"How sure the speaker sounds: hedged (\"maybe\", \"I think\", \"it could\"), neutral, or confident (flat assertion).","enum":["hedged","neutral","confident"],"type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].speaker_statement_characteristics.certainty","typeLabel":"enum\u003cstring>"},"sentiment":{"description":"The statement's tone: negative, neutral or positive.","enum":["negative","neutral","positive"],"type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].speaker_statement_characteristics.sentiment","typeLabel":"enum\u003cstring>"},"specificity":{"description":"Whether the line commits to something concrete: specific (names, numbers, dates, mechanisms), neutral, or vague (generalities).","enum":["vague","neutral","specific"],"type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].speaker_statement_characteristics.specificity","typeLabel":"enum\u003cstring>"},"temporal_orientation":{"description":"Where the line points in time: past (looking back), present (how things are), or future (predictions, plans, expectations).","enum":["past","present","future"],"type":"string","isRequired":true,"uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].speaker_statement_characteristics.temporal_orientation","typeLabel":"enum\u003cstring>"}},"required":["sentiment","certainty","specificity","temporal_orientation"],"type":"object","description":"How the speaker said this line: its sentiment, certainty, specificity and temporal orientation, as labels. A pole label (such as positive or confident) means the line clearly reads that way; a borderline line takes the middle label. Set on lines of /v1/podcasts/episodes/search and /v1/podcasts/mentions windows when the line has been read. Absent on lines that are not: short lines, and lines in intros, ad breaks and other segments outside topic discussions and interviews.","uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX].speaker_statement_characteristics","typeLabel":"object"}},"required":["number","speaker","start_seconds","end_seconds","text"],"type":"object","uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.0","typeLabel":"object[]"},{"description":"Dialogue lines in this window","items":{"additionalProperties":false,"properties":{"end_seconds":{"description":"End time in seconds (episode-absolute)","format":"double","type":"number"},"is_match":{"description":"Top-scored line within the window for the current query, on /v1/podcasts/episodes/search results. Not set on /v1/podcasts/mentions.","type":"boolean"},"is_mention":{"description":"Line contains a textual mention of the resolved entity. Set on /v1/podcasts/mentions only — /v1/podcasts/episodes/search treats entity_id as a filter and does not mark mention lines.","type":"boolean"},"matched_terms":{"oneOf":[{"description":"Terms from the query that occur in this line, longest-first, for clients to highlight. Locate them case-insensitively: each term is spelled as the query spelled it, which may differ in case from the line's text (query \"openai\" is reported for a line reading \"OpenAI\"). Whole-token matches only — a term never matches inside a longer word, so \"AI\" is not reported for \"said\". A multi-word query yields the whole phrase (\"founder mode\") when it occurs contiguously, so clients mark it as one span rather than highlighting each word separately; individual words appear only where they occur outside the phrase. Only the longest term is reported at any position, so terms never overlap. On /v1/podcasts/episodes/search this is set on any line in the window containing the query, not only is_match lines; on /v1/podcasts/mentions it is set only on is_mention lines. Absent when nothing matched or the query was not text-based.","items":{"type":"string"},"type":"array"},{"description":"Terms from the query that occur in this line, longest-first, for clients to highlight. Locate them case-insensitively: each term is spelled as the query spelled it, which may differ in case from the line's text (query \"openai\" is reported for a line reading \"OpenAI\"). Whole-token matches only — a term never matches inside a longer word, so \"AI\" is not reported for \"said\". A multi-word query yields the whole phrase (\"founder mode\") when it occurs contiguously, so clients mark it as one span rather than highlighting each word separately; individual words appear only where they occur outside the phrase. Only the longest term is reported at any position, so terms never overlap. On /v1/podcasts/episodes/search this is set on any line in the window containing the query, not only is_match lines; on /v1/podcasts/mentions it is set only on is_mention lines. Absent when nothing matched or the query was not text-based.","items":{"type":"string"},"type":"null"}]},"number":{"description":"Line number within the episode (1-indexed)","format":"int64","type":"integer"},"role":{"description":"Speaker role (HOST, GUEST, etc.)","type":"string"},"segment_id":{"description":"The segment containing this line. Set on is_mention lines of /v1/podcasts/mentions, so a mention can be cited by segment even when its window opened in the previous one (a window starts context_lines before its first mention, and the window's segment is where the window starts). Absent elsewhere.","type":"string"},"speaker":{"description":"Speaker name or label","type":"string"},"speaker_statement_characteristics":{"additionalProperties":false,"properties":{"certainty":{"description":"How sure the speaker sounds: hedged (\"maybe\", \"I think\", \"it could\"), neutral, or confident (flat assertion).","enum":["hedged","neutral","confident"],"type":"string"},"sentiment":{"description":"The statement's tone: negative, neutral or positive.","enum":["negative","neutral","positive"],"type":"string"},"specificity":{"description":"Whether the line commits to something concrete: specific (names, numbers, dates, mechanisms), neutral, or vague (generalities).","enum":["vague","neutral","specific"],"type":"string"},"temporal_orientation":{"description":"Where the line points in time: past (looking back), present (how things are), or future (predictions, plans, expectations).","enum":["past","present","future"],"type":"string"}},"required":["sentiment","certainty","specificity","temporal_orientation"],"type":"object","description":"How the speaker said this line: its sentiment, certainty, specificity and temporal orientation, as labels. A pole label (such as positive or confident) means the line clearly reads that way; a borderline line takes the middle label. Set on lines of /v1/podcasts/episodes/search and /v1/podcasts/mentions windows when the line has been read. Absent on lines that are not: short lines, and lines in intros, ad breaks and other segments outside topic discussions and interviews."},"start_seconds":{"description":"Start time in seconds (episode-absolute)","format":"double","type":"number"},"text":{"description":"Spoken text","type":"string"}},"required":["number","speaker","start_seconds","end_seconds","text"],"type":"object"},"type":"null","isRequired":true,"uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].lines","typeLabel":"object[] | null"},"start_seconds":{"description":"Window start time in seconds (episode-absolute)","format":"double","type":"number","isRequired":true,"uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].start_seconds","typeLabel":"number\u003cdouble>"},"is_preview":{"description":"True when the window is the segment's leading lines (a fallback for when line-level scoring couldn't pinpoint any line) rather than scored matches. False or absent on a scored window.","type":"boolean","uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].is_preview","typeLabel":"boolean"},"url":{"description":"Moment link that plays this window on Radar: the episode's web_url with ?t= at start_seconds.","type":"string","uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX].url","typeLabel":"string"}},"required":["start_seconds","end_seconds","lines"],"type":"object","uniqueKey":"data.items.[INDEX].windows.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"data.items.[INDEX].windows.oneOf.0","typeLabel":"object[]"},{"description":"Bounded transcript windows highlighting the relevant lines. Omitted when format=compact; otherwise at least one window whenever the segment's transcript is loaded.","items":{"additionalProperties":false,"properties":{"end_seconds":{"description":"Window end time in seconds (episode-absolute)","format":"double","type":"number"},"is_preview":{"description":"True when the window is the segment's leading lines (a fallback for when line-level scoring couldn't pinpoint any line) rather than scored matches. False or absent on a scored window.","type":"boolean"},"lines":{"oneOf":[{"description":"Dialogue lines in this window","items":{"additionalProperties":false,"properties":{"end_seconds":{"description":"End time in seconds (episode-absolute)","format":"double","type":"number"},"is_match":{"description":"Top-scored line within the window for the current query, on /v1/podcasts/episodes/search results. Not set on /v1/podcasts/mentions.","type":"boolean"},"is_mention":{"description":"Line contains a textual mention of the resolved entity. Set on /v1/podcasts/mentions only — /v1/podcasts/episodes/search treats entity_id as a filter and does not mark mention lines.","type":"boolean"},"matched_terms":{"oneOf":[{"description":"Terms from the query that occur in this line, longest-first, for clients to highlight. Locate them case-insensitively: each term is spelled as the query spelled it, which may differ in case from the line's text (query \"openai\" is reported for a line reading \"OpenAI\"). Whole-token matches only — a term never matches inside a longer word, so \"AI\" is not reported for \"said\". A multi-word query yields the whole phrase (\"founder mode\") when it occurs contiguously, so clients mark it as one span rather than highlighting each word separately; individual words appear only where they occur outside the phrase. Only the longest term is reported at any position, so terms never overlap. On /v1/podcasts/episodes/search this is set on any line in the window containing the query, not only is_match lines; on /v1/podcasts/mentions it is set only on is_mention lines. Absent when nothing matched or the query was not text-based.","items":{"type":"string"},"type":"array"},{"description":"Terms from the query that occur in this line, longest-first, for clients to highlight. Locate them case-insensitively: each term is spelled as the query spelled it, which may differ in case from the line's text (query \"openai\" is reported for a line reading \"OpenAI\"). Whole-token matches only — a term never matches inside a longer word, so \"AI\" is not reported for \"said\". A multi-word query yields the whole phrase (\"founder mode\") when it occurs contiguously, so clients mark it as one span rather than highlighting each word separately; individual words appear only where they occur outside the phrase. Only the longest term is reported at any position, so terms never overlap. On /v1/podcasts/episodes/search this is set on any line in the window containing the query, not only is_match lines; on /v1/podcasts/mentions it is set only on is_mention lines. Absent when nothing matched or the query was not text-based.","items":{"type":"string"},"type":"null"}]},"number":{"description":"Line number within the episode (1-indexed)","format":"int64","type":"integer"},"role":{"description":"Speaker role (HOST, GUEST, etc.)","type":"string"},"segment_id":{"description":"The segment containing this line. Set on is_mention lines of /v1/podcasts/mentions, so a mention can be cited by segment even when its window opened in the previous one (a window starts context_lines before its first mention, and the window's segment is where the window starts). Absent elsewhere.","type":"string"},"speaker":{"description":"Speaker name or label","type":"string"},"speaker_statement_characteristics":{"additionalProperties":false,"properties":{"certainty":{"description":"How sure the speaker sounds: hedged (\"maybe\", \"I think\", \"it could\"), neutral, or confident (flat assertion).","enum":["hedged","neutral","confident"],"type":"string"},"sentiment":{"description":"The statement's tone: negative, neutral or positive.","enum":["negative","neutral","positive"],"type":"string"},"specificity":{"description":"Whether the line commits to something concrete: specific (names, numbers, dates, mechanisms), neutral, or vague (generalities).","enum":["vague","neutral","specific"],"type":"string"},"temporal_orientation":{"description":"Where the line points in time: past (looking back), present (how things are), or future (predictions, plans, expectations).","enum":["past","present","future"],"type":"string"}},"required":["sentiment","certainty","specificity","temporal_orientation"],"type":"object","description":"How the speaker said this line: its sentiment, certainty, specificity and temporal orientation, as labels. A pole label (such as positive or confident) means the line clearly reads that way; a borderline line takes the middle label. Set on lines of /v1/podcasts/episodes/search and /v1/podcasts/mentions windows when the line has been read. Absent on lines that are not: short lines, and lines in intros, ad breaks and other segments outside topic discussions and interviews."},"start_seconds":{"description":"Start time in seconds (episode-absolute)","format":"double","type":"number"},"text":{"description":"Spoken text","type":"string"}},"required":["number","speaker","start_seconds","end_seconds","text"],"type":"object"},"type":"array"},{"description":"Dialogue lines in this window","items":{"additionalProperties":false,"properties":{"end_seconds":{"description":"End time in seconds (episode-absolute)","format":"double","type":"number"},"is_match":{"description":"Top-scored line within the window for the current query, on /v1/podcasts/episodes/search results. Not set on /v1/podcasts/mentions.","type":"boolean"},"is_mention":{"description":"Line contains a textual mention of the resolved entity. Set on /v1/podcasts/mentions only — /v1/podcasts/episodes/search treats entity_id as a filter and does not mark mention lines.","type":"boolean"},"matched_terms":{"oneOf":[{"description":"Terms from the query that occur in this line, longest-first, for clients to highlight. Locate them case-insensitively: each term is spelled as the query spelled it, which may differ in case from the line's text (query \"openai\" is reported for a line reading \"OpenAI\"). Whole-token matches only — a term never matches inside a longer word, so \"AI\" is not reported for \"said\". A multi-word query yields the whole phrase (\"founder mode\") when it occurs contiguously, so clients mark it as one span rather than highlighting each word separately; individual words appear only where they occur outside the phrase. Only the longest term is reported at any position, so terms never overlap. On /v1/podcasts/episodes/search this is set on any line in the window containing the query, not only is_match lines; on /v1/podcasts/mentions it is set only on is_mention lines. Absent when nothing matched or the query was not text-based.","items":{"type":"string"},"type":"array"},{"description":"Terms from the query that occur in this line, longest-first, for clients to highlight. Locate them case-insensitively: each term is spelled as the query spelled it, which may differ in case from the line's text (query \"openai\" is reported for a line reading \"OpenAI\"). Whole-token matches only — a term never matches inside a longer word, so \"AI\" is not reported for \"said\". A multi-word query yields the whole phrase (\"founder mode\") when it occurs contiguously, so clients mark it as one span rather than highlighting each word separately; individual words appear only where they occur outside the phrase. Only the longest term is reported at any position, so terms never overlap. On /v1/podcasts/episodes/search this is set on any line in the window containing the query, not only is_match lines; on /v1/podcasts/mentions it is set only on is_mention lines. Absent when nothing matched or the query was not text-based.","items":{"type":"string"},"type":"null"}]},"number":{"description":"Line number within the episode (1-indexed)","format":"int64","type":"integer"},"role":{"description":"Speaker role (HOST, GUEST, etc.)","type":"string"},"segment_id":{"description":"The segment containing this line. Set on is_mention lines of /v1/podcasts/mentions, so a mention can be cited by segment even when its window opened in the previous one (a window starts context_lines before its first mention, and the window's segment is where the window starts). Absent elsewhere.","type":"string"},"speaker":{"description":"Speaker name or label","type":"string"},"speaker_statement_characteristics":{"additionalProperties":false,"properties":{"certainty":{"description":"How sure the speaker sounds: hedged (\"maybe\", \"I think\", \"it could\"), neutral, or confident (flat assertion).","enum":["hedged","neutral","confident"],"type":"string"},"sentiment":{"description":"The statement's tone: negative, neutral or positive.","enum":["negative","neutral","positive"],"type":"string"},"specificity":{"description":"Whether the line commits to something concrete: specific (names, numbers, dates, mechanisms), neutral, or vague (generalities).","enum":["vague","neutral","specific"],"type":"string"},"temporal_orientation":{"description":"Where the line points in time: past (looking back), present (how things are), or future (predictions, plans, expectations).","enum":["past","present","future"],"type":"string"}},"required":["sentiment","certainty","specificity","temporal_orientation"],"type":"object","description":"How the speaker said this line: its sentiment, certainty, specificity and temporal orientation, as labels. A pole label (such as positive or confident) means the line clearly reads that way; a borderline line takes the middle label. Set on lines of /v1/podcasts/episodes/search and /v1/podcasts/mentions windows when the line has been read. Absent on lines that are not: short lines, and lines in intros, ad breaks and other segments outside topic discussions and interviews."},"start_seconds":{"description":"Start time in seconds (episode-absolute)","format":"double","type":"number"},"text":{"description":"Spoken text","type":"string"}},"required":["number","speaker","start_seconds","end_seconds","text"],"type":"object"},"type":"null"}]},"start_seconds":{"description":"Window start time in seconds (episode-absolute)","format":"double","type":"number"},"url":{"description":"Moment link that plays this window on Radar: the episode's web_url with ?t= at start_seconds.","type":"string"}},"required":["start_seconds","end_seconds","lines"],"type":"object"},"type":"null","uniqueKey":"data.items.[INDEX].windows.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.items.[INDEX].windows","typeLabel":"object[] | null"}},"required":["episode","segment","match"],"type":"object","uniqueKey":"data.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"data","typeLabel":"object[]"},"has_more":{"description":"More results available","type":"boolean","isRequired":true,"uniqueKey":"has_more","typeLabel":"boolean"},"company":{"additionalProperties":false,"properties":{"id":{"description":"Company identifier (domain, slug, or encoded ID)","type":"string","isRequired":true,"uniqueKey":"company.id","typeLabel":"string"},"name":{"description":"Company name","type":"string","isRequired":true,"uniqueKey":"company.name","typeLabel":"string"},"description":{"description":"Short company description, when known.","type":"string","uniqueKey":"company.description","typeLabel":"string"},"domain":{"description":"Primary website domain (e.g. 'nvidia.com'), when known.","type":"string","uniqueKey":"company.domain","typeLabel":"string"},"image_url":{"description":"Company logo or image URL","type":"string","uniqueKey":"company.image_url","typeLabel":"string"},"slug":{"description":"Stable human-readable handle (the linked knowledge-graph slug, e.g. 'nvidia'), when known. Companies have no slug of their own; prefer this for display and pass it (or id) to /v1/companies.","type":"string","uniqueKey":"company.slug","typeLabel":"string"},"ticker":{"description":"Primary stock ticker symbol, when listed.","type":"string","uniqueKey":"company.ticker","typeLabel":"string"}},"required":["id","name"],"type":"object","description":"Resolved company, when company_id filtered the result set. Omitted when only entity_id was provided.","uniqueKey":"company","typeLabel":"object"},"cursor":{"description":"Opaque cursor; pass back as ?cursor= for the next page","type":"string","uniqueKey":"cursor","typeLabel":"string"},"diagnostics":{"additionalProperties":false,"properties":{"outcome":{"description":"Stable classification of why the page is empty.","enum":["weak_semantic_match","filter_too_narrow","over_constrained","no_match_for_query"],"type":"string","isRequired":true,"uniqueKey":"diagnostics.outcome","typeLabel":"enum\u003cstring>"},"summary":{"description":"One-sentence plain statement of what emptied the results.","type":"string","isRequired":true,"uniqueKey":"diagnostics.summary","typeLabel":"string"},"filters":{"oneOf":[{"description":"Every filter the request applied, in the order applied.","items":{"additionalProperties":false,"properties":{"parameter":{"description":"The request parameter this filter came from.","type":"string","isRequired":true,"uniqueKey":"diagnostics.filters.oneOf.0.items.[INDEX].parameter","typeLabel":"string"},"emptied_results":{"description":"True when removing only this filter makes the search return results.","type":"boolean","uniqueKey":"diagnostics.filters.oneOf.0.items.[INDEX].emptied_results","typeLabel":"boolean"},"remedy":{"description":"Why this filter excluded everything, and what to change.","type":"string","uniqueKey":"diagnostics.filters.oneOf.0.items.[INDEX].remedy","typeLabel":"string"},"retry_with":{"additionalProperties":{"type":"string","uniqueKey":"diagnostics.filters.oneOf.0.items.[INDEX].retry_with.additionalProperties","typeLabel":"string"},"description":"Parameter changes to apply to the same request to recover results. An empty value means remove that parameter.","type":"object","uniqueKey":"diagnostics.filters.oneOf.0.items.[INDEX].retry_with","typeLabel":"object"},"value":{"description":"The value the request supplied for it.","type":"string","uniqueKey":"diagnostics.filters.oneOf.0.items.[INDEX].value","typeLabel":"string"}},"required":["parameter"],"type":"object","uniqueKey":"diagnostics.filters.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"diagnostics.filters.oneOf.0","typeLabel":"object[]"},{"description":"Every filter the request applied, in the order applied.","items":{"additionalProperties":false,"properties":{"emptied_results":{"description":"True when removing only this filter makes the search return results.","type":"boolean"},"parameter":{"description":"The request parameter this filter came from.","type":"string"},"remedy":{"description":"Why this filter excluded everything, and what to change.","type":"string"},"retry_with":{"additionalProperties":{"type":"string"},"description":"Parameter changes to apply to the same request to recover results. An empty value means remove that parameter.","type":"object"},"value":{"description":"The value the request supplied for it.","type":"string"}},"required":["parameter"],"type":"object"},"type":"null","uniqueKey":"diagnostics.filters.oneOf.1","typeLabel":"null"}],"uniqueKey":"diagnostics.filters","typeLabel":"object[] | null"},"next_steps":{"oneOf":[{"description":"Concrete retries, most likely to succeed first.","items":{"type":"string","uniqueKey":"diagnostics.next_steps.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"diagnostics.next_steps.oneOf.0","typeLabel":"string[]"},{"description":"Concrete retries, most likely to succeed first.","items":{"type":"string"},"type":"null","uniqueKey":"diagnostics.next_steps.oneOf.1","typeLabel":"null"}],"uniqueKey":"diagnostics.next_steps","typeLabel":"string[] | null"},"retry_with":{"additionalProperties":{"type":"string","uniqueKey":"diagnostics.retry_with.additionalProperties","typeLabel":"string"},"description":"Parameter changes to apply to the same request to recover results without removing any filter. Set only for weak_semantic_match.","type":"object","uniqueKey":"diagnostics.retry_with","typeLabel":"object"}},"required":["outcome","summary"],"type":"object","description":"Present only when data is empty: which filter excluded everything, why, and the parameter change to retry with.","uniqueKey":"diagnostics","typeLabel":"object"},"entity":{"additionalProperties":false,"properties":{"id":{"description":"Entity ID","type":"string","isRequired":true,"uniqueKey":"entity.id","typeLabel":"string"},"name":{"description":"Entity name","type":"string","isRequired":true,"uniqueKey":"entity.name","typeLabel":"string"},"slug":{"description":"Human-readable slug identifier","type":"string","isRequired":true,"uniqueKey":"entity.slug","typeLabel":"string"},"company":{"additionalProperties":false,"properties":{"id":{"description":"Company identifier","type":"string","isRequired":true,"uniqueKey":"entity.company.id","typeLabel":"string"},"domain":{"description":"Company website domain","type":"string","uniqueKey":"entity.company.domain","typeLabel":"string"},"ticker":{"description":"Primary stock ticker symbol","type":"string","uniqueKey":"entity.company.ticker","typeLabel":"string"}},"required":["id"],"type":"object","description":"Linked company record, if this entity is a known company","uniqueKey":"entity.company","typeLabel":"object"},"description":{"description":"Short description","type":"string","uniqueKey":"entity.description","typeLabel":"string"},"image_url":{"description":"Entity image URL","type":"string","uniqueKey":"entity.image_url","typeLabel":"string"},"person":{"additionalProperties":false,"properties":{"id":{"description":"Person identifier","type":"string","isRequired":true,"uniqueKey":"entity.person.id","typeLabel":"string"},"company":{"description":"Current company name","type":"string","uniqueKey":"entity.person.company","typeLabel":"string"},"image_url":{"description":"Person headshot URL","type":"string","uniqueKey":"entity.person.image_url","typeLabel":"string"},"title":{"description":"Current role title","type":"string","uniqueKey":"entity.person.title","typeLabel":"string"}},"required":["id"],"type":"object","description":"Linked person record, if this entity is a known person","uniqueKey":"entity.person","typeLabel":"object"},"type":{"additionalProperties":false,"properties":{"name":{"description":"Human-friendly display label (e.g. 'Company').","type":"string","isRequired":true,"uniqueKey":"entity.type.name","typeLabel":"string"},"slug":{"description":"Stable identifier, safe to pass to the type query parameter (e.g. 'company').","type":"string","isRequired":true,"uniqueKey":"entity.type.slug","typeLabel":"string"}},"required":["slug","name"],"type":"object","description":"Category. Omitted when the entity falls outside the supported set.","uniqueKey":"entity.type","typeLabel":"object"},"wikipedia_url":{"description":"Wikipedia URL","type":"string","uniqueKey":"entity.wikipedia_url","typeLabel":"string"}},"required":["id","slug","name"],"type":"object","description":"Resolved entity, when entity_id or company_id filtered the result set","uniqueKey":"entity","typeLabel":"object"}},"required":["data","has_more"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"data":[{"episode":{"id":"\u003cstring>","title":"\u003cstring>","podcast":{"id":"\u003cstring>","title":"\u003cstring>","best_rank":{"captured_at":"2023-11-07T05:31:56Z","chart_type":"top_podcasts","rank":123,"source":"apple","category_slug":"\u003cstring>","country":"\u003cstring>"},"image_url":"\u003cstring>","popularity":123,"publisher":{"id":"\u003cstring>","name":"\u003cstring>","slug":"\u003cstring>"},"slug":"\u003cstring>"},"published_at":"2023-11-07T05:31:56Z","slug":"\u003cstring>","web_url":"\u003cstring>"},"match":{"source":"\u003cstring>","relevance_score":123},"segment":{"duration_seconds":123,"end_seconds":123,"id":"\u003cstring>","number":123,"start_seconds":123,"title":"\u003cstring>","type":"\u003cstring>","audio_url":"\u003cstring>","description":"\u003cstring>","end_line":123,"read_type":"\u003cstring>","start_line":123,"summary":"\u003cstring>","url":"\u003cstring>"},"clips":[{"duration_seconds":123,"end_seconds":123,"engagement_score":123,"id":"\u003cstring>","start_seconds":123,"title":"\u003cstring>","audio_url":"\u003cstring>","description":"\u003cstring>","intro_statement":"\u003cstring>","quote":"\u003cstring>","segment":{"id":"\u003cstring>","title":"\u003cstring>","type":"\u003cstring>"},"speaker":{"name":"\u003cstring>","entity":{"id":"\u003cstring>","name":"\u003cstring>","slug":"\u003cstring>","company":{"id":"\u003cstring>","domain":"\u003cstring>","ticker":"\u003cstring>"},"description":"\u003cstring>","image_url":"\u003cstring>","person":{"id":"\u003cstring>","company":"\u003cstring>","image_url":"\u003cstring>","title":"\u003cstring>"},"type":{"name":"\u003cstring>","slug":"\u003cstring>"},"wikipedia_url":"\u003cstring>"},"person":{"id":"\u003cstring>","name":"\u003cstring>","description":"\u003cstring>","image_url":"\u003cstring>","slug":"\u003cstring>"},"role":"\u003cstring>"},"type":"SPICY","url":"\u003cstring>"}],"speakers":[{"name":"\u003cstring>","description":"\u003cstring>","descriptor":"\u003cstring>","entity":{"id":"\u003cstring>","name":"\u003cstring>","slug":"\u003cstring>","company":{"id":"\u003cstring>","domain":"\u003cstring>","ticker":"\u003cstring>"},"description":"\u003cstring>","image_url":"\u003cstring>","person":{"id":"\u003cstring>","company":"\u003cstring>","image_url":"\u003cstring>","title":"\u003cstring>"},"type":{"name":"\u003cstring>","slug":"\u003cstring>"},"wikipedia_url":"\u003cstring>"},"expertise":{"standing":"established","fields":[{"code":"\u003cstring>","slug":"\u003cstring>","standard":"soc_2018","title":"\u003cstring>","group":"minor","level":123,"parent_code":"\u003cstring>"}],"occupations":[{"code":"\u003cstring>","slug":"\u003cstring>","standard":"soc_2018","title":"\u003cstring>","established":true,"group":"minor","level":123,"parent_code":"\u003cstring>","practicing":true}],"seniority":"professional"},"person":{"id":"\u003cstring>","name":"\u003cstring>","description":"\u003cstring>","image_url":"\u003cstring>","slug":"\u003cstring>"},"role":"\u003cstring>","speaking_duration_seconds":123}],"url":"\u003cstring>","windows":[{"end_seconds":123,"lines":[{"end_seconds":123,"number":123,"speaker":"\u003cstring>","start_seconds":123,"text":"\u003cstring>","is_match":true,"is_mention":true,"matched_terms":["\u003cstring>"],"role":"\u003cstring>","segment_id":"\u003cstring>","speaker_statement_characteristics":{"certainty":"hedged","sentiment":"negative","specificity":"vague","temporal_orientation":"past"}}],"start_seconds":123,"is_preview":true,"url":"\u003cstring>"}]}],"has_more":true,"company":{"id":"\u003cstring>","name":"\u003cstring>","description":"\u003cstring>","domain":"\u003cstring>","image_url":"\u003cstring>","slug":"\u003cstring>","ticker":"\u003cstring>"},"cursor":"\u003cstring>","diagnostics":{"outcome":"weak_semantic_match","summary":"\u003cstring>","filters":[{"parameter":"\u003cstring>","emptied_results":true,"remedy":"\u003cstring>","retry_with":{},"value":"\u003cstring>"}],"next_steps":["\u003cstring>"],"retry_with":{}},"entity":{"id":"\u003cstring>","name":"\u003cstring>","slug":"\u003cstring>","company":{"id":"\u003cstring>","domain":"\u003cstring>","ticker":"\u003cstring>"},"description":"\u003cstring>","image_url":"\u003cstring>","person":{"id":"\u003cstring>","company":"\u003cstring>","image_url":"\u003cstring>","title":"\u003cstring>"},"type":{"name":"\u003cstring>","slug":"\u003cstring>"},"wikipedia_url":"\u003cstring>"}}}},"exampleType":"generated"}},"description":"OK","exampleType":"generated"},"f2ff5f8d-50ef-4dd9-b920-84a0013c6aab":{"content":{"application/problem+json":{"schema":{"additionalProperties":false,"properties":{"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.","examples":["Property foo is required but is missing."],"type":"string","uniqueKey":"detail","typeLabel":"string"},"error_code":{"type":"string","uniqueKey":"error_code","typeLabel":"string"},"errors":{"oneOf":[{"description":"Optional list of individual error details","items":{"additionalProperties":false,"properties":{"location":{"description":"Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'","type":"string","uniqueKey":"errors.oneOf.0.items.[INDEX].location","typeLabel":"string"},"message":{"description":"Error message text","type":"string","uniqueKey":"errors.oneOf.0.items.[INDEX].message","typeLabel":"string"},"value":{"description":"The value at the given location","uniqueKey":"errors.oneOf.0.items.[INDEX].value","typeLabel":"any"}},"type":"object","uniqueKey":"errors.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"errors.oneOf.0","typeLabel":"object[]"},{"description":"Optional list of individual error details","items":{"additionalProperties":false,"properties":{"location":{"description":"Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'","type":"string"},"message":{"description":"Error message text","type":"string"},"value":{"description":"The value at the given location"}},"type":"object"},"type":"null","uniqueKey":"errors.oneOf.1","typeLabel":"null"}],"uniqueKey":"errors","typeLabel":"object[] | null"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem.","examples":["https://example.com/error-log/abc123"],"format":"uri","type":"string","uniqueKey":"instance","typeLabel":"string\u003curi>"},"resolve":{"additionalProperties":false,"properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"resolve.message","typeLabel":"string"},"action":{"type":"string","uniqueKey":"resolve.action","typeLabel":"string"},"endpoint":{"type":"string","uniqueKey":"resolve.endpoint","typeLabel":"string"},"method":{"type":"string","uniqueKey":"resolve.method","typeLabel":"string"},"url":{"type":"string","uniqueKey":"resolve.url","typeLabel":"string"}},"required":["message"],"type":"object","uniqueKey":"resolve","typeLabel":"object"},"status":{"description":"HTTP status code","examples":[400],"format":"int64","type":"integer","uniqueKey":"status","typeLabel":"integer\u003cint64>"},"title":{"description":"A short, human-readable summary of the problem type. This value should not change between occurrences of the error.","examples":["Bad Request"],"type":"string","uniqueKey":"title","typeLabel":"string"},"type":{"default":"about:blank","description":"A URI reference to human-readable documentation for the error.","examples":["https://example.com/errors/example"],"format":"uri","type":"string","uniqueKey":"type","typeLabel":"string\u003curi>"}},"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"detail":"Property foo is required but is missing.","error_code":"\u003cstring>","errors":[{"location":"\u003cstring>","message":"\u003cstring>","value":"\u003cunknown>"}],"instance":"https://example.com/error-log/abc123","resolve":{"message":"\u003cstring>","action":"\u003cstring>","endpoint":"\u003cstring>","method":"\u003cstring>","url":"\u003cstring>"},"status":400,"title":"Bad Request","type":"https://example.com/errors/example"}}},"exampleType":"generated"}},"description":"Payment Required. Read error_code. payment_required is the x402 path: either a keyless request being challenged — pay $0.03 in USDC per request (requirements in the PAYMENT-REQUIRED header) or send a pp_ API key — or a supplied payment that failed settlement (details in the PAYMENT-RESPONSE header; retry the same signature before signing a new one). See https://docs.particle.pro/x402. Any other code means the credential was accepted but does not cover this request (a plan or session gate such as premium_required or paid_plan_confirmation_required); its resolve says how to obtain access, and no payment header is sent.","exampleType":"generated"},"a8c77bcd-cbb4-4405-87cf-10bf1e6d41cb":{"content":{"application/problem+json":{"schema":{"additionalProperties":false,"properties":{"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.","examples":["Property foo is required but is missing."],"type":"string","uniqueKey":"detail","typeLabel":"string"},"error_code":{"type":"string","uniqueKey":"error_code","typeLabel":"string"},"errors":{"oneOf":[{"description":"Optional list of individual error details","items":{"additionalProperties":false,"properties":{"location":{"description":"Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'","type":"string","uniqueKey":"errors.oneOf.0.items.[INDEX].location","typeLabel":"string"},"message":{"description":"Error message text","type":"string","uniqueKey":"errors.oneOf.0.items.[INDEX].message","typeLabel":"string"},"value":{"description":"The value at the given location","uniqueKey":"errors.oneOf.0.items.[INDEX].value","typeLabel":"any"}},"type":"object","uniqueKey":"errors.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"errors.oneOf.0","typeLabel":"object[]"},{"description":"Optional list of individual error details","items":{"additionalProperties":false,"properties":{"location":{"description":"Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'","type":"string"},"message":{"description":"Error message text","type":"string"},"value":{"description":"The value at the given location"}},"type":"object"},"type":"null","uniqueKey":"errors.oneOf.1","typeLabel":"null"}],"uniqueKey":"errors","typeLabel":"object[] | null"},"instance":{"description":"A URI reference that identifies the specific occurrence of the problem.","examples":["https://example.com/error-log/abc123"],"format":"uri","type":"string","uniqueKey":"instance","typeLabel":"string\u003curi>"},"resolve":{"additionalProperties":false,"properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"resolve.message","typeLabel":"string"},"action":{"type":"string","uniqueKey":"resolve.action","typeLabel":"string"},"endpoint":{"type":"string","uniqueKey":"resolve.endpoint","typeLabel":"string"},"method":{"type":"string","uniqueKey":"resolve.method","typeLabel":"string"},"url":{"type":"string","uniqueKey":"resolve.url","typeLabel":"string"}},"required":["message"],"type":"object","uniqueKey":"resolve","typeLabel":"object"},"status":{"description":"HTTP status code","examples":[400],"format":"int64","type":"integer","uniqueKey":"status","typeLabel":"integer\u003cint64>"},"title":{"description":"A short, human-readable summary of the problem type. This value should not change between occurrences of the error.","examples":["Bad Request"],"type":"string","uniqueKey":"title","typeLabel":"string"},"type":{"default":"about:blank","description":"A URI reference to human-readable documentation for the error.","examples":["https://example.com/errors/example"],"format":"uri","type":"string","uniqueKey":"type","typeLabel":"string\u003curi>"}},"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"detail":"Property foo is required but is missing.","error_code":"\u003cstring>","errors":[{"location":"\u003cstring>","message":"\u003cstring>","value":"\u003cunknown>"}],"instance":"https://example.com/error-log/abc123","resolve":{"message":"\u003cstring>","action":"\u003cstring>","endpoint":"\u003cstring>","method":"\u003cstring>","url":"\u003cstring>"},"status":400,"title":"Bad Request","type":"https://example.com/errors/example"}}},"exampleType":"generated"}},"description":"Error","exampleType":"generated"}},"security":{"0e11c280-b0b8-440b-b186-22a5487cb9a8":{"ApiKeyHeader":{"description":"Pass your API key in the X-API-Key header (recommended).","in":"header","name":"X-API-Key","type":"apiKey","scopes":[],"schemeName":"ApiKeyHeader"}},"84facd77-9c06-489c-b8d6-96a8ff9a2411":{"BearerAuth":{"description":"Pass your API key as a Bearer token in the Authorization header.","scheme":"bearer","type":"http","scopes":[],"schemeName":"BearerAuth"}}},"servers":{"9d8bd59a-3251-48f4-b107-f87824ed03d9":{"url":"https://api.particle.pro"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"description":"Pass your API key in the X-API-Key header (recommended).","in":"header","name":"X-API-Key","type":"apiKey","scopes":[],"schemeName":"ApiKeyHeader"},"schema":{"title":"X-API-Key","type":"string","description":"Pass your API key in the X-API-Key header (recommended).","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyHeader","name":"X-API-Key"}],"title":"ApiKeyHeader"},{"schemes":[{"scheme":{"description":"Pass your API key as a Bearer token in the Authorization header.","scheme":"bearer","type":"http","scopes":[],"schemeName":"BearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Pass your API key as a Bearer token in the Authorization header.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"BearerAuth","name":"Authorization"}],"title":"BearerAuth"}]},"originalFileLocation":"openapi.json"},"subdomain":"particle-c40da4e2","siteName":"Particle API","title":"Search podcast episode content - Particle API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-27T00:34:05.000Z","originalFileLocation":"api-reference/podcast-episode-search/search-podcast-episode-content.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"dark\";if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"To find podcasts (shows) by name or topic, use /v1/podcasts/search?q=…. This endpoint searches inside episode dialogue — by meaning (semantic_search), by exact phrase (keyword_search), or both at once (hybrid). Each result is a segment of an episode, returned with bounded preview windows of dialogue and any highlight clips that overlap the segment. For \u0026quot;every line about a person or company\u0026quot; use /v1/podcasts/mentions instead — that endpoint returns episode-grouped mention windows with line-level highlights and is shaped for the read-everything-about-X use case. entity_id and company_id here narrow the result set to episodes featuring the resolved entity, but the ranking still comes from semantic_search / keyword_search.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Particle API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/particle-c40da4e2/Uccj8-qi0DrvBDRY/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/particle-c40da4e2/Uccj8-qi0DrvBDRY/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/particle-c40da4e2/Uccj8-qi0DrvBDRY/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/particle-c40da4e2/Uccj8-qi0DrvBDRY/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/particle-c40da4e2/Uccj8-qi0DrvBDRY/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/particle-c40da4e2/Uccj8-qi0DrvBDRY/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/particle-c40da4e2/Uccj8-qi0DrvBDRY/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/particle-c40da4e2/Uccj8-qi0DrvBDRY/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/particle-c40da4e2/Uccj8-qi0DrvBDRY/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Search podcast episode content - Particle API\">\u003cmeta data-mint-head property=\"og:description\" content=\"To find podcasts (shows) by name or topic, use /v1/podcasts/search?q=…. This endpoint searches inside episode dialogue — by meaning (semantic_search), by exact phrase (keyword_search), or both at once (hybrid). Each result is a segment of an episode, returned with bounded preview windows of dialogue and any highlight clips that overlap the segment. For \u0026quot;every line about a person or company\u0026quot; use /v1/podcasts/mentions instead — that endpoint returns episode-grouped mention windows with line-level highlights and is shaped for the read-everything-about-X use case. entity_id and company_id here narrow the result set to episodes featuring the resolved entity, but the ranking still comes from semantic_search / keyword_search.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Particle API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.particle.pro/api-reference/podcast-episode-search/search-podcast-episode-content\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://particle-c40da4e2.mintlify.app/_mintlify/api/og/v2?division=Podcast+Episode+Search\u0026amp;title=Search+podcast+episode+content\u0026amp;description=To+find+podcasts+%28shows%29+by+name+or+topic%2C+use+%60%2Fv1%2Fpodcasts%2Fsearch%3Fq%3D%E2%80%A6%60.+This+endpoint+searches+*inside*+episode+dialogue+%E2%80%94+by+meaning+%28%60semantic_search%60%29%2C+by+\u0026amp;theme=cc76b59effb7ea31e0037892\u0026amp;signature=17dd0d6e80cc888dd93100032e9eb18251ca1a362f83d061aa013713e4bf01da\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Search podcast episode content - Particle API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"To find podcasts (shows) by name or topic, use /v1/podcasts/search?q=…. This endpoint searches inside episode dialogue — by meaning (semantic_search), by exact phrase (keyword_search), or both at once (hybrid). Each result is a segment of an episode, returned with bounded preview windows of dialogue and any highlight clips that overlap the segment. For \u0026quot;every line about a person or company\u0026quot; use /v1/podcasts/mentions instead — that endpoint returns episode-grouped mention windows with line-level highlights and is shaped for the read-everything-about-X use case. entity_id and company_id here narrow the result set to episodes featuring the resolved entity, but the ranking still comes from semantic_search / keyword_search.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://particle-c40da4e2.mintlify.app/_mintlify/api/og/v2?division=Podcast+Episode+Search\u0026amp;title=Search+podcast+episode+content\u0026amp;description=To+find+podcasts+%28shows%29+by+name+or+topic%2C+use+%60%2Fv1%2Fpodcasts%2Fsearch%3Fq%3D%E2%80%A6%60.+This+endpoint+searches+*inside*+episode+dialogue+%E2%80%94+by+meaning+%28%60semantic_search%60%29%2C+by+\u0026amp;theme=cc76b59effb7ea31e0037892\u0026amp;signature=17dd0d6e80cc888dd93100032e9eb18251ca1a362f83d061aa013713e4bf01da\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/particle-c40da4e2/Uccj8-qi0DrvBDRY/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Particle API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0369a1\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.particle.pro/api-reference/podcast-episode-search/search-podcast-episode-content\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/podcast-episode-search/search-podcast-episode-content.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.particle.pro/#organization\",\"name\":\"Particle API\",\"url\":\"https://docs.particle.pro\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/particle-c40da4e2/tk5mmLn_iJIxNhbI/logo/light.svg?fit=max\u0026auto=format\u0026n=tk5mmLn_iJIxNhbI\u0026q=85\u0026s=a659784e597694177292b154cc1808f4\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.particle.pro#website\",\"name\":\"Particle API\",\"url\":\"https://docs.particle.pro\",\"publisher\":{\"@id\":\"https://docs.particle.pro/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.particle.pro/api-reference/podcast-episode-search/search-podcast-episode-content#webpage\",\"url\":\"https://docs.particle.pro/api-reference/podcast-episode-search/search-podcast-episode-content\",\"name\":\"Search podcast episode content\",\"description\":\"To find podcasts (shows) by name or topic, use /v1/podcasts/search?q=…. This endpoint searches inside episode dialogue — by meaning (semantic_search), by exact phrase (keyword_search), or both at once (hybrid). Each result is a segment of an episode, returned with bounded preview windows of dialogue and any highlight clips that overlap the segment. For \\\"every line about a person or company\\\" use /v1/podcasts/mentions instead — that endpoint returns episode-grouped mention windows with line-level highlights and is shaped for the read-everything-about-X use case. entity_id and company_id here narrow the result set to episodes featuring the resolved entity, but the ranking still comes from semantic_search / keyword_search.\",\"dateModified\":\"2026-10-27T00:34:05.000Z\",\"isPartOf\":{\"@id\":\"https://docs.particle.pro#website\"},\"breadcrumb\":{\"@id\":\"https://docs.particle.pro/api-reference/podcast-episode-search/search-podcast-episode-content#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.particle.pro/api-reference/podcast-episode-search/search-podcast-episode-content#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Particle API\",\"item\":\"https://docs.particle.pro\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Search podcast episode content\",\"item\":\"https://docs.particle.pro/api-reference/podcast-episode-search/search-podcast-episode-content\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.particle.pro/api-reference/podcast-episode-search/search-podcast-episode-content#apireference\",\"headline\":\"Search podcast episode content\",\"name\":\"Search podcast episode content\",\"description\":\"To find podcasts (shows) by name or topic, use /v1/podcasts/search?q=…. This endpoint searches inside episode dialogue — by meaning (semantic_search), by exact phrase (keyword_search), or both at once (hybrid). Each result is a segment of an episode, returned with bounded preview windows of dialogue and any highlight clips that overlap the segment. For \\\"every line about a person or company\\\" use /v1/podcasts/mentions instead — that endpoint returns episode-grouped mention windows with line-level highlights and is shaped for the read-everything-about-X use case. entity_id and company_id here narrow the result set to episodes featuring the resolved entity, but the ranking still comes from semantic_search / keyword_search.\",\"url\":\"https://docs.particle.pro/api-reference/podcast-episode-search/search-podcast-episode-content\",\"mainEntityOfPage\":{\"@id\":\"https://docs.particle.pro/api-reference/podcast-episode-search/search-podcast-episode-content#webpage\"},\"dateModified\":\"2026-10-27T00:34:05.000Z\",\"publisher\":{\"@id\":\"https://docs.particle.pro/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.particle.pro#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Particle API\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Particle API","nav":{"global":null,"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":""}]},{"tab":"API reference","groups":[{"group":"API documentation","pages":[{"title":"Introduction","href":"/api-reference/introduction"},{"title":"Alerts","sidebarTitle":"Alerts overview","icon":"bell","href":"/api-reference/alerts"}]},{"group":"Alerts","pages":[{"title":"Get a single alert delivery","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/alerts/deliveries/{id}","href":"/api-reference/alerts/get-a-single-alert-delivery"},{"title":"Get the exact JSON a webhook delivery POSTed","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/alerts/deliveries/{id}/webhook-payload","href":"/api-reference/alerts/get-the-exact-json-a-webhook-delivery-posted"},{"title":"Preview alert disable action","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/alerts/disable","href":"/api-reference/alerts/preview-alert-disable-action"},{"title":"Disable an alert via email-footer token","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/alerts/disable","href":"/api-reference/alerts/disable-an-alert-via-email-footer-token"},{"title":"Get a single alert match","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/alerts/matches/{id}","href":"/api-reference/alerts/get-a-single-alert-match"},{"title":"Get the status and result of an alert preview","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/alerts/preview/{previewId}","href":"/api-reference/alerts/get-the-status-and-result-of-an-alert-preview"},{"title":"Get an alert","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/alerts/{id}","href":"/api-reference/alerts/get-an-alert"},{"title":"Delete an alert","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/alerts/{id}","href":"/api-reference/alerts/delete-an-alert"},{"title":"Update an alert","deprecated":null,"version":null,"openapi":"/openapi.json patch /v1/alerts/{id}","href":"/api-reference/alerts/update-an-alert"},{"title":"List deliveries for an alert","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/alerts/{id}/deliveries","href":"/api-reference/alerts/list-deliveries-for-an-alert"},{"title":"List matches for an alert","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/alerts/{id}/matches","href":"/api-reference/alerts/list-matches-for-an-alert"},{"title":"Send a test webhook","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/alerts/{id}/test-webhook","href":"/api-reference/alerts/send-a-test-webhook"},{"title":"List alerts","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/projects/{projectId}/alerts","href":"/api-reference/alerts/list-alerts"},{"title":"Create an alert","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/projects/{projectId}/alerts","href":"/api-reference/alerts/create-an-alert"},{"title":"Preview match frequency for an alert before creating it","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/projects/{projectId}/alerts/preview","href":"/api-reference/alerts/preview-match-frequency-for-an-alert-before-creating-it"}]},{"group":"Companies","pages":[{"title":"List companies","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/companies","href":"/api-reference/companies/list-companies"},{"title":"Get a company","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/companies/{id}","href":"/api-reference/companies/get-a-company"},{"title":"List company competitors","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/companies/{id}/competitors","href":"/api-reference/companies/list-company-competitors"},{"title":"List a company's external profiles","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/companies/{id}/external-links","href":"/api-reference/companies/list-a-companys-external-profiles"},{"title":"List company people","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/companies/{id}/people","href":"/api-reference/companies/list-company-people"},{"title":"Get company advertising profile","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/companies/{id}/podcast/advertising","href":"/api-reference/companies/get-company-advertising-profile"},{"title":"List company podcast advertising placements","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/companies/{id}/podcast/advertising/placements","href":"/api-reference/companies/list-company-podcast-advertising-placements"},{"title":"List podcasts carrying company advertising","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/companies/{id}/podcast/advertising/podcasts","href":"/api-reference/companies/list-podcasts-carrying-company-advertising"},{"title":"List podcasts a company could advertise on next","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/companies/{id}/podcast/recommendations","href":"/api-reference/companies/list-podcasts-a-company-could-advertise-on-next"},{"title":"List company products","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/companies/{id}/products","href":"/api-reference/companies/list-company-products"}]},{"group":"Embed","pages":[{"title":"Get clip embed","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/embed/clips/{id}","href":"/api-reference/embed/get-clip-embed"},{"title":"Get clip embed transcript","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/embed/clips/{id}/transcript","href":"/api-reference/embed/get-clip-embed-transcript"},{"title":"Get episode embed code","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/embed/episodes/{episode_id}/code","href":"/api-reference/embed/get-episode-embed-code"}]},{"group":"Entities","pages":[{"title":"List entities","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/entities","href":"/api-reference/entities/list-entities"},{"title":"Look up people and companies by external identifier","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/entities/lookup","href":"/api-reference/entities/look-up-people-and-companies-by-external-identifier"},{"title":"Search entities","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/entities/search","href":"/api-reference/entities/search-entities"},{"title":"List entity types","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/entities/types","href":"/api-reference/entities/list-entity-types"},{"title":"Get an entity","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/entities/{id}","href":"/api-reference/entities/get-an-entity"}]},{"group":"Account","pages":[{"title":"Identify your API key","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/me","href":"/api-reference/account/identify-your-api-key"},{"title":"Get your API key's usage","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/me/usage","href":"/api-reference/account/get-your-api-keys-usage"}]},{"group":"People","pages":[{"title":"Find experts","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/people/expertise","href":"/api-reference/people/find-experts"},{"title":"List fields of research","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/people/fields","href":"/api-reference/people/list-fields-of-research"},{"title":"Get a field of research","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/people/fields/{code}","href":"/api-reference/people/get-a-field-of-research"},{"title":"Rank a field of research's guests","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/people/fields/{code}/guests","href":"/api-reference/people/rank-a-field-of-researchs-guests"},{"title":"Rank the podcasts that book a field of research","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/people/fields/{code}/podcasts","href":"/api-reference/people/rank-the-podcasts-that-book-a-field-of-research"},{"title":"List occupations","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/people/occupations","href":"/api-reference/people/list-occupations"},{"title":"Get an occupation","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/people/occupations/{code}","href":"/api-reference/people/get-an-occupation"},{"title":"Rank an occupation's guests","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/people/occupations/{code}/guests","href":"/api-reference/people/rank-an-occupations-guests"},{"title":"Rank the podcasts that book an occupation","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/people/occupations/{code}/podcasts","href":"/api-reference/people/rank-the-podcasts-that-book-an-occupation"},{"title":"Get a Person","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/people/{id}","href":"/api-reference/people/get-a-person"},{"title":"Get a Person's expertise","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/people/{id}/expertise","href":"/api-reference/people/get-a-persons-expertise"},{"title":"List a Person's external profiles","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/people/{slug}/external-links","href":"/api-reference/people/list-a-persons-external-profiles"}]},{"group":"Podcasts","pages":[{"title":"List and search podcasts","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts","href":"/api-reference/podcasts/list-and-search-podcasts"},{"title":"Download the show archive","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/archive/download","href":"/api-reference/podcasts/download-the-show-archive"},{"title":"Look up podcasts by external platform identifier","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/lookup","href":"/api-reference/podcasts/look-up-podcasts-by-external-platform-identifier"},{"title":"Search podcasts","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/search","href":"/api-reference/podcasts/search-podcasts"},{"title":"Get podcast catalog statistics","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/stats","href":"/api-reference/podcasts/get-podcast-catalog-statistics"},{"title":"List podcast topics","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/topics","href":"/api-reference/podcasts/list-podcast-topics"},{"title":"Get a podcast","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}","href":"/api-reference/podcasts/get-a-podcast"},{"title":"Get podcast advertising profile","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/advertising","href":"/api-reference/podcasts/get-podcast-advertising-profile"},{"title":"Get a podcast's latest bias analysis","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/bias","href":"/api-reference/podcasts/get-a-podcasts-latest-bias-analysis"},{"title":"List episodes for a podcast","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/episodes","href":"/api-reference/podcasts/list-episodes-for-a-podcast"},{"title":"List a podcast's third-party platform presences","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/external-links","href":"/api-reference/podcasts/list-a-podcasts-third-party-platform-presences"},{"title":"Get a podcast's format profile","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/format","href":"/api-reference/podcasts/get-a-podcasts-format-profile"},{"title":"List entity mentions in a podcast","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/mentions","href":"/api-reference/podcasts/list-entity-mentions-in-a-podcast"},{"title":"List sponsors a podcast could pitch","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/recommendations/sponsors","href":"/api-reference/podcasts/list-sponsors-a-podcast-could-pitch"},{"title":"List related podcasts","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/related","href":"/api-reference/podcasts/list-related-podcasts"},{"title":"Get a podcast's latest brand suitability assessment","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/suitability","href":"/api-reference/podcasts/get-a-podcasts-latest-brand-suitability-assessment"}]},{"group":"Podcast Advertising","pages":[{"title":"Get sponsor co-occurrence","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/advertising/co-occurrence","href":"/api-reference/podcast-advertising/get-sponsor-co-occurrence"},{"title":"Get advertising leaderboard","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/advertising/leaderboard","href":"/api-reference/podcast-advertising/get-advertising-leaderboard"},{"title":"Get advertising leaderboard preview","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/advertising/leaderboard/preview","href":"/api-reference/podcast-advertising/get-advertising-leaderboard-preview"},{"title":"Get publisher advertising leaderboard","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/advertising/publishers/leaderboard","href":"/api-reference/podcast-advertising/get-publisher-advertising-leaderboard"},{"title":"List sponsors","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/advertising/sponsors","href":"/api-reference/podcast-advertising/list-sponsors"},{"title":"List trending sponsors","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/advertising/sponsors/trends","href":"/api-reference/podcast-advertising/list-trending-sponsors"},{"title":"Get a sponsor","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/advertising/sponsors/{id}","href":"/api-reference/podcast-advertising/get-a-sponsor"},{"title":"List podcasts for a sponsor","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/advertising/sponsors/{id}/podcasts","href":"/api-reference/podcast-advertising/list-podcasts-for-a-sponsor"},{"title":"List publishers for a sponsor","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/advertising/sponsors/{id}/publishers","href":"/api-reference/podcast-advertising/list-publishers-for-a-sponsor"},{"title":"List ad segments for a sponsor","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/advertising/sponsors/{id}/segments","href":"/api-reference/podcast-advertising/list-ad-segments-for-a-sponsor"},{"title":"Get advertising timeseries","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/advertising/timeseries","href":"/api-reference/podcast-advertising/get-advertising-timeseries"},{"title":"Get publisher advertising profile","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/publishers/{id}/advertising","href":"/api-reference/podcast-advertising/get-publisher-advertising-profile"},{"title":"List publisher's podcasts ranked by ad volume","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/publishers/{id}/advertising/podcasts","href":"/api-reference/podcast-advertising/list-publishers-podcasts-ranked-by-ad-volume"},{"title":"List sponsors for a publisher","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/publishers/{id}/advertising/sponsors","href":"/api-reference/podcast-advertising/list-sponsors-for-a-publisher"},{"title":"List sponsors advertising on a podcast","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/advertising/sponsors","href":"/api-reference/podcast-advertising/list-sponsors-advertising-on-a-podcast"}]},{"group":"Podcast Bias","pages":[{"title":"Rank publishers by political bias metric","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/bias/publishers/leaderboard","href":"/api-reference/podcast-bias/rank-publishers-by-political-bias-metric"},{"title":"List publishers with podcasts in a bias bucket","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/bias/{result}/publishers","href":"/api-reference/podcast-bias/list-publishers-with-podcasts-in-a-bias-bucket"},{"title":"Get publisher political bias profile","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/publishers/{id}/bias","href":"/api-reference/podcast-bias/get-publisher-political-bias-profile"},{"title":"List analyzed podcasts for a publisher","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/publishers/{id}/bias/podcasts","href":"/api-reference/podcast-bias/list-analyzed-podcasts-for-a-publisher"}]},{"group":"Podcast Clips","pages":[{"title":"List clips","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/clips","href":"/api-reference/podcast-clips/list-clips"},{"title":"Get a clip","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/clips/{id}","href":"/api-reference/podcast-clips/get-a-clip"},{"title":"List clips for an episode","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/{id}/clips","href":"/api-reference/podcast-clips/list-clips-for-an-episode"}]},{"group":"Podcast Transcripts","pages":[{"title":"Get clip transcript","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/clips/{id}/transcript","href":"/api-reference/podcast-transcripts/get-clip-transcript"},{"title":"Get episode transcript","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/{id}/transcript","href":"/api-reference/podcast-transcripts/get-episode-transcript"},{"title":"Get entity mentions in transcript","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/{id}/transcript/mentions","href":"/api-reference/podcast-transcripts/get-entity-mentions-in-transcript"},{"title":"Get a transcript excerpt around a moment","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/{id}/transcript/preview","href":"/api-reference/podcast-transcripts/get-a-transcript-excerpt-around-a-moment"},{"title":"Get word-level transcript","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/{id}/transcript/words","href":"/api-reference/podcast-transcripts/get-word-level-transcript"},{"title":"Get segment transcript","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/segments/{id}/transcript","href":"/api-reference/podcast-transcripts/get-segment-transcript"}]},{"group":"Entity Charts","pages":[{"title":"List entity charts","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/entities/charts","href":"/api-reference/entity-charts/list-entity-charts"},{"title":"Get an entity chart","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/entities/charts/{category}","href":"/api-reference/entity-charts/get-an-entity-chart"}]},{"group":"Podcast Episodes","pages":[{"title":"List episodes","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes","href":"/api-reference/podcast-episodes/list-episodes"},{"title":"List the episode archive","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/archive","href":"/api-reference/podcast-episodes/list-the-episode-archive"},{"title":"Download the episode archive","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/archive/download","href":"/api-reference/podcast-episodes/download-the-episode-archive"},{"title":"Replay the episode archive","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/archive/stream","href":"/api-reference/podcast-episodes/replay-the-episode-archive"},{"title":"Poll the episode feed","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/feed","href":"/api-reference/podcast-episodes/poll-the-episode-feed"},{"title":"Look up episodes by external identifier","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/lookup","href":"/api-reference/podcast-episodes/look-up-episodes-by-external-identifier"},{"title":"Stream episodes","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/stream","href":"/api-reference/podcast-episodes/stream-episodes"},{"title":"Stream episodes (POST)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/podcasts/episodes/stream","href":"/api-reference/podcast-episodes/stream-episodes-post"},{"title":"Get episode timeseries","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/timeseries","href":"/api-reference/podcast-episodes/get-episode-timeseries"},{"title":"Get an episode","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/{id}","href":"/api-reference/podcast-episodes/get-an-episode"},{"title":"List ads in an episode","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/{id}/ads","href":"/api-reference/podcast-episodes/list-ads-in-an-episode"},{"title":"List entities in an episode","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/{id}/entities","href":"/api-reference/podcast-episodes/list-entities-in-an-episode"},{"title":"List an episode's guest expertise","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/{id}/expertise","href":"/api-reference/podcast-episodes/list-an-episodes-guest-expertise"},{"title":"List related episodes","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/{id}/related","href":"/api-reference/podcast-episodes/list-related-episodes"},{"title":"List speakers in an episode","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/{id}/speakers","href":"/api-reference/podcast-episodes/list-speakers-in-an-episode"},{"title":"List topics for an episode","description":"Returns the topic taxonomy classifications for a specific episode.","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/{id}/topics","href":"/api-reference/podcast-episodes/list-topics-for-an-episode"}]},{"group":"Podcast Episode Search","pages":[{"title":"Search podcast episode content","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/search","href":"/api-reference/podcast-episode-search/search-podcast-episode-content"},{"title":"Search podcast dialogue for entity mentions","description":"Returns every line of dialogue that mentions a person or company, grouped by episode and ordered by recency. Each result is one episode plus all of that episode's mention windows — a window is a contiguous range of dialogue containing the mention with `context_lines` of surrounding context, and lines containing the mention have `is_mention=true`.\n\nMentions inside ad reads are excluded by default; pass `include_ads=true` to include them.\n\nSubjects with no knowledge graph entity (most podcast guests, smaller companies) are matched by scanning dialogue for their name verbatim instead of curated entity tags; such pages carry `matched_by: \"name\"` and echo the resolved `person` or `company` instead of `entity`.\n\nUse this endpoint for the \"every line about X\" use case. For finding dialogue by topic or exact phrase use `/v1/podcasts/episodes/search` instead.","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/mentions","href":"/api-reference/podcast-episode-search/search-podcast-dialogue-for-entity-mentions"},{"title":"List an entity's mentions by podcast","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/mentions/by-podcast","href":"/api-reference/podcast-episode-search/list-an-entitys-mentions-by-podcast"},{"title":"Get mention share of voice","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/mentions/share-of-voice","href":"/api-reference/podcast-episode-search/get-mention-share-of-voice"},{"title":"Get mention timeseries","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/mentions/timeseries","href":"/api-reference/podcast-episode-search/get-mention-timeseries"}]},{"group":"Podcast Segments","pages":[{"title":"List segments for an episode","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/episodes/{id}/segments","href":"/api-reference/podcast-segments/list-segments-for-an-episode"},{"title":"List segments","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/segments","href":"/api-reference/podcast-segments/list-segments"},{"title":"Get a segment","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/segments/{id}","href":"/api-reference/podcast-segments/get-a-segment"}]},{"group":"Podcast Guests","pages":[{"title":"List podcast guests","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/guests","href":"/api-reference/podcast-guests/list-podcast-guests"},{"title":"List trending podcast guests","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/guests/trends","href":"/api-reference/podcast-guests/list-trending-podcast-guests"},{"title":"Get a podcast guest profile","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/guests/{id}","href":"/api-reference/podcast-guests/get-a-podcast-guest-profile"},{"title":"List appearances for a podcast guest","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/guests/{id}/appearances","href":"/api-reference/podcast-guests/list-appearances-for-a-podcast-guest"},{"title":"List podcasts a guest has appeared on","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/guests/{id}/podcasts","href":"/api-reference/podcast-guests/list-podcasts-a-guest-has-appeared-on"},{"title":"List podcasts a guest could plausibly appear on next","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/guests/{id}/recommendations/podcasts","href":"/api-reference/podcast-guests/list-podcasts-a-guest-could-plausibly-appear-on-next"},{"title":"Get a guest's brand-suitability exposure profile","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/guests/{id}/suitability","href":"/api-reference/podcast-guests/get-a-guests-brand-suitability-exposure-profile"},{"title":"List the guest roster for a podcast","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/guests","href":"/api-reference/podcast-guests/list-the-guest-roster-for-a-podcast"},{"title":"Get the expertise of a podcast's guests","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/guests/expertise","href":"/api-reference/podcast-guests/get-the-expertise-of-a-podcasts-guests"},{"title":"List a podcast's guests in an occupation or field","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/guests/expertise/{code}","href":"/api-reference/podcast-guests/list-a-podcasts-guests-in-an-occupation-or-field"},{"title":"List guests a podcast could plausibly book","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/recommendations/guests","href":"/api-reference/podcast-guests/list-guests-a-podcast-could-plausibly-book"}]},{"group":"Podcast Publishers","pages":[{"title":"List podcast publishers","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/publishers","href":"/api-reference/podcast-publishers/list-podcast-publishers"},{"title":"Get a podcast publisher","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/publishers/{id}","href":"/api-reference/podcast-publishers/get-a-podcast-publisher"},{"title":"List podcasts for a publisher","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/publishers/{id}/podcasts","href":"/api-reference/podcast-publishers/list-podcasts-for-a-publisher"},{"title":"Get a publisher's brand suitability profile","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/publishers/{id}/suitability","href":"/api-reference/podcast-publishers/get-a-publishers-brand-suitability-profile"},{"title":"List a publisher's podcasts with their suitability verdicts","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/publishers/{id}/suitability/podcasts","href":"/api-reference/podcast-publishers/list-a-publishers-podcasts-with-their-suitability-verdicts"}]},{"group":"Podcast Rankings","pages":[{"title":"List podcast rankings","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/rankings","href":"/api-reference/podcast-rankings/list-podcast-rankings"},{"title":"List ranking categories","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/rankings/categories","href":"/api-reference/podcast-rankings/list-ranking-categories"},{"title":"List ranking countries","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/rankings/countries","href":"/api-reference/podcast-rankings/list-ranking-countries"},{"title":"Get chart slot history","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/rankings/history","href":"/api-reference/podcast-rankings/get-chart-slot-history"},{"title":"List ranking movers","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/rankings/movers","href":"/api-reference/podcast-rankings/list-ranking-movers"},{"title":"List ranking sources","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/rankings/sources","href":"/api-reference/podcast-rankings/list-ranking-sources"},{"title":"List current rankings for a podcast","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/rankings","href":"/api-reference/podcast-rankings/list-current-rankings-for-a-podcast"},{"title":"Get historical rankings for a podcast","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/rankings/history","href":"/api-reference/podcast-rankings/get-historical-rankings-for-a-podcast"},{"title":"Summarize a podcast's chart presence","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/rankings/summary","href":"/api-reference/podcast-rankings/summarize-a-podcasts-chart-presence"}]},{"group":"Podcast Requests","pages":[{"title":"List podcast requests","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/requests","href":"/api-reference/podcast-requests/list-podcast-requests"},{"title":"Request a podcast we don't index","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/podcasts/requests","href":"/api-reference/podcast-requests/request-a-podcast-we-dont-index"},{"title":"Get a podcast request","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/requests/{id}","href":"/api-reference/podcast-requests/get-a-podcast-request"}]},{"group":"Podcast Brand Suitability","pages":[{"title":"Get publishers ranked by exposure to a brand-safety category","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/suitability/categories/{code}/publishers","href":"/api-reference/podcast-brand-suitability/get-publishers-ranked-by-exposure-to-a-brand-safety-category"},{"title":"Get a cross-publisher suitability leaderboard","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/suitability/publishers/leaderboard","href":"/api-reference/podcast-brand-suitability/get-a-cross-publisher-suitability-leaderboard"}]},{"group":"Podcast Transcription","pages":[{"title":"List transcription requests","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/transcription/requests","href":"/api-reference/podcast-transcription/list-transcription-requests"},{"title":"Request an episode's transcription","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/podcasts/transcription/requests","href":"/api-reference/podcast-transcription/request-an-episodes-transcription"},{"title":"Get a transcription request","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/transcription/requests/{id}","href":"/api-reference/podcast-transcription/get-a-transcription-request"}]},{"group":"Podcast Ratings","pages":[{"title":"List ratings for a podcast","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/ratings","href":"/api-reference/podcast-ratings/list-ratings-for-a-podcast"},{"title":"Summarize a podcast's ratings","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/{id}/ratings/summary","href":"/api-reference/podcast-ratings/summarize-a-podcasts-ratings"}]},{"group":"Slack Connections","pages":[{"title":"List Slack connections for a project","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/projects/{projectId}/slack/connections","href":"/api-reference/slack-connections/list-slack-connections-for-a-project"},{"title":"Initiate a Slack workspace OAuth install","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/projects/{projectId}/slack/connections/initiate","href":"/api-reference/slack-connections/initiate-a-slack-workspace-oauth-install"},{"title":"Delete a Slack connection","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/projects/{projectId}/slack/connections/{id}","href":"/api-reference/slack-connections/delete-a-slack-connection"},{"title":"List channels for a Slack connection","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/projects/{projectId}/slack/connections/{id}/channels","href":"/api-reference/slack-connections/list-channels-for-a-slack-connection"},{"title":"Complete a Slack workspace OAuth install","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/slack/connections/callback","href":"/api-reference/slack-connections/complete-a-slack-workspace-oauth-install"}]},{"group":"Webhook Connections","pages":[{"title":"List webhook connections for a project","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/projects/{projectId}/webhooks/connections","href":"/api-reference/webhook-connections/list-webhook-connections-for-a-project"},{"title":"Create a webhook connection","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/projects/{projectId}/webhooks/connections","href":"/api-reference/webhook-connections/create-a-webhook-connection"},{"title":"Get a webhook connection","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/projects/{projectId}/webhooks/connections/{id}","href":"/api-reference/webhook-connections/get-a-webhook-connection"},{"title":"Delete a webhook connection","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/projects/{projectId}/webhooks/connections/{id}","href":"/api-reference/webhook-connections/delete-a-webhook-connection"},{"title":"Rotate a webhook connection's signing secret","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/projects/{projectId}/webhooks/connections/{id}/secret/rotate","href":"/api-reference/webhook-connections/rotate-a-webhook-connections-signing-secret"}]},{"group":"Topics","pages":[{"title":"List topics","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/topics","href":"/api-reference/topics/list-topics"},{"title":"Get a topic","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/topics/{id}","href":"/api-reference/topics/get-a-topic"}]}]},{"tab":"MCP server","pages":[{"title":"MCP server","href":"/mcp/overview"}]}]},"title":"Search podcast episode content - Particle API","buildId":"dpl_DFJrtvUi8HS5F9nkooKuDJsuD5BM","deploymentId":"dpl_DFJrtvUi8HS5F9nkooKuDJsuD5BM","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-rfhihCWU.js","utils-BmH1XFxk.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BcNsxPKB.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-BAES3tkd.js","snippetPresets-DCMQBKLP.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-D6l_bzE9.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BOktbnNh.js","shallow-BCs8SgM7.js","getApiPlaygroundDisplay-DEmW5bJB.js","CodeSnippet-CpZOpB9C.js","CodeSnippets-BOBDqibl.js","Page-D5fEM6aW.js","getPastedJson-DH2JBvmr.js","icon-BBJH-kKh.js","MethodPill-D2Sd5NLC.js","DuplicateIcon-CGgfL2qN.js","createIcon-BKudBBzi.js","DynamicMarkdown-85clUA0i.js","SectionHeading-D0JiMgDx.js","axios-vUo_bRtp.js","Markdown-Cfiy0xZO.js","clsx-rL8ZCCw4.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-aeztFa9U.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BywkCr5C.js"]}