小紅書 user_posts API
一次 REST 呼叫取得 小紅書 user_posts 資料——以 FetchPI 全平台共用的穩定 JSON 結構標準化輸出。
- 1 個已發布端點
- GET /v1/xhs/users/{username}/posts
契約摘要(英文): List recent posts of a user (capability xhs.user_posts)
- 標準化回應實體
- xiaohongshu/user_posts
- capability
- xhs.user_posts
每個回應都附帶新鮮度(cache / default / live)與計費中繼資料。
使用場景
- 按順序監測 {{platform}} 帳號發布的內容,每筆都帶標準化指標。
- 排程任務重新查詢該 feed 即可發現新動態,適合告警與摘要流程。
- 用口徑一致的結構化輸出,橫向比較各帳號的發文節奏與互動表現。
回應欄位
Xiaohongshu user posts response (normalized envelope)
Response envelope for GET /v1/xhs/users/{username}/posts (capability xhs.user_posts). Cursor is opaque and platform-independent; when the upstream provider is switched the old cursors become invalid. Page size follows the request's `limit` parameter (1..100, default 20). The upstream app surface addresses users by numeric user id — the caller value is forwarded as-is.
| 欄位 | 類型 | 必填 | 說明 |
|---|---|---|---|
| data | post[] | 必填 | — |
| next_cursor | string | null | 必填 | Opaque pagination cursor; null when the list is exhausted. |
| meta.request_id | string | 必填 | — |
| meta.freshness.mode | cache | default | live | 必填 | — |
| meta.freshness.age_seconds | integer | null | 可選 | — |
| meta.freshness.source_layer | cache | db | upstream | 必填 | — |
| meta.freshness.stale | boolean | 可選 | — |
| meta.billing.cache_hit | boolean | 必填 | — |
| meta.billing.amount_credits | integer | 必填 | Credits actually charged for this request (the settlement unit; 1 credit = $0.0001, permanent). |
欄位備註為契約英文原文。
回應中繼資料
| 欄位 | 類型 | 必填 | 說明 |
|---|---|---|---|
| mode | cache | default | live | 必填 | Effective mode after merging param > max_age > source policy (D-004). |
| age_seconds | integer | null | 可選 | Age of served data; null when unknown. |
| source_layer | cache | db | upstream | 必填 | Which layer served the response (PRD §10). |
| stale | boolean | 可選 | True when stale data was served under stale_if_error / SWR (D-004). |
| billing.amount_credits | integer | 必填 | Micro-USD (1e-6 USD) actually charged for this request. |
| billing.cache_hit | boolean | 必填 | — |
欄位備註為契約英文原文。
請求與回應範例
/v1/xhs/users/{username}/postscurl -H "Authorization: Bearer $MESHDATA_API_KEY" \
"https://api.fetchpi.com/v1/xhs/users/newdev/posts"{
"data": [
{
"id": "66f2b1de000000001f0167a1",
"platform": "xiaohongshu",
"type": "post",
"author": null,
"title": "First note on the platform.",
"text": null,
"created_at": null,
"metrics": {
"likes": 512,
"collects": 0,
"comments": 0,
"shares": 0
},
"attachments": [
{
"type": "photo",
"url": "https://cdn.example.com/n1-cover.jpg"
}
],
"fetched_at": "2026-09-18T09:00:00Z"
},
{
"id": "66f2b1de000000001f0167a2",
"platform": "xiaohongshu",
"type": "post",
"author": null,
"title": "Freshness modes, explained in 30s.",
"text": null,
"created_at": null,
"metrics": {
"likes": 512,
"collects": 0,
"comments": 0,
"shares": 0
},
"attachments": [
{
"type": "video",
"preview_image_url": "https://cdn.example.com/n2-cover.jpg"
}
],
"fetched_at": "2026-09-18T09:00:00Z"
}
],
"next_cursor": "eyJ2IjoxLCJzcmMiOiJ4dGhpcmQiLCJwb3MiOiI2NmYyYjFkZTAwIn0",
"meta": {
"request_id": "req_01HTXQ8Z9HTQ",
"freshness": {
"mode": "default",
"age_seconds": 0,
"source_layer": "upstream",
"stale": false
},
"billing": {
"amount_credits": 200,
"cache_hit": false
}
}
}免費試用
註冊免費帳號、取得 API Key,即可在瀏覽器版 Playground 直接呼叫該端點。
在 Playground 試用該端點的參數表、錯誤碼與回應語義見 API 文件。
查看端點參考常見問題
可以按排程輪詢 feed 嗎?
可以——這就是普通的 REST 呼叫,任何排程器都能定期查詢。用新鮮度參數控制每次回傳的資料新舊與計費方式。
可以免費試用該端點嗎?
可以——註冊帳號、取得 API Key 後,即可在主控台的 Playground 呼叫該端點。
user_posts 能力怎麼計費?
Data API 按請求以點數計費,cache/live 新鮮度有不同倍率。目前各能力的價格以價格頁為準。