TikTok API

TikTok Profile reposts API

List the videos a TikTok creator has reposted to their profile, with view, like and comment counts and cursor pagination.

$1.20/1k req, pay per request, no subscription.

What the API returnedvideos[0]
{
"id": "7482910384756201234",
"caption": "the trick everyone missed, watch till the end",
"author": "prep.with.dara",
"createdUtc": 1758844800,
"image": "https://p16-sign-va.tiktokcdn.com/tos-maliva-p-0068/repost-a-clean~tplv-obj.jpeg?x-signature=Mq2aB3c",
"views": 3120000,
"likes": 412000,
"comments": 6820,
... 17 more fields
}
Uptime
99.38%
30d · 1,617 calls
Requests
1,617
30d · weekly, last 12 wks
Response
1.3s
median · 30d

Pricing

TikTok Profile reposts API pricing

You pay
$12.00
$1.20/1k req, only for what you use. No monthly plan.
Your first 83 requests are free with the $0.10 starting balance.

Try it

Get TikTok profile reposts in one request

Open in
Get a free key
Sample response
Free runs return only the first 3 results. Fund a key to get the full response.

This sample shows 23 of 30 fields. See every field

{
  "found": true,
  "data": {
    "nextCursor": "MTc1ODg0NDgwMA",
    "videos": [
      {
        "id": "7482910384756201234",
        "caption": "the trick everyone missed, watch till the end",
        "author": "prep.with.dara",
        "createdUtc": 1758844800,
        "image": "https://p16-sign-va.tiktokcdn.com/tos-maliva-p-0068/repost-a-clean~tplv-obj.jpeg?x-signature=Mq2aB3c",
        "views": 3120000,
        "likes": 412000,
        "comments": 6820,
        "shares": 28400,
        "saves": 51200,
        "authorName": "Dara Ellison",
        "authorSecUid": "MS4wLjABAAAAqz1KpXcT7yWvN2mO4pQrS5tU6vW7xY8zA9bC0dE1fG2hI3jK4lM5n",
        "authorVerified": false,
        "authorFollowers": 892000,
        "soundClipId": "7482900000000000011",
        "soundTitle": "original sound",
        "soundAuthor": "prep.with.dara",
        "durationSeconds": 38,
        "hashtags": [
          "mealprep",
          "quicktips"
        ]
      },
      {
        "id": "7482788213904456782",
        "caption": "why nobody told me this sooner",
        "author": "northlane.studio",
        "createdUtc": 1758758400,
        "image": "https://p16-sign-va.tiktokcdn.com/tos-maliva-p-0068/repost-b-clean~tplv-obj.jpeg?x-signature=Nr3bC4d",
        "views": 1840000,
        "likes": 226000,
        "comments": 3910,
        "shares": 14200,
        "saves": 29800,
        "authorName": "Northlane Studio",
        "authorSecUid": "MS4wLjABAAAAsz2LqYdU8zXwO3pR5qStT6uV7wX8yZ9aB0cD1eF2gH3iJ4kL5mN6o",
        "authorVerified": true,
        "authorFollowers": 2140000,
        "soundClipId": "7482780000000000012",
        "soundTitle": "sunday morning",
        "soundAuthor": "Lena Cross",
        "durationSeconds": 51,
        "hashtags": [
          "studio",
          "diy"
        ]
      },
      {
        "id": "7482601122938467891",
        "caption": "packing for a week in 12 minutes",
        "author": "farflung.faye",
        "createdUtc": 1758672000,
        "image": "https://p16-sign-va.tiktokcdn.com/tos-maliva-p-0068/repost-c-clean~tplv-obj.jpeg?x-signature=Os4cD5e",
        "views": 968000,
        "likes": 87400,
        "comments": 1560,
        "shares": 5100,
        "saves": 12300,
        "authorName": "Faye Whitcombe",
        "authorSecUid": "MS4wLjABAAAAtz3MrZeV9aYxP4qS6rTuU7vW8xY9zA0bC1dE2fG3hI4jK5lM6nO7p",
        "authorVerified": false,
        "authorFollowers": 341000,
        "soundClipId": "7482600000000000013",
        "soundTitle": "original sound",
        "soundAuthor": "farflung.faye",
        "durationSeconds": 62,
        "hashtags": [
          "packing",
          "travel"
        ]
      }
    ]
  }
}

Full parameter and response reference - every field, type, and example for this endpoint.

Reference

One request, one response shape.

Every field you send and every field you get back, each with a real example.

Last verified 2026-10-31 · uptime and latency measured over 30d

Request body

JSON, posted to this endpoint.

  • secUidstring

    MS4wLjABAAAABKjQkOz_IIzXXzEAl_9LGsWhvK-gBnlczwRPXK8EmxAp6K3X0qiaP5_OEqmm0XwG

    TikTok's opaque sec_uid for the account. TikTok's own endpoint keys on it and will not accept a handle; call tiktok.profile with the handle first and read secUid off its response.

  • cursorstring

    Pagination cursor from a previous response's nextCursor.

  • limitinteger

    3

    Maximum items to return in one page.

You send. A small JSON body. The values shown are examples to replace with your own.

Response

JSON, one example value per field.

datadata
  • nextCursorstring

    MTc1ODg0NDgwMA

    Opaque cursor for the next page, or null when there are no more. Pass it back as cursor to continue.

each videodata.videos[]

Videos the creator reposted, newest first. Reposts are other accounts' videos, so author is usually not the creator you asked about.

  • authorstring

    prep.with.dara

    Handle of the account that posted the video, without the leading @. Populated whenever the provider has data for the entity.

  • authorFollowersinteger

    892000

    The author's follower count at the time of the request. TikTok rounds this for large accounts.

  • authorImagestring

    Author's avatar image URL. Signed and short-lived, so the query string is load-bearing and kept intact. Populated whenever the provider has data for the entity.

  • authorNamestring

    Dara Ellison

    The author's display name, which is not the handle and can contain any characters.

  • authorSecUidstring

    MS4wLjABAAAAqz1KpXcT7yWvN2mO4pQrS5tU6vW7xY8zA9bC0dE1fG2hI3jK4lM5n

    The author's TikTok sec_uid. Pass it straight to tiktok.profile_reposts or tiktok.profile_playlists to pivot to that creator without a tiktok.profile lookup.

  • authorUserIdstring

    Author's numeric TikTok user id. Populated whenever the provider has data for the entity.

  • authorVerifiedboolean

    false

  • captionstring

    the trick everyone missed, watch till the end

    Populated whenever the provider has data for the entity.

  • commentsinteger

    6820

  • createdUtcnumber

    1758844800

    UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds. Populated whenever the provider has data for the entity.

  • durationSecondsinteger

    38

    Video length in seconds.

  • hashtagsstring[]

    Hashtags carried in the caption, without the leading #. Empty when the post uses none; @-mentions are excluded.

  • idstring

    7482910384756201234

    TikTok video id. Pass it to tiktok.video as id for the full record. Populated whenever the provider has data for the entity.

  • imagestring

    https://p16-sign-va.tiktokcdn.com/tos-maliva-p-0068/repost-a-clean~tplv-obj.jpeg?x-signature=Mq2aB3c

    URL of the video's cover image. A signed, short-lived TikTok CDN URL - the query params are load-bearing, so keep the URL intact. Absent when the upstream provides no cover.

  • likesinteger

    412000

  • locationNamestring

    Name of the place the post is tagged at, or null when it has no location tag.

  • mentionsstring[]

    Accounts @mentioned in the caption, each as the handle with its leading @. Empty when the post mentions none.

  • savesinteger

    51200

  • sharesinteger

    28400

  • soundAuthorstring

    prep.with.dara

    Credited author of the sound.

  • soundClipIdstring

    7482900000000000011

    Id of the sound the post uses. Pass it to tiktok.song or tiktok.song_videos as clipId.

  • soundTitlestring

    original sound

    Name of the sound. "original sound" means the creator's own audio rather than a licensed track.

  • urlstring

    Canonical TikTok URL of the video. Populated whenever the provider has data for the entity.

  • videoUrlstring

    Playable video URL, or null when TikTok returns none. Signed and short-lived, so the query string is load-bearing and kept intact.

  • viewsinteger

    3120000

top level
  • foundboolean

    true

  • reason"not_found"

    Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.

You get back. Named, typed fields in the same shape whichever source answers.

FAQ

About the TikTok Profile reposts API

The AnyAPI TikTok Profile reposts API returns TikTok profile reposts data as normalized JSON from one POST call to /v1/run/tiktok.profile_reposts. List the videos a TikTok creator has reposted to their profile, with view, like and comment counts and cursor pagination. AnyAPI returns one normalized schema whichever source serves it. It costs from $1.20 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 99.4% of TikTok profile reposts calls through AnyAPI succeeded, with a median response time of 1.3 seconds across 1,617 measured calls.

It costs from $1.20 per 1,000 requests, in US dollars with no subscription and no monthly minimum. You fund one USD wallet and each call draws it down. Some failed wallet-funded requests incur processing charges that we pass through at cost, with no markup; the error response shows the amount charged.

List the videos a TikTok creator has reposted to their profile, with view, like and comment counts and cursor pagination. The response is normalized JSON with the same envelope every AnyAPI endpoint returns, so parsing a second endpoint is a change of URL and nothing else.

Over the last 30 days, 99.4% of TikTok profile reposts calls through AnyAPI succeeded, with a median response time of 1.3 seconds across 1,617 measured calls. These are AnyAPI's own measurements of traffic through the gateway, recomputed continuously, not a published service-level target.

Yes. A new AnyAPI account starts with $0.10 of free balance and no card required, which covers 83 TikTok Profile reposts calls at $0.0012 each.

Send a POST request to https://api.getanyapi.com/v1/run/tiktok.profile_reposts with your AnyAPI key in an "Authorization: Bearer" header and the input as a JSON body. The same key and the same wallet work on every AnyAPI endpoint.

No. You add US dollars to one prepaid AnyAPI balance and each request draws it down. There is no monthly plan and no minimum, and the same balance pays for every AnyAPI endpoint.

Yes. Install @getanyapi/sdk from npm for TypeScript or getanyapi from pip for Python. Both call every AnyAPI endpoint with the same key, and any HTTP client works too.

Yes. An agent can connect to the AnyAPI MCP server at https://api.getanyapi.com/mcp, or create its own free-trial key with one unauthenticated POST to https://api.getanyapi.com/agent/signup and call this endpoint over HTTP.