Returns time-bucketed counts of episodes mentioning an entity, plus per-bucket mention line and distinct podcast counts and range totals — the aggregate twin of /v1/podcasts/mentions. For windows the search can fully enumerate, bucket counts match what it returns: mentions inside ad reads are excluded by default (pass include_ads=true to count them), so use this for mention trend charts instead of paging the search once per period. Buckets are UTC-aligned, zero-filled, and Monday-aligned for weeks; a bucket the window cuts through, such as the current week of a window running to now, is marked partial, so compare full buckets with each other. Requires entity_id or company_id. Omitting since aggregates all time. Ranges are capped at 1000 buckets.
For which podcasts carried the mentions, compared with the period before, use /v1/podcasts/mentions/by-podcast. For appearance trends by speaker role across episode-level filters (language, duration, keyword_search) use /v1/podcasts/episodes/timeseries instead; its role=mention counts include ad reads.
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.
Only mentions spoken by 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 mentions spoken by 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.
Also split each bucket's mentions by their label on this speaker statement characteristics axis: breakdown=sentiment is whether the subject is spoken of more negatively over time. Each bucket's label shares are of its scored_mentions, the mentions that carry the labels, and a bucket with fewer than 20 is low_sample. Mention counts are unchanged. Requires since, and the range may span at most 365 days.
Count only mentions said a certain way: speaker_statement_characteristics[temporal_orientation]=future charts predictions about the subject over time. 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. An episode counts only when one of its mentions is said that way, and lines without the labels are not counted. Requires since, and the range may span at most 365 days.
Opaque version of the speaker statement characteristics the series read. Compare series only when it is equal. Absent when no line was read: a subject without a linked entity, or a podcast or publisher with no shows.
UTC date of the range's exclusive upper bound. When the bound falls inside a day, such as the default of now, mentions on this date up to the bound are still counted.
With breakdown or speaker_statement_characteristics, the mentions in the range that carry speaker statement characteristics. They are read from each mention line, while mention counts without speaker_statement_characteristics are the episodes' stored counts, so the two can differ slightly either way.
{"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":""},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af1f49d9e9a7e27ab8c1b6b","clientVersion":"0.0.4094","searchFilterCounts":[{"language":"default","tag":"API reference","count":169},{"language":"default","tag":"Guides","count":127},{"language":"default","tag":"Errors","count":71},{"language":"default","tag":"MCP server","count":59},{"language":"default","tag":"Podcasts","count":58},{"language":"default","tag":"Tools","count":52},{"language":"default","tag":"Billing \u0026 subscription","count":31},{"language":"default","tag":"Alerts","count":27},{"language":"default","tag":"People","count":21},{"language":"default","tag":"Companies","count":18}]},"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":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","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":"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":"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":"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":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","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":"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":"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":"turbopuffer-dual-write","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},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":"body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html.dark h1,html.dark h2,html.dark h3,html.dark #page-title,html.dark #mdx-content{color:rgba(255, 255, 255, 0.9)}html.dark #sidebar a,html.dark .accordion,html.dark [class*=\"tooltip\"]{color:rgba(255, 255, 255, 0.6)}html.dark [class*=\"callout\"] p,html.dark [class*=\"admonition\"] p,html.dark .method-pill,html.dark [class*=\"eyebrow\"],html.dark [class*=\"breadcrumb\"]{color:rgba(255, 255, 255, 0.5)}html.dark footer,html.dark footer *{color:rgba(255, 255, 255, 0.2)}html.dark .card,html.dark .accordion,html.dark .tabs,html.dark .code-block,html.dark .steps{border-color:rgba(255, 255, 255, 0.15)}html.dark .card{border-radius:0.75rem}html.dark .code-block{border-radius:0.5rem}html.dark .code-block pre{background-color:#1a1b1b}.dark\\:border-white\\/\\[0\\.07\\]:is(.dark *){border-color:rgba(255, 255, 255, 0.15)}html.dark #sidebar{background-color:#0c0d0d;border-color:rgba(255, 255, 255, 0.15)}html.dark,html.dark *{scrollbar-width:thin;scrollbar-color:rgba(255, 255, 255, 0.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:transparent}html.dark::-webkit-scrollbar-thumb,html.dark *::-webkit-scrollbar-thumb{background:rgba(255, 255, 255, 0.15);border-radius:3px}html.dark::-webkit-scrollbar-thumb:hover,html.dark *::-webkit-scrollbar-thumb:hover{background:rgba(255, 255, 255, 0.3)}"}],"page":{"pagePath":"api-reference/podcast-episode-search/get-mention-timeseries","slug":"/api-reference/podcast-episode-search/get-mention-timeseries","pageMetadata":{"title":"Get mention timeseries","description":"Returns time-bucketed counts of episodes mentioning an entity, plus per-bucket mention line and distinct podcast counts and range totals — the aggregate twin of `/v1/podcasts/mentions`. For windows the search can fully enumerate, bucket counts match what it returns: mentions inside ad reads are excluded by default (pass `include_ads=true` to count them), so use this for mention trend charts instead of paging the search once per period. Buckets are UTC-aligned, zero-filled, and Monday-aligned for weeks; a bucket the window cuts through, such as the current week of a window running to now, is marked `partial`, so compare full buckets with each other. Requires entity_id or company_id. Omitting since aggregates all time. Ranges are capped at 1000 buckets.\n\nFor which podcasts carried the mentions, compared with the period before, use `/v1/podcasts/mentions/by-podcast`. For appearance trends by speaker role across episode-level filters (language, duration, keyword_search) use `/v1/podcasts/episodes/timeseries` instead; its `role=mention` counts include ad reads.","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/mentions/timeseries","href":"/api-reference/podcast-episode-search/get-mention-timeseries","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 p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [\"Returns time-bucketed counts of episodes mentioning an entity, plus per-bucket mention line and distinct podcast counts and range totals — the aggregate twin of \", _jsx(_components.code, {\n children: \"/v1/podcasts/mentions\"\n }), \". For windows the search can fully enumerate, bucket counts match what it returns: mentions inside ad reads are excluded by default (pass \", _jsx(_components.code, {\n children: \"include_ads=true\"\n }), \" to count them), so use this for mention trend charts instead of paging the search once per period. Buckets are UTC-aligned, zero-filled, and Monday-aligned for weeks; a bucket the window cuts through, such as the current week of a window running to now, is marked \", _jsx(_components.code, {\n children: \"partial\"\n }), \", so compare full buckets with each other. Requires entity_id or company_id. Omitting since aggregates all time. Ranges are capped at 1000 buckets.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"For which podcasts carried the mentions, compared with the period before, use \", _jsx(_components.code, {\n children: \"/v1/podcasts/mentions/by-podcast\"\n }), \". For appearance trends by speaker role across episode-level filters (language, duration, keyword_search) use \", _jsx(_components.code, {\n children: \"/v1/podcasts/episodes/timeseries\"\n }), \" instead; its \", _jsx(_components.code, {\n children: \"role=mention\"\n }), \" counts include ad reads.\"]\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":"Get mention timeseries","description":"Returns time-bucketed counts of episodes mentioning an entity, plus per-bucket mention line and distinct podcast counts and range totals — the aggregate twin of `/v1/podcasts/mentions`. For windows the search can fully enumerate, bucket counts match what it returns: mentions inside ad reads are excluded by default (pass `include_ads=true` to count them), so use this for mention trend charts instead of paging the search once per period. Buckets are UTC-aligned, zero-filled, and Monday-aligned for weeks; a bucket the window cuts through, such as the current week of a window running to now, is marked `partial`, so compare full buckets with each other. Requires entity_id or company_id. Omitting since aggregates all time. Ranges are capped at 1000 buckets.\n\nFor which podcasts carried the mentions, compared with the period before, use `/v1/podcasts/mentions/by-podcast`. For appearance trends by speaker role across episode-level filters (language, duration, keyword_search) use `/v1/podcasts/episodes/timeseries` instead; its `role=mention` counts include ad reads.","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/mentions/timeseries","href":"/api-reference/podcast-episode-search/get-mention-timeseries","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"Returns time-bucketed counts of episodes mentioning an entity, plus per-bucket mention line and distinct podcast counts and range totals — the aggregate twin of `/v1/podcasts/mentions`. For windows the search can fully enumerate, bucket counts match what it returns: mentions inside ad reads are excluded by default (pass `include_ads=true` to count them), so use this for mention trend charts instead of paging the search once per period. Buckets are UTC-aligned, zero-filled, and Monday-aligned for weeks; a bucket the window cuts through, such as the current week of a window running to now, is marked `partial`, so compare full buckets with each other. Requires entity_id or company_id. Omitting since aggregates all time. Ranges are capped at 1000 buckets.\n\nFor which podcasts carried the mentions, compared with the period before, use `/v1/podcasts/mentions/by-podcast`. For appearance trends by speaker role across episode-level filters (language, duration, keyword_search) use `/v1/podcasts/episodes/timeseries` instead; its `role=mention` counts include ad reads.","operationId":"get-mentions-timeseries","parameters":["e69a8f40-a0b4-4e95-a237-28f521024e71","1af4d8fb-d63a-4917-b34c-e5a2bcf002d0","8a0b8221-ced2-4d52-ba2a-2dc90519ee55","0909017b-9721-4979-b031-25b5c1221567","2d7fd58c-61c9-4e01-987b-041389378b99","6fc13f23-d59a-4d86-b8b8-a6c43bb3e463","d0c6075a-49d1-42fe-a00c-1d6c2ed68b95","5b562975-79f3-44ea-ab11-e3b8f909be12","52d32547-02e6-4d54-81da-c9ccfb2e5ae4","891e4650-d2f4-4f2a-8a40-806a22d4e1af","0f026627-e8a0-4532-a990-480049c777d1","7b5e2078-8a54-4b1c-87a3-bc8ae7cedacf","f5800edb-ec99-4dbd-8c4d-c109abbf0275","76cc86ce-9a84-4d72-a0cf-ecbfb983b68b","1788611e-9da3-41a5-b9cb-449f2ba6b289","a3635c99-4ef9-4c54-beaa-d56b4b894735","2d5d5039-26e3-4631-9407-cca9c3d0aa1f","b598f2cb-0df5-4322-ad89-1b7c9705d96c","e39a161d-cdb7-49aa-8770-f18d420ba7bf","91f6351b-bccf-465b-bf59-3280d7e5ea42","f7f00f6f-82f2-48dd-9fd5-174faf5da90d"],"responses":{"200":"a94122b3-e608-4259-8e21-a718c6043029","402":"9d4bb04b-d59a-4b35-991d-c98a54bf048f","default":"c2a77b8e-dff1-4c47-90cc-8f78bb38ee07"},"summary":"Get mention timeseries","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/mentions/timeseries?interval=week\""},{"label":"Particle CLI","lang":"bash","source":"# Install: https://cli.particle.pro\nparticle mention timeseries \u003centity_id>"}],"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":"none","x-payment-info":{"price":{"amount":"0.040000","currency":"USD","mode":"fixed"},"protocols":[{"x402":{}}]},"x-tier":"standard","method":"get","type":"path","servers":["6dbe0349-95b8-43f6-b3fc-fb66ef94d829"],"security":["1a2e3390-a952-44ec-b907-4378c37a154b","737660e8-6f8a-4563-a1dd-adc10f938737"],"path":"/v1/podcasts/mentions/timeseries","baseUrlOptions":["https://api.particle.pro"],"title":"Get mention timeseries","codeSamples":[{"label":"cURL","lang":"curl","source":"curl -H \"X-API-Key: $PARTICLE_API_KEY\" \\\n \"https://api.particle.pro/v1/podcasts/mentions/timeseries?interval=week\""},{"label":"Particle CLI","lang":"bash","source":"# Install: https://cli.particle.pro\nparticle mention timeseries \u003centity_id>"}],"requestExampleLanguages":["bash","bash"],"requiredOnlyExamples":false,"disableCodeSampleGeneration":true,"requestExampleType":"codeSamples","responseExampleType":"generated"},"dependencies":{"parameters":{"e69a8f40-a0b4-4e95-a237-28f521024e71":{"description":"Entity slug (e.g., 'sam-altman') or ID. Required when company_id is not set.","explode":false,"in":"query","name":"entity_id","schema":{"description":"Entity slug (e.g., 'sam-altman') or ID. Required when company_id is not set.","type":"string","uniqueKey":"","typeLabel":"string"}},"1af4d8fb-d63a-4917-b34c-e5a2bcf002d0":{"description":"Company slug, domain, or ID. Required when entity_id is not set. Resolves to the company's linked entity.","explode":false,"in":"query","name":"company_id","schema":{"description":"Company slug, domain, or ID. Required when entity_id is not set. Resolves to the company's linked entity.","type":"string","uniqueKey":"","typeLabel":"string"}},"8a0b8221-ced2-4d52-ba2a-2dc90519ee55":{"description":"Restrict to mentions on podcasts attributed to one publisher (network), by slug or ID.","explode":false,"in":"query","name":"publisher_id","schema":{"description":"Restrict to mentions on podcasts attributed to one publisher (network), by slug or ID.","type":"string","uniqueKey":"","typeLabel":"string"}},"0909017b-9721-4979-b031-25b5c1221567":{"description":"Constrain how the entity participates: guest, host, panelist, correspondent, or mention.","explode":false,"in":"query","name":"role","schema":{"description":"Constrain how the entity participates: guest, host, panelist, correspondent, or mention.","enum":["guest","host","panelist","correspondent","mention"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"2d7fd58c-61c9-4e01-987b-041389378b99":{"description":"Mentions inside ad reads (sponsor ad segments, or lines spoken by an advertiser) are excluded by default. Pass true to include them.","explode":false,"in":"query","name":"include_ads","schema":{"description":"Mentions inside ad reads (sponsor ad segments, or lines spoken by an advertiser) are excluded by default. Pass true to include them.","type":"boolean","uniqueKey":"","typeLabel":"boolean"}},"6fc13f23-d59a-4d86-b8b8-a6c43bb3e463":{"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"}},"d0c6075a-49d1-42fe-a00c-1d6c2ed68b95":{"description":"Only mentions spoken by 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 mentions spoken by 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"}},"5b562975-79f3-44ea-ab11-e3b8f909be12":{"description":"Only mentions spoken by a guest listed under this ANZSRC 2020 field of research (code, slug, or title).","explode":false,"in":"query","name":"guest_field","schema":{"description":"Only mentions spoken by a guest listed under this ANZSRC 2020 field of research (code, slug, or title).","maxLength":200,"type":"string","uniqueKey":"","typeLabel":"string"}},"52d32547-02e6-4d54-81da-c9ccfb2e5ae4":{"description":"Only mentions spoken by a guest whose standing is recognized this way.","explode":false,"in":"query","name":"guest_standing","schema":{"description":"Only mentions spoken by a guest whose standing is recognized this way.","enum":["established","self_described","unverified"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"891e4650-d2f4-4f2a-8a40-806a22d4e1af":{"description":"Only mentions spoken by a guest at this seniority or above.","explode":false,"in":"query","name":"guest_seniority","schema":{"description":"Only mentions spoken by a guest at this seniority or above.","enum":["professional","senior","distinguished"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"0f026627-e8a0-4532-a990-480049c777d1":{"description":"Only mentions spoken by 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 mentions spoken by 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>"}},"7b5e2078-8a54-4b1c-87a3-bc8ae7cedacf":{"description":"Only mentions spoken by a guest who still works in guest_occupation, a SOC 2018 occupation or group.","explode":false,"in":"query","name":"guest_practicing","schema":{"description":"Only mentions spoken by a guest who still works in guest_occupation, a SOC 2018 occupation or group.","type":"boolean","uniqueKey":"","typeLabel":"boolean"}},"f5800edb-ec99-4dbd-8c4d-c109abbf0275":{"description":"Only mentions spoken by 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 mentions spoken by a guest speaking within their field (the guest the other guest_ filters select, when given).","type":"boolean","uniqueKey":"","typeLabel":"boolean"}},"76cc86ce-9a84-4d72-a0cf-ecbfb983b68b":{"description":"Restrict to mentions inside one podcast.","explode":false,"in":"query","name":"podcast_id","schema":{"description":"Restrict to mentions inside one podcast.","type":"string","uniqueKey":"","typeLabel":"string"}},"1788611e-9da3-41a5-b9cb-449f2ba6b289":{"description":"Only episodes published on or after this date. Omit to aggregate all time.","explode":false,"in":"query","name":"since","schema":{"description":"Only episodes published on or after this date. Omit to aggregate all time.","examples":["2026-01-01"],"type":"string","uniqueKey":"","typeLabel":"string"}},"a3635c99-4ef9-4c54-beaa-d56b4b894735":{"description":"Only episodes published on or before this date. Defaults to now.","explode":false,"in":"query","name":"until","schema":{"description":"Only episodes published on or before this date. Defaults to now.","examples":["2026-06-01"],"type":"string","uniqueKey":"","typeLabel":"string"}},"2d5d5039-26e3-4631-9407-cca9c3d0aa1f":{"deprecated":true,"description":"Deprecated alias of since.","explode":false,"in":"query","name":"published_after","schema":{"deprecated":true,"description":"Deprecated alias of since.","type":"string","uniqueKey":"","typeLabel":"string"}},"b598f2cb-0df5-4322-ad89-1b7c9705d96c":{"deprecated":true,"description":"Deprecated alias of until.","explode":false,"in":"query","name":"published_before","schema":{"deprecated":true,"description":"Deprecated alias of until.","type":"string","uniqueKey":"","typeLabel":"string"}},"e39a161d-cdb7-49aa-8770-f18d420ba7bf":{"description":"Bucket width.","explode":false,"in":"query","name":"interval","schema":{"default":"week","description":"Bucket width.","enum":["day","week","month"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"91f6351b-bccf-465b-bf59-3280d7e5ea42":{"description":"Also split each bucket's mentions by their label on this speaker statement characteristics axis: breakdown=sentiment is whether the subject is spoken of more negatively over time. Each bucket's label shares are of its scored_mentions, the mentions that carry the labels, and a bucket with fewer than 20 is low_sample. Mention counts are unchanged. Requires since, and the range may span at most 365 days.","explode":false,"in":"query","name":"breakdown","schema":{"description":"Also split each bucket's mentions by their label on this speaker statement characteristics axis: breakdown=sentiment is whether the subject is spoken of more negatively over time. Each bucket's label shares are of its scored_mentions, the mentions that carry the labels, and a bucket with fewer than 20 is low_sample. Mention counts are unchanged. Requires since, and the range may span at most 365 days.","enum":["sentiment","certainty","specificity","temporal_orientation"],"type":"string","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"f7f00f6f-82f2-48dd-9fd5-174faf5da90d":{"description":"Count only mentions said a certain way: speaker_statement_characteristics[temporal_orientation]=future charts predictions about the subject over time. 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. An episode counts only when one of its mentions is said that way, and lines without the labels are not counted. Requires since, and the range may span at most 365 days.","explode":true,"in":"query","name":"speaker_statement_characteristics","schema":{"description":"Count only mentions said a certain way: speaker_statement_characteristics[temporal_orientation]=future charts predictions about the subject over time. 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. An episode counts only when one of its mentions is said that way, and lines without the labels are not counted. Requires since, and the range may span at most 365 days.","properties":{"certainty":{"description":"The certainty labels to keep: hedged, neutral, confident. Comma-separate labels to accept any of them (hedged,confident); repeating the key accepts any of its values too.","examples":["confident","hedged,confident"],"type":"string","uniqueKey":"certainty","typeLabel":"string"},"sentiment":{"description":"The sentiment labels to keep: negative, neutral, positive. Comma-separate labels to accept any of them (negative,positive); repeating the key accepts any of its values too.","examples":["positive","negative,positive"],"type":"string","uniqueKey":"sentiment","typeLabel":"string"},"specificity":{"description":"The specificity labels to keep: vague, neutral, specific. Comma-separate labels to accept any of them (vague,specific); repeating the key accepts any of its values too.","examples":["specific","vague,specific"],"type":"string","uniqueKey":"specificity","typeLabel":"string"},"temporal_orientation":{"description":"The temporal_orientation labels to keep: past, present, future. Comma-separate labels to accept any of them (past,future); repeating the key accepts any of its values too.","examples":["future","past,future"],"type":"string","uniqueKey":"temporal_orientation","typeLabel":"string"}},"type":"object","uniqueKey":"","typeLabel":"object"},"style":"deepObject"}},"responses":{"a94122b3-e608-4259-8e21-a718c6043029":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"buckets":{"oneOf":[{"description":"Contiguous zero-filled buckets in ascending order","items":{"additionalProperties":false,"properties":{"episode_count":{"description":"Episodes with at least one counted mention in this bucket","format":"int64","type":"integer","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].episode_count","typeLabel":"integer\u003cint64>"},"mention_count":{"description":"Counted mention lines in this bucket","format":"int64","type":"integer","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].mention_count","typeLabel":"integer\u003cint64>"},"podcast_count":{"description":"Distinct podcasts those episodes aired on: how many shows carried the subject in this bucket","format":"int64","type":"integer","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].podcast_count","typeLabel":"integer\u003cint64>"},"start":{"description":"Bucket start as a UTC date","type":"string","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].start","typeLabel":"string"},"breakdown":{"oneOf":[{"description":"With breakdown, the bucket's scored mentions by their label on that axis, one entry per label in the axis's order.","items":{"additionalProperties":false,"properties":{"label":{"description":"The label on the breakdown axis.","type":"string","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].label","typeLabel":"string"},"mentions":{"description":"The scored mentions with the label, of the group or bucket it is in.","format":"int64","type":"integer","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].mentions","typeLabel":"integer\u003cint64>"},"share":{"description":"mentions over the scored_mentions of the group or bucket it is in (0-1).","format":"double","type":"number","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].share","typeLabel":"number\u003cdouble>"},"examples":{"oneOf":[{"description":"With examples, up to that many of the group's lines with this label, strongest first: the lines that most clearly carry it. Ties go to the newest. At most one per episode, and from different speakers unless too few spoke.","items":{"additionalProperties":false,"properties":{"episode":{"additionalProperties":false,"properties":{"id":{"description":"Episode ID","type":"string","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.id","typeLabel":"string"},"title":{"description":"Episode title","type":"string","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.title","typeLabel":"string"},"podcast":{"additionalProperties":false,"properties":{"id":{"description":"Podcast ID","type":"string","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.podcast.id","typeLabel":"string"},"title":{"description":"Podcast title","type":"string","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.podcast.title","typeLabel":"string"},"best_rank":{"additionalProperties":false,"properties":{"captured_at":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.podcast.best_rank.captured_at","typeLabel":"string\u003cdate-time>"},"chart_type":{"enum":["top_podcasts"],"type":"string","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.podcast.best_rank.chart_type","typeLabel":"enum\u003cstring>"},"rank":{"format":"int64","type":"integer","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.podcast.best_rank.rank","typeLabel":"integer\u003cint64>"},"source":{"enum":["apple","spotify"],"type":"string","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.podcast.best_rank.source","typeLabel":"enum\u003cstring>"},"category_slug":{"type":"string","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.podcast.best_rank.category_slug","typeLabel":"string"},"country":{"type":"string","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.podcast.best_rank","typeLabel":"object"},"image_url":{"description":"Cover image URL","type":"string","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.podcast.popularity","typeLabel":"number\u003cdouble>"},"publisher":{"additionalProperties":false,"properties":{"id":{"description":"Publisher ID","type":"string","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.podcast.publisher.id","typeLabel":"string"},"name":{"description":"Publisher name","type":"string","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.podcast.publisher","typeLabel":"object"},"slug":{"description":"Human-readable slug identifier","type":"string","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.podcast.slug","typeLabel":"string"}},"required":["id","title"],"type":"object","description":"Parent podcast","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.podcast","typeLabel":"object"},"published_at":{"description":"Publication date","format":"date-time","type":"string","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.published_at","typeLabel":"string\u003cdate-time>"},"slug":{"description":"Human-readable slug identifier","type":"string","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode.web_url","typeLabel":"string"}},"required":["id","title"],"type":"object","description":"Episode the line was said in.","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].episode","typeLabel":"object"},"line":{"additionalProperties":false,"properties":{"end_seconds":{"description":"End time in seconds (episode-absolute)","format":"double","type":"number","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.end_seconds","typeLabel":"number\u003cdouble>"},"number":{"description":"Line number within the episode (1-indexed)","format":"int64","type":"integer","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.number","typeLabel":"integer\u003cint64>"},"speaker":{"description":"Speaker name or label","type":"string","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.speaker","typeLabel":"string"},"start_seconds":{"description":"Start time in seconds (episode-absolute)","format":"double","type":"number","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.start_seconds","typeLabel":"number\u003cdouble>"},"text":{"description":"Spoken text","type":"string","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.matched_terms.oneOf.0.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.matched_terms.oneOf.1","typeLabel":"null"}],"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.matched_terms","typeLabel":"string[] | null"},"role":{"description":"Speaker role (HOST, GUEST, etc.)","type":"string","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line.speaker_statement_characteristics","typeLabel":"object"}},"required":["number","speaker","start_seconds","end_seconds","text"],"type":"object","description":"The line: its text, speaker and times, with is_mention set and its speaker_statement_characteristics when it has been read.","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].line","typeLabel":"object"},"start_seconds":{"description":"When the line starts, in seconds (episode-absolute).","format":"double","type":"number","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].start_seconds","typeLabel":"number\u003cdouble>"},"person":{"additionalProperties":false,"properties":{"id":{"description":"Encoded Person identifier","type":"string","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].person.id","typeLabel":"string"},"name":{"description":"Display name","type":"string","isRequired":true,"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].person.name","typeLabel":"string"},"description":{"description":"Short description (e.g. current role), when known.","type":"string","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].person.description","typeLabel":"string"},"image_url":{"description":"Canonical headshot URL when one is known for the Person","type":"string","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.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":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].person.slug","typeLabel":"string"}},"required":["id","name"],"type":"object","description":"The person who said it.","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].person","typeLabel":"object"},"url":{"description":"Moment link that plays the line on Radar: the episode's web_url with ?t= at start_seconds.","type":"string","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX].url","typeLabel":"string"}},"required":["episode","start_seconds","line"],"type":"object","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.0","typeLabel":"object[]"},{"description":"With examples, up to that many of the group's lines with this label, strongest first: the lines that most clearly carry it. Ties go to the newest. At most one per episode, and from different speakers unless too few spoke.","items":{"additionalProperties":false,"properties":{"episode":{"additionalProperties":false,"properties":{"id":{"description":"Episode ID","type":"string"},"podcast":{"additionalProperties":false,"properties":{"best_rank":{"additionalProperties":false,"properties":{"captured_at":{"format":"date-time","type":"string"},"category_slug":{"type":"string"},"chart_type":{"enum":["top_podcasts"],"type":"string"},"country":{"type":"string"},"rank":{"format":"int64","type":"integer"},"source":{"enum":["apple","spotify"],"type":"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."},"id":{"description":"Podcast ID","type":"string"},"image_url":{"description":"Cover image URL","type":"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"},"publisher":{"additionalProperties":false,"properties":{"id":{"description":"Publisher ID","type":"string"},"name":{"description":"Publisher name","type":"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"}},"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."},"slug":{"description":"Human-readable slug identifier","type":"string"},"title":{"description":"Podcast title","type":"string"}},"required":["id","title"],"type":"object","description":"Parent podcast"},"published_at":{"description":"Publication date","format":"date-time","type":"string"},"slug":{"description":"Human-readable slug identifier","type":"string"},"title":{"description":"Episode title","type":"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"}},"required":["id","title"],"type":"object","description":"Episode the line was said in."},"line":{"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","description":"The line: its text, speaker and times, with is_mention set and its speaker_statement_characteristics when it has been read."},"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":"The person who said it."},"start_seconds":{"description":"When the line starts, in seconds (episode-absolute).","format":"double","type":"number"},"url":{"description":"Moment link that plays the line on Radar: the episode's web_url with ?t= at start_seconds.","type":"string"}},"required":["episode","start_seconds","line"],"type":"object"},"type":"null","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples.oneOf.1","typeLabel":"null"}],"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX].examples","typeLabel":"object[] | null"}},"required":["label","mentions","share"],"type":"object","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.0","typeLabel":"object[]"},{"description":"With breakdown, the bucket's scored mentions by their label on that axis, one entry per label in the axis's order.","items":{"additionalProperties":false,"properties":{"examples":{"oneOf":[{"description":"With examples, up to that many of the group's lines with this label, strongest first: the lines that most clearly carry it. Ties go to the newest. At most one per episode, and from different speakers unless too few spoke.","items":{"additionalProperties":false,"properties":{"episode":{"additionalProperties":false,"properties":{"id":{"description":"Episode ID","type":"string"},"podcast":{"additionalProperties":false,"properties":{"best_rank":{"additionalProperties":false,"properties":{"captured_at":{"format":"date-time","type":"string"},"category_slug":{"type":"string"},"chart_type":{"enum":["top_podcasts"],"type":"string"},"country":{"type":"string"},"rank":{"format":"int64","type":"integer"},"source":{"enum":["apple","spotify"],"type":"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."},"id":{"description":"Podcast ID","type":"string"},"image_url":{"description":"Cover image URL","type":"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"},"publisher":{"additionalProperties":false,"properties":{"id":{"description":"Publisher ID","type":"string"},"name":{"description":"Publisher name","type":"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"}},"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."},"slug":{"description":"Human-readable slug identifier","type":"string"},"title":{"description":"Podcast title","type":"string"}},"required":["id","title"],"type":"object","description":"Parent podcast"},"published_at":{"description":"Publication date","format":"date-time","type":"string"},"slug":{"description":"Human-readable slug identifier","type":"string"},"title":{"description":"Episode title","type":"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"}},"required":["id","title"],"type":"object","description":"Episode the line was said in."},"line":{"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","description":"The line: its text, speaker and times, with is_mention set and its speaker_statement_characteristics when it has been read."},"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":"The person who said it."},"start_seconds":{"description":"When the line starts, in seconds (episode-absolute).","format":"double","type":"number"},"url":{"description":"Moment link that plays the line on Radar: the episode's web_url with ?t= at start_seconds.","type":"string"}},"required":["episode","start_seconds","line"],"type":"object"},"type":"array"},{"description":"With examples, up to that many of the group's lines with this label, strongest first: the lines that most clearly carry it. Ties go to the newest. At most one per episode, and from different speakers unless too few spoke.","items":{"additionalProperties":false,"properties":{"episode":{"additionalProperties":false,"properties":{"id":{"description":"Episode ID","type":"string"},"podcast":{"additionalProperties":false,"properties":{"best_rank":{"additionalProperties":false,"properties":{"captured_at":{"format":"date-time","type":"string"},"category_slug":{"type":"string"},"chart_type":{"enum":["top_podcasts"],"type":"string"},"country":{"type":"string"},"rank":{"format":"int64","type":"integer"},"source":{"enum":["apple","spotify"],"type":"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."},"id":{"description":"Podcast ID","type":"string"},"image_url":{"description":"Cover image URL","type":"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"},"publisher":{"additionalProperties":false,"properties":{"id":{"description":"Publisher ID","type":"string"},"name":{"description":"Publisher name","type":"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"}},"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."},"slug":{"description":"Human-readable slug identifier","type":"string"},"title":{"description":"Podcast title","type":"string"}},"required":["id","title"],"type":"object","description":"Parent podcast"},"published_at":{"description":"Publication date","format":"date-time","type":"string"},"slug":{"description":"Human-readable slug identifier","type":"string"},"title":{"description":"Episode title","type":"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"}},"required":["id","title"],"type":"object","description":"Episode the line was said in."},"line":{"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","description":"The line: its text, speaker and times, with is_mention set and its speaker_statement_characteristics when it has been read."},"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":"The person who said it."},"start_seconds":{"description":"When the line starts, in seconds (episode-absolute).","format":"double","type":"number"},"url":{"description":"Moment link that plays the line on Radar: the episode's web_url with ?t= at start_seconds.","type":"string"}},"required":["episode","start_seconds","line"],"type":"object"},"type":"null"}]},"label":{"description":"The label on the breakdown axis.","type":"string"},"mentions":{"description":"The scored mentions with the label, of the group or bucket it is in.","format":"int64","type":"integer"},"share":{"description":"mentions over the scored_mentions of the group or bucket it is in (0-1).","format":"double","type":"number"}},"required":["label","mentions","share"],"type":"object"},"type":"null","uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown.oneOf.1","typeLabel":"null"}],"uniqueKey":"buckets.oneOf.0.items.[INDEX].breakdown","typeLabel":"object[] | null"},"low_sample":{"description":"With breakdown, fewer than 20 scored mentions stand behind the bucket's label shares. Read them as examples, not as a distribution.","type":"boolean","uniqueKey":"buckets.oneOf.0.items.[INDEX].low_sample","typeLabel":"boolean"},"partial":{"description":"True when the window cuts through this bucket, so it covers less than a full interval: the first bucket when since falls inside it, and the last when until does, as it does for a window that runs to now. Compare full buckets with each other.","type":"boolean","uniqueKey":"buckets.oneOf.0.items.[INDEX].partial","typeLabel":"boolean"},"scored_mentions":{"description":"With breakdown, the bucket's mentions that carry speaker statement characteristics: its breakdown's shares are of these. Read from each mention line, so it can differ slightly from mention_count.","format":"int64","type":"integer","uniqueKey":"buckets.oneOf.0.items.[INDEX].scored_mentions","typeLabel":"integer\u003cint64>"}},"required":["start","episode_count","mention_count","podcast_count"],"type":"object","uniqueKey":"buckets.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"buckets.oneOf.0","typeLabel":"object[]"},{"description":"Contiguous zero-filled buckets in ascending order","items":{"additionalProperties":false,"properties":{"breakdown":{"oneOf":[{"description":"With breakdown, the bucket's scored mentions by their label on that axis, one entry per label in the axis's order.","items":{"additionalProperties":false,"properties":{"examples":{"oneOf":[{"description":"With examples, up to that many of the group's lines with this label, strongest first: the lines that most clearly carry it. Ties go to the newest. At most one per episode, and from different speakers unless too few spoke.","items":{"additionalProperties":false,"properties":{"episode":{"additionalProperties":false,"properties":{"id":{"description":"Episode ID","type":"string"},"podcast":{"additionalProperties":false,"properties":{"best_rank":{"additionalProperties":false,"properties":{"captured_at":{"format":"date-time","type":"string"},"category_slug":{"type":"string"},"chart_type":{"enum":["top_podcasts"],"type":"string"},"country":{"type":"string"},"rank":{"format":"int64","type":"integer"},"source":{"enum":["apple","spotify"],"type":"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."},"id":{"description":"Podcast ID","type":"string"},"image_url":{"description":"Cover image URL","type":"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"},"publisher":{"additionalProperties":false,"properties":{"id":{"description":"Publisher ID","type":"string"},"name":{"description":"Publisher name","type":"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"}},"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."},"slug":{"description":"Human-readable slug identifier","type":"string"},"title":{"description":"Podcast title","type":"string"}},"required":["id","title"],"type":"object","description":"Parent podcast"},"published_at":{"description":"Publication date","format":"date-time","type":"string"},"slug":{"description":"Human-readable slug identifier","type":"string"},"title":{"description":"Episode title","type":"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"}},"required":["id","title"],"type":"object","description":"Episode the line was said in."},"line":{"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","description":"The line: its text, speaker and times, with is_mention set and its speaker_statement_characteristics when it has been read."},"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":"The person who said it."},"start_seconds":{"description":"When the line starts, in seconds (episode-absolute).","format":"double","type":"number"},"url":{"description":"Moment link that plays the line on Radar: the episode's web_url with ?t= at start_seconds.","type":"string"}},"required":["episode","start_seconds","line"],"type":"object"},"type":"array"},{"description":"With examples, up to that many of the group's lines with this label, strongest first: the lines that most clearly carry it. Ties go to the newest. At most one per episode, and from different speakers unless too few spoke.","items":{"additionalProperties":false,"properties":{"episode":{"additionalProperties":false,"properties":{"id":{"description":"Episode ID","type":"string"},"podcast":{"additionalProperties":false,"properties":{"best_rank":{"additionalProperties":false,"properties":{"captured_at":{"format":"date-time","type":"string"},"category_slug":{"type":"string"},"chart_type":{"enum":["top_podcasts"],"type":"string"},"country":{"type":"string"},"rank":{"format":"int64","type":"integer"},"source":{"enum":["apple","spotify"],"type":"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."},"id":{"description":"Podcast ID","type":"string"},"image_url":{"description":"Cover image URL","type":"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"},"publisher":{"additionalProperties":false,"properties":{"id":{"description":"Publisher ID","type":"string"},"name":{"description":"Publisher name","type":"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"}},"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."},"slug":{"description":"Human-readable slug identifier","type":"string"},"title":{"description":"Podcast title","type":"string"}},"required":["id","title"],"type":"object","description":"Parent podcast"},"published_at":{"description":"Publication date","format":"date-time","type":"string"},"slug":{"description":"Human-readable slug identifier","type":"string"},"title":{"description":"Episode title","type":"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"}},"required":["id","title"],"type":"object","description":"Episode the line was said in."},"line":{"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","description":"The line: its text, speaker and times, with is_mention set and its speaker_statement_characteristics when it has been read."},"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":"The person who said it."},"start_seconds":{"description":"When the line starts, in seconds (episode-absolute).","format":"double","type":"number"},"url":{"description":"Moment link that plays the line on Radar: the episode's web_url with ?t= at start_seconds.","type":"string"}},"required":["episode","start_seconds","line"],"type":"object"},"type":"null"}]},"label":{"description":"The label on the breakdown axis.","type":"string"},"mentions":{"description":"The scored mentions with the label, of the group or bucket it is in.","format":"int64","type":"integer"},"share":{"description":"mentions over the scored_mentions of the group or bucket it is in (0-1).","format":"double","type":"number"}},"required":["label","mentions","share"],"type":"object"},"type":"array"},{"description":"With breakdown, the bucket's scored mentions by their label on that axis, one entry per label in the axis's order.","items":{"additionalProperties":false,"properties":{"examples":{"oneOf":[{"description":"With examples, up to that many of the group's lines with this label, strongest first: the lines that most clearly carry it. Ties go to the newest. At most one per episode, and from different speakers unless too few spoke.","items":{"additionalProperties":false,"properties":{"episode":{"additionalProperties":false,"properties":{"id":{"description":"Episode ID","type":"string"},"podcast":{"additionalProperties":false,"properties":{"best_rank":{"additionalProperties":false,"properties":{"captured_at":{"format":"date-time","type":"string"},"category_slug":{"type":"string"},"chart_type":{"enum":["top_podcasts"],"type":"string"},"country":{"type":"string"},"rank":{"format":"int64","type":"integer"},"source":{"enum":["apple","spotify"],"type":"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."},"id":{"description":"Podcast ID","type":"string"},"image_url":{"description":"Cover image URL","type":"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"},"publisher":{"additionalProperties":false,"properties":{"id":{"description":"Publisher ID","type":"string"},"name":{"description":"Publisher name","type":"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"}},"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."},"slug":{"description":"Human-readable slug identifier","type":"string"},"title":{"description":"Podcast title","type":"string"}},"required":["id","title"],"type":"object","description":"Parent podcast"},"published_at":{"description":"Publication date","format":"date-time","type":"string"},"slug":{"description":"Human-readable slug identifier","type":"string"},"title":{"description":"Episode title","type":"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"}},"required":["id","title"],"type":"object","description":"Episode the line was said in."},"line":{"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","description":"The line: its text, speaker and times, with is_mention set and its speaker_statement_characteristics when it has been read."},"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":"The person who said it."},"start_seconds":{"description":"When the line starts, in seconds (episode-absolute).","format":"double","type":"number"},"url":{"description":"Moment link that plays the line on Radar: the episode's web_url with ?t= at start_seconds.","type":"string"}},"required":["episode","start_seconds","line"],"type":"object"},"type":"array"},{"description":"With examples, up to that many of the group's lines with this label, strongest first: the lines that most clearly carry it. Ties go to the newest. At most one per episode, and from different speakers unless too few spoke.","items":{"additionalProperties":false,"properties":{"episode":{"additionalProperties":false,"properties":{"id":{"description":"Episode ID","type":"string"},"podcast":{"additionalProperties":false,"properties":{"best_rank":{"additionalProperties":false,"properties":{"captured_at":{"format":"date-time","type":"string"},"category_slug":{"type":"string"},"chart_type":{"enum":["top_podcasts"],"type":"string"},"country":{"type":"string"},"rank":{"format":"int64","type":"integer"},"source":{"enum":["apple","spotify"],"type":"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."},"id":{"description":"Podcast ID","type":"string"},"image_url":{"description":"Cover image URL","type":"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"},"publisher":{"additionalProperties":false,"properties":{"id":{"description":"Publisher ID","type":"string"},"name":{"description":"Publisher name","type":"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"}},"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."},"slug":{"description":"Human-readable slug identifier","type":"string"},"title":{"description":"Podcast title","type":"string"}},"required":["id","title"],"type":"object","description":"Parent podcast"},"published_at":{"description":"Publication date","format":"date-time","type":"string"},"slug":{"description":"Human-readable slug identifier","type":"string"},"title":{"description":"Episode title","type":"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"}},"required":["id","title"],"type":"object","description":"Episode the line was said in."},"line":{"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","description":"The line: its text, speaker and times, with is_mention set and its speaker_statement_characteristics when it has been read."},"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":"The person who said it."},"start_seconds":{"description":"When the line starts, in seconds (episode-absolute).","format":"double","type":"number"},"url":{"description":"Moment link that plays the line on Radar: the episode's web_url with ?t= at start_seconds.","type":"string"}},"required":["episode","start_seconds","line"],"type":"object"},"type":"null"}]},"label":{"description":"The label on the breakdown axis.","type":"string"},"mentions":{"description":"The scored mentions with the label, of the group or bucket it is in.","format":"int64","type":"integer"},"share":{"description":"mentions over the scored_mentions of the group or bucket it is in (0-1).","format":"double","type":"number"}},"required":["label","mentions","share"],"type":"object"},"type":"null"}]},"episode_count":{"description":"Episodes with at least one counted mention in this bucket","format":"int64","type":"integer"},"low_sample":{"description":"With breakdown, fewer than 20 scored mentions stand behind the bucket's label shares. Read them as examples, not as a distribution.","type":"boolean"},"mention_count":{"description":"Counted mention lines in this bucket","format":"int64","type":"integer"},"partial":{"description":"True when the window cuts through this bucket, so it covers less than a full interval: the first bucket when since falls inside it, and the last when until does, as it does for a window that runs to now. Compare full buckets with each other.","type":"boolean"},"podcast_count":{"description":"Distinct podcasts those episodes aired on: how many shows carried the subject in this bucket","format":"int64","type":"integer"},"scored_mentions":{"description":"With breakdown, the bucket's mentions that carry speaker statement characteristics: its breakdown's shares are of these. Read from each mention line, so it can differ slightly from mention_count.","format":"int64","type":"integer"},"start":{"description":"Bucket start as a UTC date","type":"string"}},"required":["start","episode_count","mention_count","podcast_count"],"type":"object"},"type":"null","isRequired":true,"uniqueKey":"buckets.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"buckets","typeLabel":"object[] | null"},"distinct_podcasts":{"description":"Distinct podcasts those episodes aired on","format":"int64","type":"integer","isRequired":true,"uniqueKey":"distinct_podcasts","typeLabel":"integer\u003cint64>"},"interval":{"description":"Bucket width","enum":["day","week","month"],"type":"string","isRequired":true,"uniqueKey":"interval","typeLabel":"enum\u003cstring>"},"total_episodes":{"description":"Episodes with at least one counted mention in the range","format":"int64","type":"integer","isRequired":true,"uniqueKey":"total_episodes","typeLabel":"integer\u003cint64>"},"total_mentions":{"description":"Counted mention lines across those episodes","format":"int64","type":"integer","isRequired":true,"uniqueKey":"total_mentions","typeLabel":"integer\u003cint64>"},"breakdown":{"description":"The axis each bucket's mentions are split by, when breakdown was given.","enum":["sentiment","certainty","specificity","temporal_orientation"],"type":"string","uniqueKey":"breakdown","typeLabel":"enum\u003cstring>"},"characteristics_version":{"description":"Opaque version of the speaker statement characteristics the series read. Compare series only when it is equal. Absent when no line was read: a subject without a linked entity, or a podcast or publisher with no shows.","type":"string","uniqueKey":"characteristics_version","typeLabel":"string"},"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":"The resolved company, when company_id was used","uniqueKey":"company","typeLabel":"object"},"end":{"description":"UTC date of the range's exclusive upper bound. When the bound falls inside a day, such as the default of now, mentions on this date up to the bound are still counted.","type":"string","uniqueKey":"end","typeLabel":"string"},"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":"The resolved entity the counts are for","uniqueKey":"entity","typeLabel":"object"},"scored_mentions":{"description":"With breakdown or speaker_statement_characteristics, the mentions in the range that carry speaker statement characteristics. They are read from each mention line, while mention counts without speaker_statement_characteristics are the episodes' stored counts, so the two can differ slightly either way.","format":"int64","type":"integer","uniqueKey":"scored_mentions","typeLabel":"integer\u003cint64>"},"start":{"description":"Start of the first bucket as a UTC date","type":"string","uniqueKey":"start","typeLabel":"string"}},"required":["interval","total_episodes","total_mentions","distinct_podcasts","buckets"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"buckets":[{"episode_count":123,"mention_count":123,"podcast_count":123,"start":"\u003cstring>","breakdown":[{"label":"\u003cstring>","mentions":123,"share":123,"examples":[{"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>"},"line":{"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,"person":{"id":"\u003cstring>","name":"\u003cstring>","description":"\u003cstring>","image_url":"\u003cstring>","slug":"\u003cstring>"},"url":"\u003cstring>"}]}],"low_sample":true,"partial":true,"scored_mentions":123}],"distinct_podcasts":123,"interval":"day","total_episodes":123,"total_mentions":123,"breakdown":"sentiment","characteristics_version":"\u003cstring>","company":{"id":"\u003cstring>","name":"\u003cstring>","description":"\u003cstring>","domain":"\u003cstring>","image_url":"\u003cstring>","slug":"\u003cstring>","ticker":"\u003cstring>"},"end":"\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>"},"scored_mentions":123,"start":"\u003cstring>"}}},"exampleType":"generated"}},"description":"OK","exampleType":"generated"},"9d4bb04b-d59a-4b35-991d-c98a54bf048f":{"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.04 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); its resolve says how to obtain access, and no payment header is sent.","exampleType":"generated"},"c2a77b8e-dff1-4c47-90cc-8f78bb38ee07":{"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":{"1a2e3390-a952-44ec-b907-4378c37a154b":{"ApiKeyHeader":{"description":"Pass your API key in the X-API-Key header (recommended).","in":"header","name":"X-API-Key","type":"apiKey","scopes":[],"schemeName":"ApiKeyHeader"}},"737660e8-6f8a-4563-a1dd-adc10f938737":{"BearerAuth":{"description":"Pass your API key as a Bearer token in the Authorization header.","scheme":"bearer","type":"http","scopes":[],"schemeName":"BearerAuth"}}},"servers":{"6dbe0349-95b8-43f6-b3fc-fb66ef94d829":{"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":"Get mention timeseries - Particle API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-05T18:46:21.958Z","originalFileLocation":"api-reference/podcast-episode-search/get-mention-timeseries.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=\"Returns time-bucketed counts of episodes mentioning an entity, plus per-bucket mention line and distinct podcast counts and range totals — the aggregate twin of /v1/podcasts/mentions. For windows the search can fully enumerate, bucket counts match what it returns: mentions inside ad reads are excluded by default (pass include_ads=true to count them), so use this for mention trend charts instead of paging the search once per period. Buckets are UTC-aligned, zero-filled, and Monday-aligned for weeks; a bucket the window cuts through, such as the current week of a window running to now, is marked partial, so compare full buckets with each other. Requires entity_id or company_id. Omitting since aggregates all time. Ranges are capped at 1000 buckets. For which podcasts carried the mentions, compared with the period before, use /v1/podcasts/mentions/by-podcast. For appearance trends by speaker role across episode-level filters (language, duration, keyword_search) use /v1/podcasts/episodes/timeseries instead; its role=mention counts include ad reads.\">\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=\"Get mention timeseries - Particle API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Returns time-bucketed counts of episodes mentioning an entity, plus per-bucket mention line and distinct podcast counts and range totals — the aggregate twin of /v1/podcasts/mentions. For windows the search can fully enumerate, bucket counts match what it returns: mentions inside ad reads are excluded by default (pass include_ads=true to count them), so use this for mention trend charts instead of paging the search once per period. Buckets are UTC-aligned, zero-filled, and Monday-aligned for weeks; a bucket the window cuts through, such as the current week of a window running to now, is marked partial, so compare full buckets with each other. Requires entity_id or company_id. Omitting since aggregates all time. Ranges are capped at 1000 buckets. For which podcasts carried the mentions, compared with the period before, use /v1/podcasts/mentions/by-podcast. For appearance trends by speaker role across episode-level filters (language, duration, keyword_search) use /v1/podcasts/episodes/timeseries instead; its role=mention counts include ad reads.\">\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/get-mention-timeseries\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://particle-c40da4e2.mintlify.site/_mintlify/api/og/v2?division=Podcast+Episode+Search\u0026amp;title=Get+mention+timeseries\u0026amp;description=Returns+time-bucketed+counts+of+episodes+mentioning+an+entity%2C+plus+per-bucket+mention+line+and+distinct+podcast+counts+and+range+totals+%E2%80%94+the+aggregate+twin+of\u0026amp;theme=3212fce3c910338cc7951bbc\u0026amp;signature=c1cfd521c28270f32b3696d82218f73650032e023a4468eb9ba3de1ebad4bbd3\">\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=\"Get mention timeseries - Particle API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Returns time-bucketed counts of episodes mentioning an entity, plus per-bucket mention line and distinct podcast counts and range totals — the aggregate twin of /v1/podcasts/mentions. For windows the search can fully enumerate, bucket counts match what it returns: mentions inside ad reads are excluded by default (pass include_ads=true to count them), so use this for mention trend charts instead of paging the search once per period. Buckets are UTC-aligned, zero-filled, and Monday-aligned for weeks; a bucket the window cuts through, such as the current week of a window running to now, is marked partial, so compare full buckets with each other. Requires entity_id or company_id. Omitting since aggregates all time. Ranges are capped at 1000 buckets. For which podcasts carried the mentions, compared with the period before, use /v1/podcasts/mentions/by-podcast. For appearance trends by speaker role across episode-level filters (language, duration, keyword_search) use /v1/podcasts/episodes/timeseries instead; its role=mention counts include ad reads.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://particle-c40da4e2.mintlify.site/_mintlify/api/og/v2?division=Podcast+Episode+Search\u0026amp;title=Get+mention+timeseries\u0026amp;description=Returns+time-bucketed+counts+of+episodes+mentioning+an+entity%2C+plus+per-bucket+mention+line+and+distinct+podcast+counts+and+range+totals+%E2%80%94+the+aggregate+twin+of\u0026amp;theme=3212fce3c910338cc7951bbc\u0026amp;signature=c1cfd521c28270f32b3696d82218f73650032e023a4468eb9ba3de1ebad4bbd3\">\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/get-mention-timeseries\">\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/get-mention-timeseries.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/get-mention-timeseries#webpage\",\"url\":\"https://docs.particle.pro/api-reference/podcast-episode-search/get-mention-timeseries\",\"name\":\"Get mention timeseries\",\"description\":\"Returns time-bucketed counts of episodes mentioning an entity, plus per-bucket mention line and distinct podcast counts and range totals — the aggregate twin of /v1/podcasts/mentions. For windows the search can fully enumerate, bucket counts match what it returns: mentions inside ad reads are excluded by default (pass include_ads=true to count them), so use this for mention trend charts instead of paging the search once per period. Buckets are UTC-aligned, zero-filled, and Monday-aligned for weeks; a bucket the window cuts through, such as the current week of a window running to now, is marked partial, so compare full buckets with each other. Requires entity_id or company_id. Omitting since aggregates all time. Ranges are capped at 1000 buckets. For which podcasts carried the mentions, compared with the period before, use /v1/podcasts/mentions/by-podcast. For appearance trends by speaker role across episode-level filters (language, duration, keyword_search) use /v1/podcasts/episodes/timeseries instead; its role=mention counts include ad reads.\",\"dateModified\":\"2026-11-05T18:46:21.958Z\",\"isPartOf\":{\"@id\":\"https://docs.particle.pro#website\"},\"breadcrumb\":{\"@id\":\"https://docs.particle.pro/api-reference/podcast-episode-search/get-mention-timeseries#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.particle.pro/api-reference/podcast-episode-search/get-mention-timeseries#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Podcast Episode Search\",\"item\":\"https://docs.particle.pro/api-reference/podcast-episode-search/search-podcast-episode-content\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Get mention timeseries\",\"item\":\"https://docs.particle.pro/api-reference/podcast-episode-search/get-mention-timeseries\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.particle.pro/api-reference/podcast-episode-search/get-mention-timeseries#apireference\",\"headline\":\"Get mention timeseries\",\"name\":\"Get mention timeseries\",\"description\":\"Returns time-bucketed counts of episodes mentioning an entity, plus per-bucket mention line and distinct podcast counts and range totals — the aggregate twin of /v1/podcasts/mentions. For windows the search can fully enumerate, bucket counts match what it returns: mentions inside ad reads are excluded by default (pass include_ads=true to count them), so use this for mention trend charts instead of paging the search once per period. Buckets are UTC-aligned, zero-filled, and Monday-aligned for weeks; a bucket the window cuts through, such as the current week of a window running to now, is marked partial, so compare full buckets with each other. Requires entity_id or company_id. Omitting since aggregates all time. Ranges are capped at 1000 buckets. For which podcasts carried the mentions, compared with the period before, use /v1/podcasts/mentions/by-podcast. For appearance trends by speaker role across episode-level filters (language, duration, keyword_search) use /v1/podcasts/episodes/timeseries instead; its role=mention counts include ad reads.\",\"url\":\"https://docs.particle.pro/api-reference/podcast-episode-search/get-mention-timeseries\",\"mainEntityOfPage\":{\"@id\":\"https://docs.particle.pro/api-reference/podcast-episode-search/get-mention-timeseries#webpage\"},\"dateModified\":\"2026-11-05T18:46:21.958Z\",\"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"},{"title":"Get how a company's people speak","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/companies/{id}/statement-characteristics","href":"/api-reference/companies/get-how-a-companys-people-speak"}]},{"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":"Get how a Person speaks","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/people/{id}/statement-characteristics","href":"/api-reference/people/get-how-a-person-speaks"},{"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","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","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":"Compare how subjects are spoken of","description":"Sets two to five entities' or companies' share of voice by one speaker statement characteristics axis side by side, over the same window, speakers and filter: how NVIDIA is spoken of next to AMD and Intel. Each subject is exactly the split GET /v1/podcasts/mentions/share-of-voice returns for it with by set to the axis: one group per label, each a share of the subject's scored_mentions and flagged low_sample below 20. Subjects are returned in the order given. A subject that matches nothing, or a company with no linked entity, is a 422 naming it. by defaults to sentiment; breakdown splits each label group by a second axis. For which professions say it, use the share of voice with by=occupation, one subject at a time.","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/podcasts/mentions/share-of-voice/compare","href":"/api-reference/podcast-episode-search/compare-how-subjects-are-spoken-of"},{"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","description":"Returns the AI-identified segments for a specific episode in chronological order.","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"}]}]},"basePath":"","title":"Get mention timeseries - Particle API","buildId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","deploymentId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-C-hEh3I2.js","utils-CnF4QiUD.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-C7PVNbel.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-8ytevL2A.js","snippetPresets-BT1alx3v.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BLXC0i_W.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CyLIGI9_.js","shallow-DC0lGVIW.js","getApiPlaygroundDisplay-CgDQ85tN.js","CodeSnippet-6-I-Gpv9.js","CodeSnippets-BAk1kDdu.js","Page-C945cI-W.js","getPastedJson-B276RuWN.js","icon-BqP8etTm.js","MethodPill-DM6sbxG1.js","DuplicateIcon-PyJglOaE.js","createIcon-CMeOMAc_.js","DynamicMarkdown-BoyYAA8K.js","SectionHeading-DAYv3gvZ.js","axios-vUo_bRtp.js","Markdown-BhTTmazV.js","clsx-CR-RHrVC.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CBUH0-zX.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BmARFYNC.js"]}