# Does TikTok have a public API?

TikTok. Checked September 2026.

Not in the way most people mean. TikTok has no API that lets a developer or a business read any public account. The Research API is limited to approved academic and non-profit researchers. The Display API reads only the account that logged in to your app.

For public profiles, videos, comments, hashtags, and search, use a public data API. Openhandle has 28 TikTok endpoints behind one API key, with no application and no TikTok login.

## GET /v1/tiktok/profiles/@username

```bash
curl "https://api.openhandle.dev/v1/tiktok/profiles/@pixel_orchard_tt_test" \
  -H "Authorization: Bearer $OPENHANDLE_API_KEY"
```

```ts
import { OpenHandle } from '@openhandle/sdk';

const openhandle = new OpenHandle({ apiKey: process.env.OPENHANDLE_API_KEY! });
const response = await openhandle.tiktok.profile('pixel_orchard_tt_test').get();

console.log(response.data.metrics.followers); // 75120
```

200 OK:

```json
{
  "platform": "tiktok",
  "resource": "profile",
  "capturedAt": "2026-09-18T10:33:17Z",
  "source": "live",
  "data": {
    "id": "920000000001",
    "handle": "pixel_orchard_tt_test",
    "displayName": "Pixel Orchard",
    "isVerified": true,
    "isPrivate": false,
    "metrics": { "followers": 75120, "following": 411, "posts": 4 }
  }
}
```

Trimmed to the fields this question needs. The full profile has bio, links, avatar, region, and more. The example is a Test account, so you can run it on a free Test key.

## TikTok’s official APIs, and who they are for

| API | Who can use it | What it reads |
|---|---|---|
| Research API | Approved academic and non-profit researchers, after an application | Public videos, comments, and profiles, for research |
| Display API | Any registered app | Only the account that logged in through your app |
| Content Posting API | Any registered app | Nothing. It uploads to the logged-in account |
| Commercial Content API | Any registered app | Ads and commercial content, not organic accounts |

None of these read a creator, a competitor, or a hashtag at large for a commercial product. That is the gap a public data API fills.

## What a public data API reads

- **Profiles.** Followers, following, likes, bio, verification, and region for any public account.
- **Videos.** Views, likes, comments, shares, and saves per video. A creator’s videos one page at a time.
- **Comments and replies.** Threads under any public video, with authors.
- **Hashtags, sounds, and search.** Posts for a hashtag or a sound. Search for profiles, videos, and hashtags by keyword.
- **Web and app combined.** The web page and the app show different fields. Openhandle reads both and merges them.

## What it never does

Openhandle is read-only and public-only. It never posts, likes, follows, or messages. Private accounts return `PROFILE_PRIVATE`. A metric TikTok hides is `null`, never `0`. The [public data notice](/legal/public-data-notice) lists every limit.

## When this does not work

These answers are definitive. Store them, do not retry them.

| Situation | Status | Code |
|---|---|---|
| The account is private | 403 | `PROFILE_PRIVATE` |
| The account is deleted, banned, or never existed | 404 | `PROFILE_NOT_FOUND` |
| The identifier is malformed | 400 | `INVALID_IDENTIFIER` |

```json
{
  "error": {
    "code": "PROFILE_PRIVATE",
    "message": "This profile is private.",
    "requestId": "req_01j8…",
    "retryable": false
  }
}
```

Every new workspace starts with 100 free live requests, no card needed. A full synthetic Test dataset covers every TikTok endpoint at no charge.

## Related

- [TikTok without the Research API](https://openhandle.dev/docs/guides/tiktok-data-without-research-api): Commercial use of public TikTok data without the academic program.
- [TikTok API](https://openhandle.dev/apis/tiktok): Every TikTok endpoint with examples.
- [How do I get the view count of a TikTok video?](https://openhandle.dev/questions/how-do-i-get-the-view-count-of-a-tiktok-video): One video, one request, real numbers.
