Skip to main content
Particle API extracts every sponsor read from every transcribed episode, attributes them to a company in the knowledge graph, and aggregates the result. You get sponsor-side analytics — who advertises where, how often, with what read style — without scraping audio yourself.

Per-company advertising

The fastest way to see how a single company shows up as a sponsor:
curl "https://api.particle.pro/v1/companies/nvidia/podcast/advertising" \
  -H "X-API-Key: $PARTICLE_API_KEY"
Response (truncated)
{
  "company_id": "nvidia.com",
  "total_ads": 13,
  "podcast_reach": 3,
  "episode_reach": 10,
  "read_type_breakdown": { "host_read": 12, "pre_recorded": 1 },
  "recent_ads": [
    {
      "sponsor_name": "NVIDIA Studio",
      "read_type": "HOST_READ",
      "placement_type": "PRE_ROLL",
      "podcast": { "title": "Giant Bombcast", "slug": "giant-bombcast" },
      "created_at": "2026-03-26T02:22:26Z"
    },
    {
      "sponsor_name": "NVIDIA",
      "product": "Arc Raiders",
      "read_type": "HOST_READ",
      "placement_type": "PRE_ROLL",
      "podcast": { "title": "Kinda Funny Gamescast", "slug": "kinda-funny-gamescast" }
    }
    // …
  ]
}
read_type_breakdown distinguishes host-reads from pre-recorded spots. placement_type distinguishes PRE_ROLL / MID_ROLL / POST_ROLL. recent_ads includes per-product attribution where the read called out a specific product line.

Per-podcast advertising summary

Same idea, inverted — for a single podcast, who’s sponsoring it?
curl "https://api.particle.pro/v1/podcasts/all-in/advertising" \
  -H "X-API-Key: $PARTICLE_API_KEY"
Response (truncated)
{
  "total_ads": 47,
  "top_sponsors": [
    { "sponsor_name": "OKX",        "company_id": "okx.com",        "ad_count": 7, "episode_count": 7 },
    { "sponsor_name": "Circle",     "company_id": "circle.com",     "ad_count": 5, "episode_count": 5 },
    { "sponsor_name": "Solana",     "company_id": "solanalabs.com", "ad_count": 4, "episode_count": 4 },
    { "sponsor_name": "Polymarket", "company_id": "polymarket.com", "ad_count": 3, "episode_count": 3 }
    // …
  ]
}
A useful proxy for category fit — crypto-native sponsors dominate All-In, for example. The most-active sponsors across the catalog:
curl "https://api.particle.pro/v1/podcasts/advertising/leaderboard?limit=5" \
  -H "X-API-Key: $PARTICLE_API_KEY"
Response (truncated)
{
  "data": [
    { "rank": 1, "sponsor": { "name": "Grainger",    "company": { "id": "grainger.com",    "name": "W. W. Grainger" } },        "ad_count": 14055, "podcast_reach": 538, "episode_reach": 9621 },
    { "rank": 2, "sponsor": { "name": "Mint Mobile", "company": { "id": "mintmobile.com",  "name": "Mint Mobile" } },           "ad_count": 9935,  "podcast_reach": 610, "episode_reach": 8809 },
    { "rank": 3, "sponsor": { "name": "Shopify",     "company": { "id": "shopify.com",     "name": "Shopify" } },               "ad_count": 9288,  "podcast_reach": 576, "episode_reach": 8237 },
    { "rank": 4, "sponsor": { "name": "Progressive", "company": { "id": "progressive.com", "name": "Progressive Corporation" } }, "ad_count": 8216, "podcast_reach": 607, "episode_reach": 5604 },
    { "rank": 5, "sponsor": { "name": "FanDuel",     "company": { "id": "fanduel.com",     "name": "FanDuel" } },               "ad_count": 7298,  "podcast_reach": 279, "episode_reach": 5394 }
    // …
  ]
}
Filter by metric (ad_count, podcast_reach, or episode_reach) to change the ranking dimension; by since / until to scope to a time window; or by company_id to constrain results to one sponsor’s brand family. Which sponsors run alongside each other on the same episodes — a useful signal for media-buying overlap, attribution analysis, or competitive positioning:
curl "https://api.particle.pro/v1/podcasts/advertising/co-occurrence?limit=5" \
  -H "X-API-Key: $PARTICLE_API_KEY"
Response (truncated)
{
  "data": [
    {
      "sponsor_a": { "name": "Indeed",   "company": { "id": "indeed.com",   "name": "Indeed" } },
      "sponsor_b": { "name": "FanDuel",  "company": { "id": "fanduel.com",  "name": "FanDuel" } },
      "shared_episodes": 1172
    },
    {
      "sponsor_a": { "name": "Shopify",     "company": { "id": "shopify.com",    "name": "Shopify" } },
      "sponsor_b": { "name": "Mint Mobile", "company": { "id": "mintmobile.com", "name": "Mint Mobile" } },
      "shared_episodes": 1072
    }
    // …
  ]
}
Resolve a sponsor by domain, slug, or canonical ID, then list the podcasts they sponsor:
curl "https://api.particle.pro/v1/podcasts/advertising/sponsors/grainger.com" \
  -H "X-API-Key: $PARTICLE_API_KEY"

curl "https://api.particle.pro/v1/podcasts/advertising/sponsors/grainger.com/podcasts?limit=10" \
  -H "X-API-Key: $PARTICLE_API_KEY"