tiktok

Profile › Videos

Returns a page of an account's recent public videos, each with caption, view, like, comment and share counts, and a thumbnail URL. Handle lookup covers login or age-walled profiles.

Use it to list what one account has posted and page through it. Results come back in TikTok's own order, so sort_by does not reorder them. To find videos from many accounts by keyword, use search.

10 credits per call.

Paginates by cursor: see Pagination.

get/v1/tiktok/profile/videos

Request

  • Base URL: https://api.insightsocial.app
  • URL: https://api.insightsocial.app/v1/tiktok/profile/videos
  • Auth: API key in header x-api-key

Query parameters

handlestring
Example:charlidamelio

TikTok username without the @ symbol. Provide at least one of: handle, user_id.

user_idstring

TikTok user id. Use this for faster responses. Provide at least one of: handle, user_id.

sincestring
Example:2026-09-01

Only videos published on or after this date: YYYY-MM-DD (midnight UTC) or an ISO 8601 timestamp. Older videos are left off the page, and the page that reaches one ends the walk: next_cursor is not returned and pagination.stopped_at is since. Pinned videos sit out of date order and never end the walk. The page still costs what a page costs, so a daily poll pays for the pages it walks and no more.

stop_at_idstring

The id (post.id) or URL (post.url) of the newest video you already hold. The page stops just before it: that video and everything after it are left off, next_cursor is not returned, and pagination.stopped_at is known_id. A pinned video never counts as the stop point. If it is not on this page the page is returned in full with its cursor, so keep walking. pagination.stopped_at is end when the list ran out first and null while there is more to walk.

sort_by'latest' | 'popular'

Accepted for compatibility and ignored on this endpoint: neither latest nor popular reorders the page. Videos come back in TikTok's own order. To rank a creator's videos by views or likes, page through with cursor and sort the collected rows yourself.

regionstring

Two-letter country code that localises the request. Defaults to US. It does not filter the videos. The country TikTok registers each video to is post.ext.region.

trimboolean

Accepted for compatibility; the response is already the canonical shape, so this flag has no effect.

dry_run'1'

Set to 1 to get the price of this call without making it: data.dry_run carries credits_min and credits_max. Nothing is charged.

untilstring

Only rows published on or before this date: YYYY-MM-DD (that whole UTC day is included) or an ISO 8601 timestamp. Newer rows are left off each page and the walk does not stop, so older pages follow. A row with no date is kept.

cursorstring

The pagination.next_cursor from the previous page, sent back unchanged. Omit it for the first page.

Response

Success.

successtrue required
platformstring required
endpointstring required
schema_version'2' required
unavailablestring[] required
credits_usedinteger required
credits_remaininginteger required
request_idstring required
cachedboolean required
idempotent_replayboolean required
charge_reasonstring required
free_callboolean required

Changes

No recorded changes to this operation across all 1 revision of this API.