TikTok User stories API
Get a TikTok creator's active public stories by username: video or photo links, cover, posting and expiry times, and view, like, share and save counts.
Pricing and providers
TikTok User stories API pricing: one API, 2 interchangeable providers
The cheapest provider serves first. If it fails, the next one takes over in the same call.
Try it
Get TikTok user stories in one request
{
"data": {
"stories": [
{
"authorHandle": "alex_rivera",
"caption": "A short example description of this item.",
"comments": 12500,
"createdUtc": 12.5,
"durationSeconds": 12.5,
"expiresUtc": 12.5,
"id": "a1b2c3d4",
"image": "https://example.com/image.jpg",
"imageUrls": [
"https://example.com/image.jpg"
],
"likes": 12500,
"saves": 42,
"shares": 13,
"soundTitle": "Example title",
"url": "https://example.com/page",
"videoUrl": "https://example.com/page",
"views": 12500
}
]
},
"found": true,
"reason": "not_found"
}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-19 · uptime and latency measured over 30d
Request body
JSON, posted to this endpoint.
- handlestring
jasonderulo
TikTok username, without the @ (e.g. "jasonderulo").
- requireFieldsarray
Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `expiresUtc`, and it is served only by a source that returns every one of them. Fields you do not name are still returned whenever the serving source has them. This can raise your price: when the cheapest source cannot return a named field, a dearer source serves, and you are quoted and charged its price. A named field can still be absent on a story that genuinely lacks it. Naming a combination that no single source returns together is refused as invalid input, with no charge.
Response
JSON, one example value per field.
The account's active public stories, up to 20, oldest first. Populated whenever the provider has data for the entity.
- authorHandlestring
Author's TikTok handle, without the leading @.
- captionstring
Caption text; usually empty on stories.
- commentsinteger
Comment count.
- createdUtcnumber
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.
- durationSecondsnumber
Video length in seconds; 0 for a photo story.
- expiresUtcnumbercan require
When the story stops being visible. UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds. Null when this source does not report it.
- idstring
Story (video or photo post) id. Populated whenever the provider has data for the entity.
- imagestring
Cover image URL. Signed and short-lived, so keep the query string. Populated whenever the provider has data for the entity.
- imageUrlsstring[]
Photo URLs for a photo story; empty for a video story. Signed and short-lived.
- likesinteger
Like count.
- savesinteger
Save (favorite) count.
- sharesinteger
Share count.
- soundTitlestring
Name of the sound the story uses; null when it has none.
- urlstring
The story on tiktok.com. Populated whenever the provider has data for the entity.
- videoUrlstring
Playable video URL for a video story; null for a photo story. Signed and short-lived, so keep the query string.
- viewsinteger
Play count.
- foundboolean
True when the account has active public stories; false when it has none right now or the account does not exist. Stories last 24 hours, so the same account can flip between the two.
- 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.
FAQ
About the TikTok User stories API
The AnyAPI TikTok User stories API returns TikTok user stories data as normalized JSON from one POST call to /v1/run/tiktok.user_stories. Get a TikTok creator's active public stories by username: video or photo links, cover, posting and expiry times, and view, like, share and save counts. AnyAPI routes each request across 2 sources and falls back automatically when one fails. It costs from $1.10 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 100.0% of TikTok user stories calls through AnyAPI succeeded, with a median response time of 1.3 seconds across 1 measured calls.