Get one post in full
One public Weibo post in full: the complete text, author, time and place of posting, exact repost, comment, like and read counts, topics, photos and video, and the post it reposts. 1 credit.
/post-detail Posts & comments https://api.fetchlayer.dev/weibo/post-detail Headers
Authorization string required Bearer token — your FetchLayer API key.
Parameters
post string required A post: its link (weibo.com/<user>/<id> or m.weibo.cn/detail/<id>), its numeric id, or the short id from its link (RmPD8ERtm in weibo.com/1642634100/RmPD8ERtm).
format string optional json or markdown, lowercase; any other value is a 400. Over MCP, markdown returns the result rendered as text; the REST API accepts it and returns JSON. (default: json)
timeoutMs integer optional Time limit for the whole request, in milliseconds (1000–120000); a value outside that range is a 400. When it runs out, a paged request returns what it has with nextCursor, billed for the pages it read; a request with nothing to return yet fails with a 503 you can retry, marked with the response header X-Timeout-Source: caller.
Response Fields
post-detail
Get one post in full
transport string The data source: always the platform id, "weibo".
scrapedAt string When the result was produced (ISO 8601).
notes string[] Caveats you can act on: a list that ends where Weibo stops showing more, long posts shortened in a list, paid placements left out. Empty when there are none. An empty result always comes with a note explaining it.
skippedRecords object[] Records Weibo sent that could not be read, each as { id, reason, fieldsPresent }; id may be null. Normally empty. One unreadable record never costs the rest of the response or the cursor.
pagesFetched number Full pages of results returned, minimum 1 — 20 comments or replies, 50 search posts, 48 media posts — which is what the request costs: one credit each.
post object The post. A post that does not exist or is not public is a 404 naming it.
post.id string The post’s numeric id, which post-detail and post-comments accept.
post.shortId string The id in post links (RmPD8ERtm). post-detail and post-comments accept it too.
post.url string Link to the post.
post.text string The post’s text, with #topics# and @mentions as written.
post.textTruncated boolean True when a list shortened a long post. post-detail always returns the full text.
post.createdAt string When it was posted (ISO 8601, UTC).
post.postedFrom string | null The province or country Weibo says it was posted from, such as 广东, or null.
post.source string | null The app or label Weibo shows under the post.
post.author.id string The account’s numeric id, which user-profile and user-posts accept.
post.author.screenName string The display name.
post.author.url string Link to the profile.
post.author.avatarUrl string | null Avatar image.
post.author.verified boolean Whether Weibo shows a verification badge.
post.author.verifiedReason string | null Weibo’s verification text, such as 新浪科技官方微博, or null.
post.author.followersCount number | null Followers as an exact figure where Weibo publishes one here, else null. user-profile always has the exact figure.
post.author.followersCountText string | null Followers as Weibo displays them, rounded (2380万 is 23.8 million).
post.stats object reposts, comments, likes and reads. Exact figures, not the rounded ones on the page. A null counter means Weibo did not publish that value, never zero; reads is often null.
post.roundedStats string[] Which counters in stats came back rounded. Empty means every counter is exact, which is the normal case.
post.topics string[] The #topics# the post carries, without the #.
post.media object[] Photos and video, in order. Each has kind (image, gif, video or live-photo), url, downloadUrl, width, height, durationSeconds and coverUrl.
post.media[].url string Weibo’s own link to the file. It opens only from Weibo’s pages; use downloadUrl.
post.media[].downloadUrl string A https://api.fetchlayer.dev/weibo/media link that opens anywhere and delivers the photo or video. Each request to it costs 1 credit.
post.editCount number | null How many times the post was edited, or null.
post.isPinned boolean Whether the author pinned it to their profile.
post.mediaTruncated boolean True when a list showed fewer photos than the post has. post-detail returns every one.
post.repostOf object | null The post this one reposts, in the same shape, or null for an original post.
Request
curl -X POST "https://api.fetchlayer.dev/weibo/post-detail" \
-H "Authorization: Bearer ss-your-key" \
-H "Content-Type: application/json" \
-d '{"post":"https://weibo.com/6420207784/RmOx7c1Yt"}'Response
{
"transport": "weibo",
"skippedRecords": [],
"scrapedAt": "2026-10-15T15:25:22.762Z",
"notes": [],
"pagesFetched": 1,
"post": {
"id": "5354374692867529",
"shortId": "RmOx7c1Yt",
"url": "https://weibo.com/6420207784/RmOx7c1Yt",
"text": "深圳11月1日起,每天0时至24时,全市禁止机动车鸣喇叭,有效期5年 … #深圳11月1日起全域全天禁鸣喇叭#",
"textTruncated": false,
"createdAt": "2026-10-15T12:04:29.000Z",
"postedFrom": "广东",
"source": "搞笑幽默视频博主",
"author": {
"id": "6420207784",
"screenName": "1024专员",
"url": "https://weibo.com/u/6420207784",
"verified": true,
"verifiedReason": "搞笑幽默视频博主",
"followersCount": null,
"followersCountText": "172.8万"
},
"stats": {
"reposts": 33,
"comments": 234,
"likes": 400,
"reads": null
},
"roundedStats": [],
"topics": [
"深圳11月1日起全域全天禁鸣喇叭"
],
"media": [
{
"kind": "image",
"url": "https://wx1.sinaimg.cn/mw2000/0070uxksgy1ii3aj0oaluj30wr1ii104.jpg",
"downloadUrl": "https://api.fetchlayer.dev/weibo/media?url=https%3A%2F%2Fwx1.sinaimg.cn%2Fmw2000%2F0070uxksgy1ii3aj0oaluj30wr1ii104.jpg",
"width": 1179,
"height": 1962,
"durationSeconds": null,
"coverUrl": null
}
],
"editCount": null,
"isPinned": false,
"mediaTruncated": false,
"repostOf": null
}
}