Skip to content
Marketing
Skill

/tiktok

When a workflow needs public TikTok data through UnifAPI — creator profiles and engagement, videos and comments, hashtag and music feeds, or search. Also use on "find TikTok creators for," "pull videos for," "TikTok follower count," "search TikTok for," "rising hashtags," or

BOOST
From plugin
unifapi
59247 skills1 MCP
Install
$ npx -y skills add unifapi-agent/agents --skill tiktok --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/tiktok

Context preview

The summary Claude sees to decide when to auto-load this skill.

When a workflow needs public TikTok data through UnifAPI — creator profiles and engagement, videos and comments, hashtag and music feeds, or search. Also use on "find TikTok creators for," "pull videos for," "TikTok follower count," "search TikTok for," "rising hashtags," or

SKILL.md

tiktok.SKILL.md
name: tiktok
description: When a workflow needs public TikTok data through UnifAPI — creator profiles and engagement, videos and comments, hashtag and music feeds, or search. Also use on "find TikTok creators for," "pull videos for," "TikTok follower count," "search TikTok for," "rising hashtags," or when another skill (creator shortlist, audience fit, demand radar, local buzz) needs the deterministic TikTok read path. Connect via the `unifapi` skill first. Read-only research, never posts.
license: MIT
metadata:
  author: UnifAPI
  version: "1.0.0"
  homepage: https://unifapi.com/agents/tiktok
  source: https://github.com/unifapi-agent/agents

tiktok

The deterministic read path for public **TikTok** data through UnifAPI. This is a **Data Skill**: it does not run a marketing job on its own — it names the concrete `tiktok/...` operations, response shapes, and gotchas so any creator- or trend-first workflow (shortlisting, audience-fit, demand radar, local buzz) reads from one known recipe instead of rediscovering the surface each time.

Read-only — **eyes, not hands**. It researches public TikTok data and returns cited records; it never posts, comments, or follows, and UnifAPI never holds TikTok credentials.

Use the `unifapi` skill for live evidence

Connect once through the shared **`unifapi`** skill (OAuth MCP), then call the operations below. TikTok users and videos are keyed by **numeric id** — resolve a `@handle` or a video URL to its id first (see Gotchas). Keep any `billing` metadata so the output can state record cost.

Response contract

Single-entity endpoints return the object in `data`:

{
  "request_id": "unif_...",
  "data": {},
  "billing": { "records_charged": 1, "balance_remaining": 99 }
}

List endpoints return an array in `data` plus `pagination`:

{
  "request_id": "unif_...",
  "data": [],
  "pagination": { "has_more": false, "next_cursor": null },
  "billing": { "records_charged": 1 }
}

When `pagination.has_more` is true, pass `pagination.next_cursor` as the next request's `cursor` (`limit` sets page size). Always preserve `billing`.

Core operations

| Need | Operation | | ----------------------------- | ------------------------------------------------------------- | | Resolve handle → id | `tiktok/users/resolve` (`?username=...`) | | Resolve video URL → id | `tiktok/videos/resolve` (`?url=...`) | | Search videos / users | `tiktok/search/videos` · `tiktok/search/users` (`?q=...`) | | Search hashtags / mixed | `tiktok/search/hashtags` · `tiktok/search` (`?q=...`) | | Creator profile | `tiktok/users/{id}` | | Creator videos | `tiktok/users/{id}/videos` | | Followers / following / likes | `tiktok/users/{id}/followers` · `.../following` · `.../likes` | | Video + reaction | `tiktok/videos/{id}` · `tiktok/videos/{id}/comments` | | Hashtag feed | `tiktok/hashtags/{id}` · `tiktok/hashtags/{id}/videos` | | Music feed | `tiktok/music/{id}` · `tiktok/music/{id}/videos` |

Need a field not listed here? Use the `unifapi` skill's `get_operation` to read the exact schema before calling — but pick the operation from this table, don't discover blind.

Workflow

The deterministic recipes. Pick the one that matches the job; each names exactly what to call.

1. **Discover by topic.** Call `tiktok/search/videos?q=...`, `tiktok/search/users?q=...`, or `tiktok/search/hashtags?q=...` for the niche; use `tiktok/search?q=...` for a mixed result. 2. **Resolve a creator.** Call `tiktok/users/resolve?username=...` to get the numeric id, then `tiktok/users/{id}` for `follower_count`, `like_count`, and `video_count`. 3. **Read engagement.** Call `tiktok/users/{id}/videos`; each `Video` carries `view_count`, `like_count`, `comment_count`, and `share_count` — compute engagement per video. Page via `next_cursor`. 4. **Read a video and its reaction.** Call `tiktok/videos/{id}` (resolve a URL with `tiktok/videos/resolve?url=...` first), then `tiktok/videos/{id}/comments` for sentiment. 5. **Track trends.** Call `tiktok/hashtags/{id}` for `video_count`/`view_count` and `tiktok/hashtags/{id}/videos` (or `tiktok/music/{id}/videos`) for what's spreading on a tag or sound. 6. **Map a network.** Call `tiktok/users/{id}/followers`, `.../following`, or `.../likes` for reach and affinity work. 7. **Cite everything.** Every figure ties back to the video or profile it came from; report `billing.records_charged` (or estimate when billing metadata is absent).

Shape notes

  • **`User`** — `username`, `display_name`, `follower_count`, `following_count`,

`like_count`, `video_count`, `is_verified`, `is_private`, `region`.

  • **`Video`** — `video_description`, `view_count`, `like_count`,

`comment_count`, `share_count`, `duration`, `author`, `music`, `hashtags`, `create_time`.

  • **`Hashtag`** — `name`, `video_count`, `view_count`, `is_commerce`.
  • **`Music`** — `title`, `author`, `is_original`.

Gotchas

  • TikTok users and videos are keyed by **numeric id**. Resolve a `@handle` with

`tiktok/users/resolve?username=...` and a video URL with `tiktok/videos/resolve?url=...` **before** any `tiktok/users/{id}/...` or `tiktok/videos/{id}/...` call.

  • `tiktok/videos/batch` is a **POST** (ids in the body), not a GET — use it to

hydrate many video ids at once.

  • A private creator (`is_private`) limits what you can read — surface it.
  • A low balance can silently truncate list pages: check

`billing.truncated_due_to_balance` — when true the page is partial, so top up before trusting any count.

Output

Return the records the calling workflow needs, each cited to its video or prof

Read more
Ships withunifapi

Open-source marketing agents for Claude, ChatGPT, Codex, OpenClaw, Hermes, and any MCP client.

Get the whole plugin

Other skills on unifapi.