Social Fetch
TikTok

List TikTok profile videos

Lists videos for a TikTok profile with cursor-based pagination. Optional query `sortBy` is `latest` or `popular`; when omitted, a default ordering applies—pass `sortBy` explicitly if you need predictable ordering. This route does not expose `lookupStatus`; an empty `data.videos` array can occur for several reasons—call `GET /v1/tiktok/profiles/{handle}` first when you need explicit `found` / `private` / `not_found` before interpreting an empty list.

Operation

GET/v1/tiktok/profiles/{handle}/videos

Headers

x-api-keystringrequired(header)

API key (`sfk_...`)

Parameters

handlestringrequired

TikTok handle whose videos should be listed.

min 1 chars · max 64 chars

sortBystring(query)

Optional sort order for the returned TikTok videos.

one of: latest, popular

cursorstring(query)

Pagination cursor returned by a previous response.

min 1 chars

userIdstring(query)

Optional TikTok user id to speed up the request.

min 1 chars

regionstring(query)

Optional region (country code) for the request.

min 1 chars

trimboolean(query)

Optional flag for a smaller response with fewer fields.

Response fields

data
objectrequired

Endpoint-specific response payload.

datavideos
arrayrequired

TikTok videos for the requested profile page. An empty array can mean no videos in the selected sort window, a private profile, or other cases—this route has no `lookupStatus`; use the profile endpoint when you need explicit outcomes.

datavideos[]id
stringrequired

TikTok video identifier.

min 1 chars

datavideos[]caption
stringrequirednullable

Caption text shown for the TikTok video.

datavideos[]createdAt
stringrequirednullable

ISO-8601 timestamp when the video was created, when available.

datavideos[]url
stringrequirednullable

Canonical public TikTok URL for the video.

datavideos[]thumbnailUrl
stringrequirednullable

Best available thumbnail or cover image URL for the video.

datavideos[]durationMs
integerrequirednullable

Video duration in milliseconds, when available.

≥ 0

datavideos[]pinned
booleanrequired

Whether the video is pinned on the profile.

datavideos[]isAd
booleanrequired

Whether TikTok marks the video as an ad.

datavideos[]stats
objectrequired

Engagement metrics for the video.

datavideos[]statsviews
integerrequired

View count reported by TikTok for the video.

≥ 0

datavideos[]statslikes
integerrequired

Like count reported by TikTok for the video.

≥ 0

datavideos[]statscomments
integerrequired

Comment count reported by TikTok for the video.

≥ 0

datavideos[]statsshares
integerrequired

Share count reported by TikTok for the video.

≥ 0

datavideos[]statssaves
integerrequired

Save or collection count reported by TikTok for the video.

≥ 0

datavideos[]media
objectrequired

Download-related media URLs for the video.

datavideos[]mediadownloadUrl
stringrequirednullable

Best available downloadable video URL, usually with watermark.

datavideos[]mediadownloadWithoutWatermarkUrl
stringrequirednullable

Best available downloadable video URL without watermark.

datavideos[]details
object

Additional TikTok-native fields for this video (for example author, music, challenges, and full `video` and `statistics` objects). Keys that only duplicate the top-level fields are omitted.

datapage
objectrequired

Pagination state for the current response.

datapagenextCursor
stringrequirednullable

Cursor to pass in the next request when more videos are available.

datapagehasMore
booleanrequired

Whether another page of videos is available.

meta
objectrequired

Metadata describing the request and billing outcome.

metarequestId
stringrequired

Unique request identifier for tracing this API call.

min 1 chars

metacreditsCharged
integerrequired

Credits charged for this request.

≥ 0

metaversion
stringrequired

Public API version that served the response.

one of: v1

Code example

Responses

TikTok videos for the requested profile.

Error codes

bad_requestinsufficient_creditsinternal_errorlookup_failedtemporarily_unavailableunauthorized

On this page