Welcome to BusyBee — for business or API questions, use the Support button on the right

Keyword content search: one parameter switches six platforms

search_posts is the most frequently used tool. Swap platform to tiktok / youtube / twitter / douyin / xiaohongshu and the response structure stays exactly the same.

Parameter

ParameterRequiredValue
platformYestiktok / youtube / twitter / douyin / xiaohongshu
keywordYesSearch term, Chinese supported; add a region or category qualifier if you can
limitNoNumber of items, default 10

What it returns

Fields do not depend on the platform: posts return items[] (url, text, author, time, engagement, cover); creators return items[] (handle, name, bio, followers, verified); insights returns sentiment / questions / top_phrases / top_liked / summary.

Using it from an MCP client

No need to memorize parameters — add the endpoint to your client, describe what you want in plain language, and the model picks the tool and arguments itself. Use the REST form above when you write code.

Copy and run

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

KEY = os.environ["BUSYBEE_API_KEY"]
req = urllib.request.Request(
    "https://lucydomi.com/mcp/v1/search_posts",
    data=json.dumps({"platform": "tiktok", "keyword": "coffee", "limit": 3}).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])

Real response sample

A real production response below — truncated to one item, billing fields removed.

{
  "ok": true,
  "platform": "tiktok",
  "tool": "search_posts",
  "count": 1,
  "items": [
    {
      "platform": "tiktok",
      "id": "7690199760430566669",
      "url": "https://www.tiktok.com/@laceyglasley/video/7690199760430566669?_r=1&u_code=f0m7125f4ia4bk&preview_pb=0&sharer_language=en&_d=f0m710il3k0l0c&share_item_id=7690199760430566669&source=h5_m",
      "author": {
        "id": "7066058701889012782",
        "handle": "laceyglasley",
        "name": "Lacey"
      },
      "text": "One for me, one for you 🤎🍯 Salted Honey Spanish Latte (1-16oz drink) • 1 tbsp sweetened condensed milk • 1 tsp honey • Dash of cinnamon • Pinch of salt • Dash of cinnamon • 2 tsp instant espresso + 2oz warm water (or double shot of espresso) • Ice • 3-4oz milk Enjoy! #coffeetok #coffeeathome #instantespresso #coffeerecipe #spanishlatte ",
      "created_at": "2026-09-27T13:03:24+00:00",
      "stats": {
        "likes": 68801,
        "comments": 169,
        "shares": 7732,
        "views": 1017504,
        "collects": 17981
      },
      "cover": "https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/owpgeRFaArQERuSqRE9CDLMEBEI3EAF5ACAufD~tplv-tiktokx-origin.image?biz_tag=musically_video.video_cover&dr=8593&idc=useast8&ps=933b5bde&refresh_token=9ebdfa7c&s=SEARCH&sc=cover&shcp=c1333099&shp=d05b14bd&t=bacd0480&x-expires=1792933200&x-signature=lpbiHJbGP7CmVDG3kmOcPkenHQo%3D"
    }
  ]
}

FAQ

How is this different from searching a keyword directly?
Keyword search gives you raw entries, comment insights gives you conclusions (sentiment split, share of questions, top phrases, most-liked comments) and saves a round of post-processing.
Does a bigger sample give more accurate numbers?
More reliable but slower. 20-50 items is enough to judge a topic; raise it only when you need strict statistics.
Do failed calls count against you?
No. Upstream failures are refunded automatically; only a call that returns data counts.

Related

TikTok DataYouTube DataDouyin dataSetup guide

One key, six platforms

Same fields, same MCP endpoint — switching platform means changing one parameter. New accounts get $0.2 in credit.

View pricing Try it once