---
title: "Xiaohongshu (RedNote) KOL audience profile API (Pugongying) · SocialToAI"
canonical: https://socialtoai.com/xiaohongshu-kol-audience-api/
updated: 2026-10-30
---

# Xiaohongshu (RedNote) KOL audience profile API (Pugongying)

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.

- Page: https://socialtoai.com/xiaohongshu-kol-audience-api/
- Last updated: 2026-10-30

| Request | Price key | Credits |
| --- | --- | --- |
| `POST /v1/call/xiaohongshu.kol_audience` | `xiaohongshu.kol_audience` | 24 |

## What you get from the Xiaohongshu (RedNote) KOL audience profile API (Pugongying)

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

```bash
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"
  }'
```

```python
import os
import uuid
import requests

response = 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())
```

## Xiaohongshu (RedNote) KOL audience profile API (Pugongying) parameters

| 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

- `id`: PGY creator ID, 24 hexadecimal characters; take it from the PGY creator search (e.g. `5c0017ef6b58b740c92463fb`)
  Returned as `ref` by: [Xiaohongshu (RedNote) KOL search API (Pugongying)](https://socialtoai.com/xiaohongshu-kol-search-api.md)

## Xiaohongshu (RedNote) KOL audience profile API (Pugongying) response fields

| Field | Type | Meaning | Given |
| --- | --- | --- | --- |
| `items[].title` | string | The entry's title or name. | yes |
| `items[].url` | string | A link that opens it; null where the platform's list has none. | yes |
| `items[].rank` | integer | Position on a board, from 1. | yes |
| `items[].heat` | integer | The platform's heat score. | yes |
| `items[].fields.measured_at` | string | The day the figures are for, as the start of that day in China time (UTC+8). | yes |
| `items[].fields.gender` | array | By gender: name, share, count. | yes; count always null |
| `items[].fields.age` | array | By age group: name, share, count. | yes; count always null |
| `items[].fields.province` | array | By province: name, share, count. | yes; count always null |
| `items[].fields.city` | array | By city, the largest only: name, share, count. | yes; count always null |
| `items[].fields.interest` | array | By interest: name, share, count. | yes; count always null |
| `items[].fields.device` | array | By phone brand: name, share, count. | yes; count always null |
| `items[].fields.city_tier` | array | By city tier: name, share, count. | always null: Xiaohongshu does not give it |
| `items[].fields.crowd` | array | By the consumer groups the platform sorts people into: name, share, count. | always null: Xiaohongshu does not give it |
| `items[].fields.purchase_category` | array | By category of goods bought: name, share, count. | always null: Xiaohongshu does not give it |
| `items[].fields.purchase_amount` | array | By amount spent per order: name, share, count. | always null: Xiaohongshu does not give it |

Every item also has platform, id, ref, approx and type; the response around the items is the same on every call. [Response format](https://socialtoai.com/docs/api/response.md)

## Sample response

Sample data: names, links and text are replaced by placeholders; the numbers are as recorded.

```json
{
  "request_id": "req_00000000-0000-4000-8000-000000000001",
  "schema_version": "v1",
  "fetched_at": "2026-10-12T21:53:02.000Z",
  "action": "call",
  "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"],
  "warnings": [],
  "applied_params": {
    "id": "5c0017ef6b58b740c92463fb"
  },
  "cost_credits": 24,
  "billing": {
    "cost_credits": 24,
    "balance_credits": 76,
    "today_spend_credits": 24,
    "daily_limit_credits": null,
    "daily_remaining_credits": null,
    "display": "This call: 24 credits (≈ $0.08). Balance: 76 credits (≈ $0.25)."
  },
  "replayed": false
}
```

## Xiaohongshu (RedNote) KOL audience profile API (Pugongying): paging and billing

- One call returns one object, with no pages, for 24 credits.
- 5 calls per second per key, 20 after a purchase; going over is not charged. [Rate limits](https://socialtoai.com/docs/credits-and-billing.md#rate-limits)
- A failed call costs 0 credits and is never retried on its own. [Error codes](https://socialtoai.com/docs/api/errors.md)
- 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. → `call {"op":"xiaohongshu.kol_audience","id":"5c0017ef6b58b740c92463fb"}`, 24 credits
- 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. → `call {"op":"xiaohongshu.kol_search","query":"咖啡"}`, `call {"op":"xiaohongshu.kol_audience","id":"<ref>"}` × 3, 96 credits

## Give this to your AI

```
Use 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.
```

## The same call on other platforms

| Interface | Price key | Credits |
| --- | --- | --- |
| [Douyin KOL audience API (Xingtu)](https://socialtoai.com/douyin-kol-audience-api.md) | `douyin.kol_audience` | 3 |

## More on Xiaohongshu

| Interface | What it does | Price key | Credits |
| --- | --- | --- | --- |
| [Xiaohongshu (RedNote) KOL metrics API (Pugongying)](https://socialtoai.com/xiaohongshu-kol-performance-api.md) | Get how a Xiaohongshu creator's everyday notes did over the last 30 or 90 days, by PGY creator ID. | `xiaohongshu.kol_performance` | 24 |
| [Xiaohongshu (RedNote) KOL detail API (Pugongying)](https://socialtoai.com/xiaohongshu-kol-profile-api.md) | Get a Xiaohongshu creator's profile on PGY by creator ID. | `xiaohongshu.kol_profile` | 24 |
| [Xiaohongshu (RedNote) product search API](https://socialtoai.com/xiaohongshu-product-search-api.md) | Search the products of Xiaohongshu's shop by terms. | `xiaohongshu.product_search` | 12 |
| [Xiaohongshu (RedNote) topic notes API](https://socialtoai.com/xiaohongshu-topic-notes-api.md) | Get the trending notes under a Xiaohongshu topic by its page ID. | `xiaohongshu.topic_notes` | 12 |
| [Xiaohongshu (RedNote) topic detail API](https://socialtoai.com/xiaohongshu-topic-api.md) | Get one Xiaohongshu topic by its page ID. | `xiaohongshu.topic` | 12 |
| [Xiaohongshu (RedNote) Search API](https://socialtoai.com/xiaohongshu-search-api.md) | Find notes by keyword: text, author, likes, comment count and publish time. | `xiaohongshu.search` | 12 |
| [Xiaohongshu (RedNote) product reviews API](https://socialtoai.com/xiaohongshu-product-reviews-api.md) | Get the first page of buyers' reviews of a product of Xiaohongshu's shop by the product's ID. | `xiaohongshu.product_reviews` | 12 |
| [Xiaohongshu (RedNote) Detail API](https://socialtoai.com/xiaohongshu-detail-api.md) | One note by ID or link: text, author, likes, comment count and publish time. | `xiaohongshu.detail` | 12 |
| [Xiaohongshu (RedNote) User Profile API](https://socialtoai.com/xiaohongshu-user-profile-api.md) | One account: name, bio, followers, following and post count. | `xiaohongshu.user_profile` | 12 |
| [Xiaohongshu (RedNote) KOL search API (Pugongying)](https://socialtoai.com/xiaohongshu-kol-search-api.md) | Search Xiaohongshu creators on PGY by terms, matched against what they write about. | `xiaohongshu.kol_search` | 24 |

## Read next

- [Xiaohongshu official API: access, prices and limits](https://socialtoai.com/does-xiaohongshu-have-an-api.md): What its own API allows, who can use it and what it costs, with sources.
- [Creator data API, every platform](https://socialtoai.com/creator-api.md): Finding creators and reading their data, platform by platform.
- [How to let ChatGPT read Xiaohongshu (RedNote)](https://socialtoai.com/how-to/let-chatgpt-read-xiaohongshu.md): connect ChatGPT to Xiaohongshu notes and comments
- [Let Claude Code and Cursor read Xiaohongshu and Douyin, with no QR code or cookie](https://socialtoai.com/how-to/let-claude-code-and-cursor-read-xiaohongshu-and-douyin.md): connect Claude Code and Cursor to Xiaohongshu and Douyin with no QR code or cookie, and what a self-run server costs you
- [How brands outside China monitor Xiaohongshu (RedNote), Douyin and Weibo with AI](https://socialtoai.com/how-to/monitor-xiaohongshu-douyin-weibo-from-outside-china.md): monitor Xiaohongshu, Douyin and Weibo from outside China with AI, in English, with original links
- [How to find creators on Xiaohongshu PGY and Douyin Xingtu](https://socialtoai.com/how-to/find-creators-on-xiaohongshu-and-douyin.md): PGY and Xingtu by interface: how each search matches, the IDs they take, what a shortlist costs
- [Xiaohongshu (RedNote) MCP server](https://socialtoai.com/mcp/xiaohongshu.md): Let your AI read Xiaohongshu.

## Xiaohongshu (RedNote) KOL audience profile API (Pugongying): questions

**Do I need a Xiaohongshu account or Xiaohongshu's own API access?**

No. You only need a SocialToAI key. The call returns content and account information publicly visible on Xiaohongshu; you never sign in to Xiaohongshu or apply for anything there.

**What does one call cost in dollars?**

24 credits: $0.08 at 300 credits per dollar (purchases from $10), $0.048 at 500 per dollar (from $200). Credits never expire and there is no subscription. 100 free credits on sign-up, no card.

**Am I charged when a call fails or finds nothing?**

A failed call costs 0 credits and is never retried on its own.

**How much does one call return?**

One call returns one object, with no pages, for 24 credits.

**Is there a rate limit?**

5 calls a second per key, 20 a second after your first purchase. A request over the limit is told how long to wait and is not charged.

**How do I use it from Claude, ChatGPT or Cursor?**

Yes. In Claude or ChatGPT, add the MCP address https://mcp.socialtoai.com/mcp as a custom connector, sign in with the code we email you and press Allow; there is no key to paste. In Claude Code, run one command, type /mcp, pick socialtoai and sign in; Codex and Cursor sign in too, with their steps on the connect page. Then ask in plain words and your AI calls call for you.
