# How to connect TikTok public data to OpenClaw (paste one key, 89 tools)

> Connect TikTok public data to OpenClaw with ClawLink: paste your TikTok public data key once and 89 tools work from chat. No MCP server to run, nothing stored on your machine.

Web version: https://claw-link.dev/openclaw/tiktok-data

The usual route to TikTok public data access for OpenClaw is an MCP server you configure and keep running, plus your own OAuth app or API keys. ClawLink gives OpenClaw a more practical TikTok public data setup: install one ClawHub skill, connect TikTok public data in the browser, and OpenClaw can call real TikTok public data actions from any chat surface with no auth, token refresh, or tool wiring to build yourself.

## Setup

It takes three steps to connect OpenClaw to TikTok public data.

1. **Install ClawLink** — add the plugin to OpenClaw once.
2. **Connect TikTok public data** — one-click OAuth in the ClawLink dashboard.
3. **Use it from chat** — ask OpenClaw in plain English.

**Paste this into OpenClaw to set up ClawLink:**

> I want to connect my apps to OpenClaw through ClawLink.
> Please install the ClawLink plugin from ClawHub and enable it: `openclaw plugins install clawhub:clawlink-plugin`
> When it is installed, tell me and stop. After I reply, give me the ClawLink pairing link. Setup notes, if you need them: https://claw-link.dev/skill.md

**Alternative for any agent (no plugin needed):** if the OpenClaw plugin route isn't available or doesn't work, any AI agent with shell access can use the ClawLink CLI instead:

```bash
npx -y @useclawlink/cli login          # sign in via browser — no API key to paste
npx -y @useclawlink/cli connect tiktok-data  # connect TikTok public data (browser OAuth)
npx -y @useclawlink/cli actions tiktok-data  # list available actions
npx -y @useclawlink/cli run tiktok-data <action> --input '<json>'  # execute (add --confirm for writes)
```

### Install by command

The setup prompt above does all of this in one paste. By hand, it is one install command plus a browser approval:

```bash
openclaw plugins install clawhub:clawlink-plugin
```

Then ask OpenClaw to set up ClawLink. It starts browser pairing and prints an approval link — open it, approve the device, return to the chat, and say `done`. Finally, connect TikTok public data in the [ClawLink dashboard](https://claw-link.dev/dashboard) — enter your TikTok public data account details once.

Verify the connection by asking OpenClaw:

> Use TikTok public data to tiktokdata user profile and walk me through the result in plain English.

### Using a different agent?

The OpenClaw plugin is one client of ClawLink's MCP server. Claude Code, Cursor, Codex, or any agent that can run a shell command pairs with the same ClawLink account through the CLI:

```bash
npx -y @useclawlink/cli login
```

`login` opens the same browser approval and stores a credential locally. Once TikTok public data is connected in the dashboard, that agent calls the same 89 TikTok public data tools over MCP. Full setup for MCP clients and shell agents: [connect apps to any AI agent](https://claw-link.dev/learn/connect-apps-to-any-ai-agent).

## TikTok public data MCP for OpenClaw

Looking for a TikTok public data MCP server for OpenClaw? ClawLink connects TikTok public data to OpenClaw and exposes 89 TikTok public data tools your agent can call over [MCP](https://claw-link.dev/learn/what-is-an-mcp-server), with [hosted auth](https://claw-link.dev/learn/oauth-for-ai-agents) and nothing to run or maintain yourself. Using Hermes instead? The [Hermes TikTok public data integration](https://claw-link.dev/hermes/tiktok-data) works the same way.

## What the OpenClaw TikTok public data integration can do

89 TikTok public data tools are ready for OpenClaw once the account is connected.

### All 89 TikTok public data tools for OpenClaw

| Tool | What it does |
|---|---|
| **User profile** `tiktokdata_user_profile` | Public profile by username |
| **User posts** `tiktokdata_user_posts` | A user's recent videos with stats |
| **Post detail** `tiktokdata_post_detail` | One video with stats and hashtags |
| **Post comments** `tiktokdata_post_comments` | Comments on a video |
| **Search videos** `tiktokdata_search_videos` | Search videos by keyword |
| **Search users** `tiktokdata_search_users` | Search accounts by keyword |
| **Hashtag posts** `tiktokdata_hashtag_posts` | Videos under a hashtag |
| **Hashtag detail** `tiktokdata_hashtag_detail` | Hashtag views and video count |
| **Trending searches** `tiktokdata_trending_searches` | Today's trending searches |
| **Comment replies** `tiktokdata_comment_replies` | Replies to one TikTok comment |
| **User followers** `tiktokdata_user_followers` | Followers of a TikTok account, newest first |
| **User following** `tiktokdata_user_following` | Accounts a TikTok user follows |
| **User region** `tiktokdata_user_region` | The country a TikTok account is registered in |
| **Audience demographics** `tiktokdata_audience_demographics` | Where a TikTok creator's audience is |
| **Profile contact** `tiktokdata_profile_contact` | Contact details a TikTok account publishes on its profile |
| **Similar users** `tiktokdata_similar_users` | Accounts similar to a TikTok creator |
| **User IDS** `tiktokdata_user_ids` | The numeric user id and sec_uid of a TikTok username |
| **Creator milestones** `tiktokdata_creator_milestones` | A creator's milestones and profile summary |
| **User liked videos** `tiktokdata_user_liked_videos` | Videos a TikTok user liked, when their likes are public |
| **User reposts** `tiktokdata_user_reposts` | Videos a TikTok user reposted |
| **User playlists** `tiktokdata_user_playlists` | A user's playlists |
| **Playlist videos** `tiktokdata_playlist_videos` | Videos in a TikTok playlist |
| **Collection videos** `tiktokdata_collection_videos` | Videos in a public TikTok collection, by its URL |
| **User sounds** `tiktokdata_user_sounds` | Original sounds a TikTok user created |
| **Video transcript** `tiktokdata_video_transcript` | A video's captions as text |
| **Video audio transcript** `tiktokdata_video_audio_transcript` | Transcript made from a TikTok video's audio, for videos with no captions |
| **Video download** `tiktokdata_video_download` | A download URL for a TikTok video file |
| **Photo post** `tiktokdata_photo_post` | The images of a photo post |
| **Video metrics** `tiktokdata_video_metrics` | Detailed metrics of a TikTok video by video id |
| **Comment keywords** `tiktokdata_comment_keywords` | The most frequent keywords in a TikTok video's comments |
| **Fake views check** `tiktokdata_fake_views_check` | Estimates how much of a TikTok video's view count is fake or inorganic |
| **Videos bulk** `tiktokdata_videos_bulk` | Details of up to 50 TikTok videos in one call, by video id |
| **Translate** `tiktokdata_translate` | Translates a TikTok caption or comment with TikTok's own translator |
| **Trending feed** `tiktokdata_trending_feed` | Videos trending on TikTok right now, as seen from a country |
| **Explore feed** `tiktokdata_explore_feed` | Videos from TikTok's explore page, by category |
| **Home feed** `tiktokdata_home_feed` | A sample of TikTok's For You feed for a logged-out visitor |
| **Trending hashtags** `tiktokdata_trending_hashtags` | Hashtags trending on TikTok in a country, ranked, with their popularity curve |
| **Search top** `tiktokdata_search_top` | TikTok's Top search tab for a keyword |
| **Search hashtags** `tiktokdata_search_hashtags` | Hashtags matching a keyword, with their view counts |
| **Search photos** `tiktokdata_search_photos` | Search photo posts by keyword |
| **Search places** `tiktokdata_search_places` | Search places by keyword |
| **Search lives** `tiktokdata_search_lives` | Live streams on now that match a keyword |
| **Search suggestions** `tiktokdata_search_suggestions` | TikTok's autocomplete suggestions for a partial search |
| **Popular creators** `tiktokdata_popular_creators` | Popular TikTok creators, filtered by size and country |
| **Search insights** `tiktokdata_search_insights` | What people search on TikTok |
| **Search insight detail** `tiktokdata_search_insight_detail` | Who searches one TikTok search term |
| **Search insight trend** `tiktokdata_search_insight_trend` | How searches for one TikTok search term changed over time |
| **Search insight videos** `tiktokdata_search_insight_videos` | Videos TikTok shows for a search-insights keyword |
| **Song** `tiktokdata_song` | A sound or song with its stats |
| **Song videos** `tiktokdata_song_videos` | Videos that use a sound |
| **Music charts** `tiktokdata_music_charts` | TikTok's music charts |
| **Search music** `tiktokdata_search_music` | Sounds and songs matching a keyword |
| **User live** `tiktokdata_user_live` | Whether a TikTok user is live now, with the room id and live stats |
| **Live room** `tiktokdata_live_room` | A live room's info and stats |
| **Live status** `tiktokdata_live_status` | Whether a TikTok live room is still broadcasting |
| **Live status bulk** `tiktokdata_live_status_bulk` | Whether each of several TikTok live rooms is still broadcasting |
| **Live viewers ranking** `tiktokdata_live_viewers_ranking` | Top gifters and viewers of a TikTok live room |
| **Live daily rank** `tiktokdata_live_daily_rank` | TikTok's daily live-stream ranking, as seen from a live room and its host |
| **Live recommended** `tiktokdata_live_recommended` | Live rooms TikTok recommends under a tag |
| **Live recommended tags** `tiktokdata_live_recommended_tags` | The tags TikTok uses to group recommended live rooms |
| **Live gifts** `tiktokdata_live_gifts` | The gifts available in a TikTok live room, with their coin prices |
| **Gift name** `tiktokdata_gift_name` | The name of a TikTok live gift by its id |
| **Live host info** `tiktokdata_live_host_info` | A live host's live profile |
| **Live products** `tiktokdata_live_products` | Products a TikTok live stream is selling |
| **Ad library search** `tiktokdata_ad_library_search` | Ads in TikTok's Ad Library by keyword or advertiser name |
| **Ad library ad** `tiktokdata_ad_library_ad` | One ad from TikTok's Ad Library |
| **Ad transparency search** `tiktokdata_ad_transparency_search` | Ads in TikTok's EU Commercial Content Library |
| **Top ads** `tiktokdata_top_ads` | Best-performing TikTok video ads for a keyword, from TikTok's Creative Center |
| **Shop search** `tiktokdata_shop_search` | Search TikTok Shop products |
| **Shop product** `tiktokdata_shop_product` | One TikTok Shop product by URL |
| **Shop product reviews** `tiktokdata_shop_product_reviews` | Buyer reviews of a TikTok Shop product |
| **Shop products** `tiktokdata_shop_products` | Products of one TikTok Shop store, best-selling or newest first |
| **Creator showcase** `tiktokdata_creator_showcase` | Products a TikTok creator promotes in their profile showcase |
| **Shop search suggestions** `tiktokdata_shop_search_suggestions` | TikTok Shop autocomplete suggestions |
| **Shop product ID** `tiktokdata_shop_product_id` | The product id behind a TikTok Shop share link |
| **Shop ID** `tiktokdata_shop_id` | The shop id behind a TikTok Shop store share link |
| **ID from profile URL** `tiktokdata_id_from_profile_url` | The numeric user id of a TikTok profile URL |
| **Sec uid from profile URL** `tiktokdata_sec_uid_from_profile_url` | The sec_uid of a TikTok profile URL |
| **Username from profile URL** `tiktokdata_username_from_profile_url` | The username of a TikTok profile URL |
| **Video ID from URL** `tiktokdata_video_id_from_url` | The video id of a TikTok video URL |
| **Video IDS from URLS** `tiktokdata_video_ids_from_urls` | Video ids of up to 20 TikTok video URLs in one call |
| **Sec uids from URLS** `tiktokdata_sec_uids_from_urls` | Sec_uids of up to 20 TikTok profile URLs in one call |
| **Usernames from URLS** `tiktokdata_usernames_from_urls` | Usernames of up to 20 TikTok profile URLs in one call |
| **Short link** `tiktokdata_short_link` | Short share link |
| **Share qr code** `tiktokdata_share_qr_code` | Share QR code image for a video or user id |
| **App link video** `tiktokdata_app_link_video` | A link that opens a TikTok video in the TikTok app |
| **App link profile** `tiktokdata_app_link_profile` | A link that opens a TikTok profile in the TikTok app |
| **App link search** `tiktokdata_app_link_search` | A link that opens a TikTok search in the TikTok app |
| **App link message** `tiktokdata_app_link_message` | A link that opens a direct-message screen to a TikTok user in the TikTok app |

## Example prompts

**Tiktokdata User Profile**

> Use TikTok public data to tiktokdata user profile and walk me through the result in plain English.

**Tiktokdata User Posts**

> Use TikTok public data to tiktokdata user posts and walk me through the result in plain English.

**Tiktokdata Post Detail**

> Use TikTok public data to tiktokdata post detail and walk me through the result in plain English.

**Tiktokdata Post Comments**

> Use TikTok public data to tiktokdata post comments and walk me through the result in plain English.

## ClawLink vs. building it yourself

The alternative to ClawLink is usually manual integration wiring plus your own token handling, permission troubleshooting, and tool plumbing for OpenClaw. That is fine if you want to build and maintain the integration yourself. Most teams just want TikTok public data working from chat.

| | Manual | ClawLink |
|---|---|---|
| **Setup flow** | Collect and store the right TikTok public data credentials yourself, then keep the account mapping and request format correct. | ClawLink keeps the setup in one hosted flow so non-technical users can link TikTok public data without custom integration screens. |
| **Ongoing maintenance** | You own refresh logic, permission debugging, environment config, and every provider-specific edge case for TikTok public data. | ClawLink handles the repetitive integration plumbing so your team can focus on the workflow instead of the infrastructure. |
| **Agent usability** | You still need to expose the right TikTok public data actions to the runtime in a format your agent can reliably use. | 89 tools for TikTok public data are already exposed through ClawLink, so the agent can read and act from chat immediately. |

## ClawLink vs. Composio

Composio also exposes TikTok public data to AI agents. It is developer infrastructure: Python and TypeScript SDKs, an MCP server, and a catalog past 1,000 apps, aimed at teams shipping agent products. ClawLink is built for OpenClaw users instead. You install the plugin once, connect TikTok public data in the browser, and the 89 tools above work from chat. There is no SDK and no config file, and the TikTok public data key you paste at setup is stored server-side rather than kept in your environment. Choosing between them? Read the full [Composio alternatives](https://claw-link.dev/hub/composio-alternatives) comparison.

### OpenClaw installed the TikTok public data skill but can't call the tools
The ClawHub skill teaches OpenClaw about TikTok public data, but the calls run through the ClawLink plugin and your connected account. Make sure TikTok public data is connected in the dashboard, then start a fresh chat so OpenClaw reloads the tool catalog. If OpenClaw runs as a persistent gateway, restart it so the new tools register.

### Connection succeeds but no tools appear
Reconnect TikTok public data from the dashboard, then start a fresh chat if the runtime still has the old tool catalog loaded.

### "Tool schema not loaded yet" error when calling TikTok public data tools
TikTok public data tool schemas load on demand the first time a tool runs and are cached after that, so this error usually clears on its own: wait a few seconds and retry the same request. If every TikTok public data call keeps failing with it in a fresh chat, reconnect from the dashboard, and contact support if it still persists — that pattern points to a configuration problem on our side, not something you can fix by reconnecting again.

### TikTok public data returns 403 or "permission denied" on one action while others work
Two usual causes. The connected account may not have access to the specific workspace, inbox, store, or project in the request — check that first. If access looks right, the agent may have sent a placeholder value (like "YOUR_ID" or an example id from documentation) instead of a real one: ask it to run a list or search tool first, then retry the action with a real id from those results. Most failures at this stage are one of these two, not ClawLink bugs.

### The setup form accepts credentials but calls still fail
Re-enter the credentials carefully and verify the account-level permissions for TikTok public data. Basic and token-based integrations tend to fail on formatting mistakes or limited account roles.

### Is there a OpenClaw TikTok public data integration?
Yes. ClawLink is the fastest way to connect OpenClaw to TikTok public data: link your TikTok public data account once in the browser and OpenClaw can call the TikTok public data API through 89 ready-made tools — no custom code or token handling.

### How do I add TikTok public data to OpenClaw with ClawLink?
Paste the setup prompt from this page into OpenClaw. It installs the ClawLink TikTok public data skill from ClawHub, then you click Connect in the dashboard to authorize TikTok public data. OpenClaw calls the tools from the next message — no config files, and the TikTok public data key you paste is stored server-side instead of in your environment.

### How long does it take to connect TikTok public data to OpenClaw?
About two minutes. Sign in, click Connect next to TikTok public data in the dashboard, authenticate, and OpenClaw can use it from the next chat message.

### Why use ClawLink instead of wiring TikTok public data up myself?
The alternative to ClawLink is usually manual integration wiring plus your own token handling, permission troubleshooting, and tool plumbing for OpenClaw. That is fine if you want to build and maintain the integration yourself. Most teams just want TikTok public data working from chat.

### OpenClaw installed the TikTok public data skill but can't call the tools
The ClawHub skill teaches OpenClaw about TikTok public data, but the calls run through the ClawLink plugin and your connected account. Make sure TikTok public data is connected in the dashboard, then start a fresh chat so OpenClaw reloads the tool catalog. If OpenClaw runs as a persistent gateway, restart it so the new tools register.

## Related

- [Stack Exchange](https://claw-link.dev/openclaw/stack-exchange) — Search and browse questions, answers, and developer knowledge
- [OpenClaw X (Twitter) integration](https://claw-link.dev/openclaw/twitter) — Post tweets, manage lists, search content, and analyze engagement
- [Zernio tools](https://claw-link.dev/openclaw/zernio) — Schedule social posts and pull analytics across platforms
