42ADocs
Analytics

Topics

Auto-classified subject taxonomy of your prompts - and the leaderboards built on top of it.

Every prompt template in your org is auto-classified into one or more topics by an LLM classifier (e.g. "AI Coding Assistants", "CRM software", "Developer Search"). Topics are how you slice the data when you care about subject matter rather than journey stage (which is what verticals cover).

Topics vs verticals. Verticals are the four prompt-template categories - awareness, consideration, comparison, technical. They map to the buyer journey. Topics are subject-level (e.g. "CRM software"). A single prompt usually has one vertical and one or more topics.

Discover topics

curl -H "Authorization: Bearer $KEY" \
  https://api.42a.ai/api/v1/topics

Returns the topics relevant to your org - i.e. topics that classify at least one of your prompt templates.

{
  "data": [
    { "id": "tpc_j7t1", "slug": "ai-coding-assistants", "name": "AI Coding Assistants", "description": "Tools that generate or assist with code via LLMs.", "is_auto_generated": true, "status": "active" },
    { "id": "tpc_j7t2", "slug": "developer-search",     "name": "Developer Search",     "description": "Stack Overflow-style developer Q&A surfaces.",      "is_auto_generated": true, "status": "active" }
  ]
}

The id field (tpc_xxx) is what you pass into the leaderboards below.

Top brands in a topic

Who's getting mentioned the most in this subject area?

curl -H "Authorization: Bearer $KEY" \
  "https://api.42a.ai/api/v1/topics/tpc_xxx/top-brands?from=2026-05-08&to=2026-05-14&limit=10"
const res = await fetch(
  `https://api.42a.ai/api/v1/topics/${topicId}/top-brands?from=2026-05-08&to=2026-05-14&limit=10`,
  { headers: { Authorization: `Bearer ${KEY}` } },
).then((r) => r.json());

for (const b of res.data.items) {
  console.log(`${b.name}: ${b.mention_count} mentions`);
}
import requests

res = requests.get(
    f"https://api.42a.ai/api/v1/topics/{topic_id}/top-brands",
    params={"from": "2026-05-08", "to": "2026-05-14", "limit": 10},
    headers={"Authorization": f"Bearer {KEY}"},
).json()

for b in res["data"]["items"]:
    print(f"{b['name']}: {b['mention_count']} mentions")

Response shape:

{
  "data": {
    "topic_id": "tpc_j7t1",
    "topic_slug": "ai-coding-assistants",
    "topic_name": "AI Coding Assistants",
    "prompt_template_count": 6,
    "from": "2026-05-08T00:00:00.000Z",
    "to": "2026-05-14T23:59:59.999Z",
    "truncated": false,
    "items": [
      { "brand_id": "brn_acme",   "name": "Acme Code",     "mention_count": 134 },
      { "brand_id": "brn_globex", "name": "Globex Editor", "mention_count":  88 }
    ]
  }
}

prompt_template_count is how many of your org's prompts feed this topic - useful for sanity-checking. If this is 1, the leaderboard is effectively just that one prompt's mentions.

Top cited websites in a topic

Where are the LLMs sourcing answers for this subject area?

curl -H "Authorization: Bearer $KEY" \
  "https://api.42a.ai/api/v1/topics/tpc_xxx/top-websites?from=2026-05-08&to=2026-05-14"

Each item carries domain, apex_domain, and a type classifier (news_article, review_site, academic, documentation, social_media). Use that to figure out where to focus content + outreach.

Truncation

Both topic leaderboards cap at 2,000 citations or mentions per template in the topic. If truncated: true, your numbers are a strict lower bound - narrow the time range to get accurate counts.

Common questions this answers

  • "Who is the best mentioned brand in [topic]?"list_topics -> top brands in topic.
  • "What are the top cited domains in [topic]?"list_topics -> top websites in topic.
  • "How saturated is this topic?"prompt_template_count in the response. Higher = topic well-represented in your prompt set.

See also

Last updated