Build a current, evidence-backed view of public TikTok creators. Keep identity, content fit, posting activity, and engagement observations separate from claims about audience demographics, authenticity, or partnership history.
Setup and requests
Set CRAWLORA_API_KEY to a key from crawlora.net, then
run the helper bundled with this skill. It sends x-api-key to
https://api.crawlora.net/api/v1; keep the key in the environment. Read
reference/endpoints.md for exact parameters.
Set `CRAWLORA_API_KEY` in the environment before running the helper.
scripts/crawlora.sh /tiktok/profile/username | jq '.'
scripts/crawlora.sh /tiktok/search/user keyword="running coach" | jq '.'
Check both the Crawlora envelope and any nested upstream application code before
using a response. Keep the key only in CRAWLORA_API_KEY.
Workflow
- Translate the brief into topic, geography, follower range if available, creator count, recency window, content-fit criteria, and any disqualifiers. Ask only for missing details that would change the shortlist.
- Discover handles with
/tiktok/search/userwhen needed. Search results are candidate evidence, not a verified identity or complete creator directory. - Refresh each candidate with
/tiktok/profile/{handler}using the handle without@. Capture the returned stable user id,uniqueId, nickname, verification flag, bio,secUid, follower count, heart count, and video count. A missing/deleted/banned handle is not a successful refresh. - For recent or popular content, pass the profile's returned
user.secUidexactly to/tiktok/posts. Do not substitute the numeric user id, nickname, or handle. Usesort_type=0for latest,1for popular, or2for oldest; take a bounded, consistent sample and follow its cursor only as needed. - Use
/tiktok/post/{id}to enrich selected videos. Use/tiktok/commentswith the video'saweme_idto sample top-level comments when engagement quality matters. Comments are a sample, not a complete sentiment census. - Rank candidates only against the user's stated criteria. Deduplicate by stable creator or video id and preserve the refresh time for every row.
Interpretation
- A profile's follower count, likes, views, and verification status are public profile signals. None proves audience authenticity, demographic composition, location of followers, or conversion potential.
- Bio keywords and a small post sample show candidate content fit, not sustained niche ownership. Record sample size and dates before describing cadence or consistency.
- If calculating engagement, state the formula, numerator fields, denominator, sample size, and dates. Do not replace unavailable metrics with zero or rank creators on incomparable windows.
- Public contacts may be unavailable. Do not guess email addresses or hidden contact information; do not send outreach unless the user separately asks.
- Link identities across platforms only when a public profile link or other direct evidence establishes the match. Similar handles are not proof.
- If a live refresh fails, a candidate can remain in a clearly labeled unrefreshed/candidate state; it must not silently become a current observation.
Output and reliability
Return the requested shortlist with handle, stable creator id, profile URL, topic-fit evidence, follower/video counts, verification status, refresh time, sampled video URLs, metric definitions, and unknowns. Include a brief reason for each inclusion and disclose the discovery and sampling limits.
Use bounded profile, post, detail, and comment calls. On 429, back off; retry
one transient 5xx when useful. Stop on 401/403 and report the access
limitation. Preserve a partial shortlist when only some refreshes succeed, and
inspect application-level code before treating data as valid.