Use case

Vet a Douyin creator's recent posts before you sign them

Pull a Douyin creator's recent posts with plays, likes, comments, shares and music as JSON, so you can check real engagement before a sponsorship.

Prepaid, no subscriptionREST or MCPOne key for models, data and agents
Douyinlovelyjsonitems[0]"caption": "Morning pour-over at …"date": "2026-10-18""plays": 182000"likes": 9400"comments": 310"shares": 520

Before you pay a Douyin creator, you want to know what their last 30 posts actually earned, not the follower count in a pitch deck. The app shows one post at a time, in Chinese, and nobody wants to copy numbers by hand for twenty candidates. Lovely Router reads the profile for you. Send creator profile links, get one JSON object per post, pay per post from a prepaid balance. Call it from a spreadsheet script, a vetting pipeline or an AI agent with one API key.

Hand it to your AI agent

Copy this prompt into Claude Code, Cursor, Codex or any coding agent. It tells the agent where the docs are and how to use your API key.

Vet a Douyin creator's recent posts before you sign them. Use the Lovely Router data tools: each returns JSON and is billed per result.

- Docs (read first): https://lovelyrouter.com/docs/tools/find.md and https://lovelyrouter.com/docs/tools/run.md
- Plan first: POST https://lovelyrouter.com/v1/tools/suggest with `{"task": "<my task in plain words>"}` (free). It returns the tools to run in order, each with an example `input`, the `input_required` fields, an estimated cost and a ready-made `run` request. Replace the example values with my task's; if a field is unclear, read the tool with GET https://lovelyrouter.com/v1/tools/<id>. To browse instead, POST https://lovelyrouter.com/v1/tools/discover searches the catalog.
- Show me the plan and its estimated cost (`total_est_cost_usd`) before running anything large.
- Run: POST https://lovelyrouter.com/v1/tools/<id>/run with `{"input": {...}, "max_results": N}`. A 200 has the finished run with `items`; a 202 means it is still running, so poll the `poll` path until `status` is `succeeded`, `failed`, `timed_out` or `stopped`.
- Only delivered results are billed. Keep max_results small on the first run, check the output, then scale up.
- If you support MCP, connect https://lovelyrouter.com/mcp instead (Streamable HTTP, same key; https://lovelyrouter.com/docs/tools/mcp.md) and use suggest_tools, get_tool and run_tool.
- Auth: read my API key from the LOVELY_API_KEY environment variable and send it as `Authorization: Bearer $LOVELY_API_KEY`. Never print or commit the key. If it is not set, ask me to create one at https://lovelyrouter.com/app/keys.
- Billing is prepaid: every call is charged to my balance, so test with a small request before running anything large.
- Every docs page is plain Markdown; the full index is https://lovelyrouter.com/llms.txt.

My task: <the inputs (links, keywords or accounts) and how many results you need>
01

How it works

010203
  1. Copy the douyin.com/user link of each creator on your shortlist, or the share link from the app.

  2. Run the tool with a cap

    Send the links to POST /v1/tools/douyin-profile/run with maxPostsPerProfile and max_results. The run holds its maximum cost from your balance and returns the posts as JSON.

  3. Score each creator

    Group posts by creator, take the median plays and the like and comment rates, and compare creators on the same window.

02

Get a creator's recent posts with one request

Get Douyin profile posts takes profile links in profileUrls. maxPostsPerProfile caps the posts, split across the profiles, and recentDays limits them to the last N days:

curl https://lovelyrouter.com/v1/tools/douyin-profile/run \
  -H "Authorization: Bearer $LOVELY_API_KEY" \
  -H "content-type: application/json" \
  -d '{
    "input": {
      "profileUrls": ["https://www.douyin.com/user/MS4wLjABAAAAk1tZ-L085zZf2yW_H5dnVFZWyk8Rt8v4RAvf9KhTyPoVdMDxTs7Q_rvgTJGWXezS"],
      "maxPostsPerProfile": 30,
      "recentDays": 60
    },
    "max_results": 30
  }'

Set excludePinnedPosts to true to skip posts pinned to the top, which can be old. A run still going after 60 seconds returns 202; Run a tool shows how to poll.

03

What each post holds

Field groupWhat you get
ContentCaption and date, for videos and image posts
EngagementPlays, likes, comments and shares
SoundThe music used
AuthorAuthor stats for the creator

Text comes back as posted, in Chinese. Ask a model to translate captions or tag each post by topic in the same job.

04

Recipes

Check a shortlist before outreach

Run 10 creators with 20 posts each, compute median plays and likes per play, and drop anyone whose latest posts sit far below their best.

Spot a lucky hit

If one post has ten times the median plays of the rest, treat the creator's reach as uncertain and ask for recent numbers.

Compare a creator's sponsored and organic posts

Mark the posts that mention a brand in the caption and compare their engagement with the others.

Re-check during a campaign

Run the same profiles weekly with recentDays set to 7 and see whether output and engagement hold up.

Find trending sounds in a niche

Collect posts from the creators in a category and count the music most used.

Prefer plain words? Connect the MCP server and tell Claude Code or Cursor: "Read the Douyin profile links in creators.txt, get the last 20 posts of each, and rank the creators by median plays and likes. Set max_results to 200."

06

What you pay

You pay per post: starting a run holds its maximum cost, the per-call fee plus the per-post fee times max_results, and the run settles to what it returned. The rest of the hold goes back to your balance. A run that fails or times out pays only for the posts it delivered, and a run refused at the start costs nothing.

Vetting 10 creators at 20 posts each is billed as 200 posts. There is no subscription and no monthly minimum: top up from $5, and one balance pays for tools and models. The card above shows today's price; pricing lists every tool.

07

Frequently asked questions

?
How many posts can I get in one run?+

Up to 500 posts per run. maxPostsPerProfile is the total across the profiles you send, so size it for the whole list.

Can I limit the data to recent posts?+

Yes. recentDays keeps only posts from the last N days, and excludePinnedPosts skips posts pinned to the top of the profile.

Do I need a Douyin account?+

No. You send profile links and an API key. Nothing about the Chinese site is on your side.

Are captions translated?+

No. They come back as posted, in Chinese. Translate them with a model in your own pipeline.

Do I need a subscription?+

No. You add credit to a prepaid balance and each run draws it down. Failed runs pay only for the results they delivered, and nothing renews automatically.

Planning a creator campaign? See influencer research, and the rest of the tool catalog.

One prepaid key for models, data and agents

No subscription. Top up, use what you need, see every charge in your logs.