Welcome to BusyBee, the social media data platform. For enterprise partnerships and usage questions, click “Support” on the right

Mining demand from comments: 10 hits to 3 shootable topics

Likes tell you how many people watched; the comment section tells you what they actually want. This pipeline costs about 4 calls per run and produces topics you can shoot right away.

Pipeline

  1. Search a batch of candidate posts
    Search 10 posts for a keyword and don't judge from the first one — the hottest is often a joke with no purchase intent.
  2. Sort by interaction and take the top 3
    Add likes + comments + shares + views and sort on that. High interaction with few comments means it looks good but gives people nothing to talk about — skip it.
  3. Pull comment insights post by post
    Three readings matter: question share (purchase or usage intent), top terms (the words people use for the pain), and top-liked comments (real tone you can lift straight into copy).
  4. Roll it all up into one topic list
    Intersect the top terms that appear in all three — the intersection is the hardest pain under that term; then write headlines in the exact words of top-liked comments.

Real batch result

Real batch result (TikTok, keyword coffee, 30 comments sampled)
Question share 27% (8/30) → clear intent; top terms coffee / people / photo / sticker / waiting; single top comment at 16,100 likes. Conclusion: the audience under this term is waiting for the result, not asking how to buy — so the content should show what it looks like finished, not link the ingredients.

Endpoints you need

What this article uses get_comment_insights, with the parameters below; use REST when writing code and MCP when wiring a client — both return the same data.

Copy and run

cURL
curl -s https://lucydomi.com/mcp/v1/get_comment_insights \
  -H "Authorization: Bearer $BUSYBEE_API_KEY" \
  -H "Content-Type: application/json" \
  -X POST \
  -d '{"platform": "tiktok", "post_id": "7659488435199053088", "sample": 30}'
Python (standard library)
import os, json, urllib.request

KEY = os.environ["BUSYBEE_API_KEY"]
req = urllib.request.Request(
    "https://lucydomi.com/mcp/v1/get_comment_insights",
    data=json.dumps({"platform": "tiktok", "post_id": "7659488435199053088", "sample": 30}).encode(),
    headers={"Authorization": f"Bearer {KEY}", "Content-Type": "application/json"},
    method="POST",
)
data = json.load(urllib.request.urlopen(req, timeout=60))
for it in data["items"]:
    print(it.get("url"), it.get("text", "")[:60])

FAQ

Why not sort by views?
High view counts often come from a lucky hit in the recommendation feed; the combined interaction value better reflects people who finished and still wanted to say something, and that is your topic signal.
How many comments is enough to sample?
20–50 is enough to judge a topic. Raise it when you need statistical conclusions; larger samples get slower.
Is looking across platforms duplicated work?
Fields are unified, so the same script only needs a different platform parameter; get one platform working end to end before expanding.

Related reading

Comment insights toolTikTok dataXiaohongshu dataHow to build a creator database

One key, six platforms

Same fields, same MCP endpoint — switching platforms changes one parameter. Signing up credits you with $0.2 to try it.

View pricing Try one call