Skip to content
scrapeatlas.Dashboard

Get a Kwai user’s posts

Try in Playground

Retrieve a public Kwai feed page with albums, post IDs and media metadata in feed order. Pass data.cursor as cursor for continuation.

GET/v1/kwai/user/postsx-api-key
x-api-keystringrequiredheader

Your ScrapeAtlas customer key. Create one on /account/ and set SCRAPEATLAS_API_KEY.

Query parameters
4
handlestringquery

Kwai handle without @. Exactly one of handle or url is required. ASCII letters, digits, underscore, hyphen and dot; starts with a letter or digit, at most 100 characters.

Exampleexample
urlstringquery

Canonical HTTPS kwai.com or www.kwai.com /@handle URL. Queries, fragments, short links, credentials and nonstandard ports are rejected.

max 300 chars

countstringquery

Posts per page, 1–50; defaults to 20.

Example20
cursorstringquery

Previous data.cursor, a numeric source token up to 32 characters. Bound to the same profile by the caller; do not alter it.

Response fields
43
requestIdstring

Request correlation identifier.

Upstream attempts, combined decoded response bytes and elapsed milliseconds.

accounting.upstreamRequestsinteger

Always included.

≥ 0

accounting.responseBytesinteger

Always included.

≥ 0

accounting.durationMsnumber

Always included.

≥ 0

successboolean

True when usable public data was retrieved.

statusenum

success, partial, failed or challenged. Inspect coverage even for HTTP 200.

one of: success, partial

sourceUrlstring

Canonical public Kwai profile or post URL.

absolute HTTPS URL

fetchedAtstring

UTC retrieval time.

Complete means this supported bounded response has no known omissions; it does not mean an entire account was enumerated.

coverage.sourcestring

Always included.

coverage.completeboolean

Always included.

coverage.warningsstring[]

Always included.

Provider data. Unknown fields are null; unknown counts are never zero-filled.

Ordered post records with exact string id, numeric photo_id alias, caption, UTC and display timestamps, media URLs, source counters, author, music and tags.

up to 50 items

data.posts.idstring

Always included.

data.posts.photo_idinteger

Always included.

≥ 0

data.posts.urlstring

Always included.

absolute HTTPS URL

data.posts.captionstringnullable

Always included.

data.posts.created_atstringnullable

Always included.

data.posts.created_at_textstringnullable

Always included.

data.posts.video_urlstringnullable

Always included.

data.posts.cover_urlstringnullable

Always included.

data.posts.view_countintegernullable

Always included.

data.posts.like_countintegernullable

Always included.

data.posts.comment_countintegernullable

Always included.

data.posts.forward_countintegernullable

Always included.

Always included.

data.posts.author.idinteger

Always included.

-9007199254740991 – 9007199254740991

data.posts.author.handlestring

Always included.

data.posts.author.usernamestring

Always included.

data.posts.author.avatar_urlstringnullable

Always included.

data.posts.author.verifiedbooleannullable

Always included.

data.posts.author.verified_descriptionstringnullable

Always included.

Always included.

data.posts.music.idinteger

Always included.

-9007199254740991 – 9007199254740991

data.posts.music.namestringnullable

Always included.

data.posts.music.artiststringnullable

Always included.

data.posts.music.urlstringnullable

Always included.

data.posts.tagsJSON[]nullable

Always included.

data.albumsobject[]

Source album metadata, at most 50; contents are not fetched. The source omits this metadata on later pages, returned as []. albumIdStr is the exact identifier where present.

up to 50 items

data.cursorstringnullable

Source continuation token or null at the end. Repeated or empty advancing pages fail explicitly.

data.has_moreboolean

Whether the source supplied a continuation token.

HTTP 200 returns the success variant. Check status: partial means usable data with warnings, and failed or challenged requests carry a failure object described in Errors & responses.

Error codes
12
HTTPfailure.codeMeaning
200partialKnown omissions: profile_counts_unavailable, privacy_unavailable, music_unavailable, tags_unavailable, post_counts_unavailable, media_unavailable, timestamp_unavailable or album_limit.
400invalid_requestMissing, duplicate, ambiguous, unsafe or unsupported inputs.
401unauthorizedMissing or invalid worker API key.
403restrictedThe requested feed or post is private or restricted.
404not_foundThe source returned no requested profile or post.
429upstream_rate_limitedSource throttling; no retry.
502upstream_challengedThe source challenged the request; no retry.
502unsupported_pageMalformed response, mismatched identity, or invalid pagination.
502response_too_large payload_too_complexByte, depth or node bounds exceeded.
502unsafe_redirect request_limit upstream_errorThe bounded source request failed.
503busyAll worker slots are occupied.
504timeoutTotal request deadline expired.