Particle Podcast Compare Share Of Voice
particle_podcast_compare_share_of_voiceCompare how two to five companies, people or entities are spoken of on podcasts, side by side: "how is NVIDIA spoken of vs AMD vs Intel?" in one call. Each subject's mention lines over the same window (default the last 30 days, at most 365) are grouped by their label on one speaker statement characteristics axis — by="sentiment" (default), certainty, specificity or temporal_orientation — and each label's share is of that subject's scored mentions, the lines that carry labels. A subject with fewer than 20 is marked low sample: read its shares as examples. By default it counts guests' and panelists' lines; speakers="all" adds hosts.
Each subject is exactly what particle_podcast_get_share_of_voice returns for it with the same arguments and by set to the axis, so the numbers agree. breakdown splits each label group by a second axis (how sure each subject's predictions are is by="temporal_orientation", breakdown="certainty"); speaker_statement_characteristics counts only lines said a certain way; podcast_slug or publisher_slug narrows to one show or network.
Pass every subject in one list, in the order to show them: a subject that matches nothing, or has no knowledge-graph entity, is an error naming it, never a silent zero. Not for who says it by occupation (particle_podcast_get_share_of_voice, one subject at a time), for the lines themselves (particle_podcast_find_mentions with the same speaker_statement_characteristics), or for mention volume over time (particle_podcast_get_mention_trends).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| by | No | The axis whose labels each subject's lines are grouped by: 'sentiment' (default; how negatively or positively each is spoken of), 'certainty', 'specificity' or 'temporal_orientation'. | |
| speakers | No | Whose lines count: 'guests' (default; guests and panelists) or 'all' (hosts included). | |
| breakdown | No | Also split each label group by a second axis: by='temporal_orientation' with breakdown='certainty' is how sure each subject's predictions are. Must differ from by. | |
| include_ads | No | Count mentions inside ad reads too. Off by default: ad copy is not a speaker's voice. | |
| entity_slugs | No | Two to five knowledge-graph entity slugs from particle_entity_resolve for anything that isn't a person or company (e.g. ["germany", "france"]). | |
| person_slugs | No | Two to five person slugs from particle_person_resolve, in the order to compare them (e.g. ["sam-altman", "dario-amodei"]). | |
| podcast_slug | No | Only mentions inside this podcast (slug from particle_podcast_resolve). | |
| company_slugs | No | Two to five company slugs or domains from particle_company_resolve, in the order to compare them (e.g. ["nvidia", "amd", "intel"]). One of company_slugs, person_slugs or entity_slugs is required. | |
| output_format | No | Output serialization. 'markdown' (default) returns the LLM-facing rendering. 'json' returns the structured payload as JSON text — use only for programmatic chaining where exact field extraction matters; the JSON shape is larger and noisier for an LLM to read. | |
| publisher_slug | No | Only mentions on podcasts of this publisher (network), by slug. | |
| published_after | No | Only episodes published on or after this date (YYYY-MM-DD). Defaults to 30 days before published_before; the window may span at most 365 days. | |
| published_before | No | Only episodes published on or before this date (YYYY-MM-DD). Defaults to now. | |
| speaker_statement_characteristics | No | Count only mentions said a certain way, for every subject: {"temporal_orientation": ["future"]} compares how each subject's predictions lean. Labels listed for one axis match any of them; axes combine with AND, so add only the axes the request names. |