/v1/call/xiaohongshu.kol_audienceXiaohongshu (RedNote) KOL audience profile API (Pugongying)
Only on Xiaohongshu.
Get who follows a Xiaohongshu creator, by PGY creator ID: the share of each segment by gender, age, province, city, interest and device, and the day the figures are of. A call to the Xiaohongshu (RedNote) KOL audience profile API (Pugongying) costs 24 credits ($0.048 to $0.08 depending on the pack); failed calls are free. Call it over HTTP or from your AI client over MCP.
Last updated:
What you get from the Xiaohongshu (RedNote) KOL audience profile API (Pugongying).
From a recorded answer.
A recorded call returned the object below, field by field. Names and text are removed from the sample; the numbers are as recorded.
| Field | In the recorded answer |
|---|---|
| title | null |
| url | null |
| rank | null |
| heat | null |
| fields.measured_at | 2026-10-10T16:00:00.000Z |
| fields.gender | 2 entries |
| fields.age | 2 entries |
| fields.province | 2 entries |
| fields.city | 2 entries |
| fields.interest | 2 entries |
| fields.device | 2 entries |
| fields.city_tier | null: Xiaohongshu cannot give it |
| fields.crowd | null: Xiaohongshu cannot give it |
| fields.purchase_category | null: Xiaohongshu cannot give it |
| fields.purchase_amount | null: Xiaohongshu cannot give it |
24 credits a call (≈ $0.048–$0.08): about 125 calls for $10.
Xiaohongshu (RedNote) KOL audience profile API (Pugongying): request and response
curl https://api.socialtoai.com/v1/call/xiaohongshu.kol_audience \ -H "Authorization: Bearer $SOCIALTOAI_API_KEY" \ -H "Idempotency-Key: $(uuidgen)" \ -H "Content-Type: application/json" \ -d '{ "id": "5c0017ef6b58b740c92463fb" }'import osimport uuidimport requestsresponse = requests.post( "https://api.socialtoai.com/v1/call/xiaohongshu.kol_audience", headers={ "Authorization": f"Bearer {os.environ['SOCIALTOAI_API_KEY']}", # A new key for each request; the same one again retries it without paying twice. "Idempotency-Key": str(uuid.uuid4()), }, json={ "id": "5c0017ef6b58b740c92463fb", },)print(response.json())# Connected over MCP? Ask in plain words.Use the Xiaohongshu PGY creator audience profile interface (xiaohongshu.kol_audience) with id: 5c0017ef6b58b740c92463fb.# Your AI calls the call tool with:{ "id": "5c0017ef6b58b740c92463fb"}{ "op": "xiaohongshu.kol_audience", "platform": "xiaohongshu", "status": "ok", "items": [ { "platform": "xiaohongshu", "id": "…", "ref": "…", "approx": [], "type": "entry", "entry_type": "audience", "title": null, "url": null, "rank": null, "heat": null, "fields": { "measured_at": "2026-10-10T16:00:00.000Z", "gender": [ { "name": "male", "share": 0.27827228950824456, "count": null }, { "name": "female", "share": 0.7217277104917554, "count": null } ], "age": [ { "name": "<18", "share": 0.009193054136874362, "count": null }, { "name": "18-24", "share": 0.10156135998832627, "count": null } ], "province": [ { "name": "浙江", "share": 0.3215255771842463, "count": null }, { "name": "江苏", "share": 0.24728383884110458, "count": null } ], "city": [ { "name": "温州", "share": 0.2359665006790403, "count": null }, { "name": "徐州", "share": 0.1805115436849253, "count": null } ], "interest": [ { "name": "美食", "share": 0.15246001214820815, "count": null }, { "name": "旅游", "share": 0.1216170614834312, "count": null } ], "device": [ { "name": "苹果", "share": 0.756649688737974, "count": null }, { "name": "小米", "share": 0.0622524052065648, "count": null } ], "city_tier": null, "crowd": null, "purchase_category": null, "purchase_amount": null } } ], "unavailable": ["fields.gender.count", "fields.age.count", "fields.province.count", "fields.city.count", "fields.interest.count", "fields.device.count", "fields.city_tier", "fields.crowd", "fields.purchase_category", "fields.purchase_amount"], "cost_credits": 24}- entry_type
- audience
- measured_at
- 2026-10-10T16:00:00.000Z
- city_tier
null- crowd
null- purchase_category
null- purchase_amount
null
Names and text were removed from the sample; the numbers are as recorded.
Xiaohongshu (RedNote) KOL audience profile API (Pugongying) parameters.
1 parameter, all required.
Send them as a JSON body with POST. Your key goes in the Authorization header, never in the URL.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| id | string | Required | — | PGY creator ID, 24 hexadecimal characters; take it from the PGY creator search |
Where to get what you send.
idPGY creator ID, 24 hexadecimal characters; take it from the PGY creator search (e.g. 5c0017ef6b58b740c92463fb)
Every item these return carries its ref; send it as it is:
Xiaohongshu (RedNote) KOL audience profile API (Pugongying) response fields.
What Xiaohongshu cannot give is marked.
| Field | Type | Meaning |
|---|---|---|
| items[].title | string | The entry's title or name. |
| items[].url | string | A link that opens it; null where the platform's list has none. |
| items[].rank | integer | Position on a board, from 1. |
| items[].heat | integer | The platform's heat score. |
| items[].fields.measured_at | string | The day the figures are for, as the start of that day in China time (UTC+8). |
| items[].fields.gender | array | By gender: name, share, count.count: always null here |
| items[].fields.age | array | By age group: name, share, count.count: always null here |
| items[].fields.province | array | By province: name, share, count.count: always null here |
| items[].fields.city | array | By city, the largest only: name, share, count.count: always null here |
| items[].fields.interest | array | By interest: name, share, count.count: always null here |
| items[].fields.device | array | By phone brand: name, share, count.count: always null here |
| items[].fields.city_tier | arrayalways null | By city tier: name, share, count. |
| items[].fields.crowd | arrayalways null | By the consumer groups the platform sorts people into: name, share, count. |
| items[].fields.purchase_category | arrayalways null | By category of goods bought: name, share, count. |
| items[].fields.purchase_amount | arrayalways null | By amount spent per order: name, share, count. |
nullFields Xiaohongshu cannot giveRead null as “Xiaohongshu did not give this”, not as zero. These are always null on this call:
fields.city_tierBy city tier: name, share, count.fields.crowdBy the consumer groups the platform sorts people into: name, share, count.fields.purchase_categoryBy category of goods bought: name, share, count.fields.purchase_amountBy amount spent per order: name, share, count.fields.gender.countBy gender: name, share, count.fields.age.countBy age group: name, share, count.fields.province.countBy province: name, share, count.fields.city.countBy city, the largest only: name, share, count.fields.interest.countBy interest: name, share, count.fields.device.countBy phone brand: name, share, count.
Every item also has platform, id, ref, approx and type; the response around the items is the same on every call. Response format
Xiaohongshu (RedNote) KOL audience profile API (Pugongying): paging and billing.
5 calls per second per key, 20 after a purchase; going over is not charged. Rate limits
A failed call costs 0 credits and is never retried on its own. Error codes
Interface last tested: 2026-10-30. Each call reads from the platform, and fetched_at in the answer is when it was read. The same request sent again with the same key within 5 minutes is a replay (replayed: true): 0 credits, and the answer as first read.
Once connected over MCP, these questions use the Xiaohongshu (RedNote) KOL audience profile API (Pugongying).
Get who follows a Xiaohongshu creator, by PGY creator ID: 5c0017ef6b58b740c92463fb.
24 creditscall {"op":"xiaohongshu.kol_audience","id":"5c0017ef6b58b740c92463fb"}Search Xiaohongshu creators on PGY by terms, matched against what they write about: 咖啡, then for the first 3: get who follows a Xiaohongshu creator, by PGY creator ID.
96 creditscall {"op":"xiaohongshu.kol_search","query":"咖啡"}call {"op":"xiaohongshu.kol_audience","id":"<ref>"} × 3
Give this to your AI.
Copy it into Claude or ChatGPT.
How to connectUse the SocialToAI MCP server (https://mcp.socialtoai.com/mcp) for this: Get who follows a Xiaohongshu creator, by PGY creator ID: 5c0017ef6b58b740c92463fb.Call the call tool with {"op":"xiaohongshu.kol_audience","id":"5c0017ef6b58b740c92463fb"}. Needed: id.For several, call it once for each: 24 credits each.Before you start, work out how many credits it will take in all and ask me; call it only after I agree.What usually comes next, with the ref or username it returns: call xiaohongshu.kol_notes (PGY creator notes).If SocialToAI is not connected yet, tell me how to connect it; never ask me to paste a key into the chat.Answer with a link to every item you used, and tell me how many credits it cost.Paste it into a chat once SocialToAI is connected over MCP. There is no key in it: Claude and ChatGPT sign in, other clients send a key in a header.
The interface of the same name on other platforms.
All platforms and prices/v1/call/xiaohongshu.kol_audience{ "id": "5c0017ef6b58b740c92463fb" }24 creditsper callRead next.
What its own API allows, who can use it and what it costs, with sources.
Finding creators and reading their data, platform by platform.
connect ChatGPT to Xiaohongshu notes and comments
connect Claude Code and Cursor to Xiaohongshu and Douyin with no QR code or cookie, and what a self-run server costs you
monitor Xiaohongshu, Douyin and Weibo from outside China with AI, in English, with original links
PGY and Xingtu by interface: how each search matches, the IDs they take, what a shortlist costs
Let your AI read Xiaohongshu.