01 · Topic metadata

What's in the topic?

A single call returns the dataset's shape: how many comments are classified, how recent, where the audience appears to be geographically, and how often the data refreshes.

GET/v1/topics/glp1
{
  "id": "glp1",
  "name": "GLP-1 medications",
  "vertical": "pharma",
  "comment_count": 21148,
  "source_count": 86,
  "language": "en",
  "geo_inferred": { "uk": 0.41, "us": 0.37, "other": 0.22 },
  "freshness": "weekly",
  "classified_at": "2026-05-14T12:45:08Z",
  "earliest_comment": "2023-05-02",
  "latest_comment": "2026-05-13"
}
02 · Aggregates

The distribution across every classification dimension.

One call, every cut. Sentiment, quality, tone, theme, brand. This is what powers your dashboard's first screen.

GET/v1/topics/glp1/aggregates
{
  "total": 21148,
  "by_sentiment": {
    "negative": 7948,
    "neutral":  6952,
    "positive": 4824,
    "mixed":    1424
  },
  "by_quality": {
    "high": 4699, "medium": 8224, "low": 8225
  },
  "by_tone": {
    "considered":   9173,
    "neutral":      5949,
    "questioning":  2974,
    "ranty":        1700,
    "joking":       1050,
    "promotional":  302
  },
  "by_theme": {
    "weight_loss":            9447,
    "diet_culture":           8174,
    "drugs":                  7299,
    "nutrition_science":      4824,
    "personal_journey":       4799,
    "food_industry_critique": 3074,
    "pharma_skepticism":      2974,
    "side_effects":           2349,
    "doctor_critique":        2149,
    "exercise":               1974,
    "cost_access":            1499
  },
  "by_drug": {
    "generic_glp1": 3549,
    "ozempic":      724,
    "semaglutide":  524,
    "wegovy":       374,
    "mounjaro":     349,
    "tirzepatide":  124
  },
  "personal_experience_pct": 28.3,
  "promotional_pct":         1.4
}
03 · Cross-tab

How does sentiment split per brand?

Cross any two classification dimensions. Here, sentiment by drug: the data behind every brand-team's first question.

GET/v1/topics/glp1/aggregates?rows=drug&cols=sentiment
{
  "rows": "drug",
  "cols": "sentiment",
  "data": {
    "ozempic":     { "positive": 100, "negative": 500, "mixed": 100, "neutral": 24 },
    "wegovy":      { "positive": 100, "negative": 199, "mixed": 25,  "neutral": 50 },
    "mounjaro":    { "positive": 274, "negative": 50,  "mixed": 0,   "neutral": 25 },
    "semaglutide": { "positive": 75,  "negative": 149, "mixed": 75,  "neutral": 225 },
    "tirzepatide": { "positive": 0,   "negative": 74,  "mixed": 25,  "neutral": 25 }
  }
}
04 · Comments

Pull the actual conversations.

Filter on any classification dimension. Every comment ships with its full text, source provenance, engagement signal, and the labels the classifier assigned.

GET/v1/topics/glp1/comments?theme=side_effects&quality=high&personal_experience=true&limit=1
{
  "comments": [
    {
      "id": "yt_UgxrAWGBvD8qNoHAWYw2o9vQwh",
      "text": "My husband is a type 1, and he had stomach paralyzation on it. We still aren't sure if he already had that from his uncontrolled sugars and the Ozempic worsened it, or if he developed it from the drug. He still has it, and it's made controlling his BS worse because sugar in food form takes longer to enter his blood stream. While on it, there was a week where he couldn't keep water down without heavy anti-nausea meds. Watching him struggle has made me think that if I were ever offered it for weight loss, I'd decline.",
      "likes": 0,
      "published_at": "2026-05-09T00:00:00Z",
      "author": "@DawnOfDaravaja",
      "is_reply": true,
      "source": {
        "type":           "youtube",
        "channel":        "ZOE",
        "channel_domain": "joinzoe.com",
        "video_id":       "8SpYidQNLjk",
        "video_title":    "The obesity expert: 3 shocking truths about Ozempic side effects...",
        "url":            "https://www.youtube.com/watch?v=8SpYidQNLjk",
        "published_at":   "2026-04-30"
      },
      "classification": {
        "sentiment":           "negative",
        "tone":                "considered",
        "quality":             "high",
        "personal_experience": true,
        "is_promotional":      false,
        "themes":              ["drugs", "diabetes", "side_effects", "personal_journey", "doctor_critique"],
        "drugs":               ["ozempic"],
        "classified_at":       "2026-05-14T12:45:08Z"
      }
    }
  ],
  "page": {
    "next_cursor": "eyJpZCI6InV5XzAwM...",
    "count": 1,
    "has_more": true
  }
}
05 · Trend

How the conversation moves over time.

Time-series over any dimension. Useful for tracking whether sentiment is improving on a drug after a media event, or whether a side-effect narrative is gaining ground.

GET/v1/topics/glp1/trend?dimension=sentiment&bucket=month&since=2025-10
{
  "bucket": "month",
  "dimension": "sentiment",
  "series": [
    { "month": "2025-10", "count": 1420, "positive": 325, "negative": 540, "mixed": 85,  "neutral": 470 },
    { "month": "2025-11", "count": 1560, "positive": 360, "negative": 590, "mixed": 95,  "neutral": 515 },
    { "month": "2025-12", "count": 1290, "positive": 295, "negative": 490, "mixed": 80,  "neutral": 425 },
    { "month": "2026-01", "count": 1580, "positive": 365, "negative": 600, "mixed": 95,  "neutral": 520 },
    { "month": "2026-02", "count": 1840, "positive": 425, "negative": 700, "mixed": 110, "neutral": 605 },
    { "month": "2026-03", "count": 2060, "positive": 475, "negative": 780, "mixed": 125, "neutral": 680 },
    { "month": "2026-04", "count": 1930, "positive": 445, "negative": 735, "mixed": 115, "neutral": 635 },
    { "month": "2026-05", "count": 2205, "positive": 510, "negative": 840, "mixed": 130, "neutral": 725 }
  ]
}
06 · Highlights

The cuts you'd ask an analyst for.

Pre-computed insight surfaces. Biggest movers in the last 30 days, top first-hand voices with substantive detail, and the questions the audience keeps asking.

GET/v1/topics/glp1/highlights
{
  "movers_30d": [
    { "dimension": "theme",     "value": "side_effects", "delta_pct": 18.2,  "direction": "up" },
    { "dimension": "theme",     "value": "cost_access",  "delta_pct": 11.4,  "direction": "up" },
    { "dimension": "sentiment", "value": "negative",     "delta_pct": 6.1,   "direction": "up" },
    { "dimension": "drug",      "value": "mounjaro",     "delta_pct": -8.3,  "direction": "down" }
  ],
  "top_first_hand": [
    {
      "comment_id": "yt_UgxrAWGBvD8qNoHAWYw2o9vQwh",
      "snippet": "My husband is a type 1, and he had stomach paralyzation on it...",
      "themes": ["side_effects", "personal_journey"],
      "quality": "high"
    },
    {
      "comment_id": "yt_KaJ19sLpRn8WqXz",
      "snippet": "Day 94 on Wegovy, the food noise just stops...",
      "themes": ["personal_journey", "weight_loss"],
      "quality": "high"
    }
  ],
  "questions_asked": [
    "Does Ozempic cause muscle loss?",
    "Will my insurance cover Wegovy?",
    "How long can you stay on a GLP-1?",
    "What happens when you come off it?"
  ]
}

Want this for a topic in your category?

If you can name a topic, we can build a dataset around it. Most new topics ship in under two weeks; refresh ongoing thereafter.

Request a topic