Наша собственная статистика посещений включена всегда. Google Analytics помогает нам понять, как пользуются нашими публичными страницами (но не вашим рабочим пространством после входа), и включается только с вашего разрешения. См. нашу политику конфиденциальности.

API Xiaohongshu Сведения

POST

Состояние API

Данные о состоянии этого API временно недоступны, поэтому неизвестно, как он работал в последнее время. Это не значит, что API не работает.

Найдите аккаунт Xiaohongshu. Получите никнейм, Xiaohongshu ID, био, IP-местоположение, статус верификации и точное число подписчиков, подписок, постов, лайков и сохранений. Передайте ID из ссылки /user/profile/, саму ссылку или author_id комментатора. Скрытые счётчики возвращаются как null, а не как ноль.

Xiaohongshu Details получает данные профиля одного аккаунта по его user_id: никнейм, Xiaohongshu ID, описание, аватар, пол, местоположение по IP, статус верификации, число подписчиков и подписок, число постов, а также лайки и сохранения, которые собрали его заметки. По этим данным бренд-команды, агентства и исследователи оценивают размер и вовлечённость аудитории аккаунта, прежде чем включить автора в шорт-лист, заключить партнёрство или добавить аккаунт в список отслеживания.

Передайте ID, который идёт после /user/profile/ в ссылке на профиль, саму ссылку или ID автора комментария из результатов Xiaohongshu Comments. Здесь follower_count содержит точное значение, в отличие от округлённых значений в User search. Если счётчики не публичны, возвращается null, а не ноль. ip_location содержит провинцию или страну, которую платформа указывает для аккаунта; это поле не заполняет владелец. real_name_info появляется, только если в профиле показаны сведения о реальном имени.

Цена: $5.56 за 1 000 запросов ($0.005556 за вызов). Неудачные вызовы и пустые результаты не оплачиваются. Синхронный режим. Для долгих задач добавьте в тело запроса "mode": "async", получите job_id и опрашивайте статус.

Промпт для ИИ

Помогите мне написать скрипт для сбора данных через эндпоинт EveryInfra Xiaohongshu Сведения (xiaohongshu/profile).

Как работает эндпоинт:
- Запрос: POST https://api.everyinfra.com/api/v1/social с заголовком Authorization: Bearer <API key>. Читайте ключ из переменной окружения EVERYINFRA_API_KEY и никогда не прописывайте его в коде.
- В теле запроса укажите platform: xiaohongshu и action: profile, а параметры передайте в params.
- Обязательные параметры:
  - user_id: ID пользователя Xiaohongshu (идентификатор после /user/profile/ в URL) или полный URL профиля для действий profile и user_posts. Подойдёт и author_id из действий с комментариями.
- Возвращает один объект. Основные поля: user_id, nickname (Отображаемое имя аккаунта), red_id (Xiaohongshu ID: ID для поиска, который…), url (Ссылка на запись в Xiaohongshu), bio, follower_count (Число подписчиков), following_count, like_collect_count (Сумма лайков и сохранений профиля: полу…), post_count, gender (Пол, указанный в профиле), ip_location (Местоположение по IP (провинция или стр…), avatar_url; всего полей: 20, полный список: https://api.everyinfra.com/api/v1/social/catalog?platform=xiaohongshu.
- Пример тела запроса:
{
  "platform": "xiaohongshu",
  "action": "profile",
  "params": {
    "user_id": "5bec178863f51f0001859bd9"
  }
}
- Цена: $5.56 за 1 000 запросов; неудачные и пустые результаты не оплачиваются.
- Для десятков или сотен целей добавьте в тело запроса "mode": "async": вы сразу получите job_id и сможете опрашивать GET https://api.everyinfra.com/api/v1/jobs/{job_id}, чтобы получить результат.
- При ответе 422 исправьте запрос, используя предложенные в ошибке имена параметров и допустимые значения; при ответе 429 или 503 подождите указанное в Retry-After время и повторите попытку.

Прежде чем писать код, спросите меня, какие цели мне нужны, сколько их будет, какие поля мне нужны и в каком формате вывести результат; затем согласуйте со мной план и примерную стоимость.

Параметры запроса

ИмяРасположениеТипОбязательныйПо умолчаниюОписание
AuthorizationheaderstringДа-Укажите Bearer, а после него — ваш API-ключ. Создайте ключ в консоли; никогда не указывайте его в URL и не храните в репозитории кода.
platformbodystringДаxiaohongshuИдентификатор платформы, фиксированное значение.
actionbodystringДаprofileИдентификатор возможности, фиксированное значение.
user_idbody.paramsstringДа-ID пользователя Xiaohongshu (идентификатор после /user/profile/ в URL) или полный URL профиля для действий profile и user_posts. Подойдёт и author_id из действий с комментариями. Используется для получения сведений профиля или опубликованных заметок; отображаемые имена пользователей не принимаются.

Примеры кода

bash
curl -X POST 'https://api.everyinfra.com/api/v1/social' \
  -H "Authorization: Bearer $EVERYINFRA_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "platform": "xiaohongshu",
  "action": "profile",
  "params": {
    "user_id": "5bec178863f51f0001859bd9"
  }
}'

Спецификация OpenAPI (JSON)Примеры читают ключ из переменной окружения EVERYINFRA_API_KEY; скопированный код никогда не содержит ваш ключ.

Пример ответа

Реальный ответ

Получено October 24, 2026 at 18:28 (UTC) вызовом этого API с параметрами из примера кода выше. results и count — реальный ответ этого вызова, из которого удалены персональные данные (имена, никнеймы, аватары, ссылки на профили, контакты). id, billing и quota меняются при каждом вызове, поэтому показана только их структура.

json
{
  "id": "req_…",
  "platform": "xiaohongshu",
  "action": "profile",
  "results": {
    "user_id": "5bec178863f51f0001859bd9",
    "nickname": "•••",
    "red_id": "536248807",
    "url": "https://www.xiaohongshu.com/user/profile/5bec178863f51f0001859bd9?xsec_token=YBa43WesDF2ZG-HMGXVxTlt0t4eJdIhAYkDoVSOA1K-Ew%3D",
    "bio": "人生的觉醒消失于人群之中",
    "follower_count": 2114,
    "following_count": 49,
    "like_collect_count": 16889,
    "post_count": 752,
    "gender": 0,
    "ip_location": "•••",
    "avatar_url": "https://sns-avatar-qc-ae.rednotecdn.com/•••",
    "is_verified": false,
    "tags": [
      "白羊座",
      "江苏扬州",
      "旅行博主"
    ],
    "like_count": 15178,
    "collect_count": 1711,
    "location": "中国  江苏  扬州",
    "platform": "xiaohongshu"
  },
  "billing": {
    "charged": …,
    "charged_usd": …,
    "balance_after_usd": …,
    …
  },
  "quota": { … }
}

Поля ответа

Бизнес-данные находятся в results. В таблице перечислены поля, которые может содержать запись; значения, которые платформа не показывает, никогда не выдумываются.

ПолеЗначение
user_idУникальный ID пользователя на платформе.
nicknameОтображаемое имя аккаунта.
red_idXiaohongshu ID: ID для поиска, который выбирает владелец аккаунта; отличается от внутреннего user_id.
urlСсылка на запись в Xiaohongshu. Ссылки из search, note, profile и hashtag обычно содержат токен доступа, поэтому открываются в браузере без входа в аккаунт (срок действия токена ограничен; чтобы получить свежую ссылку, повторите вызов API). Ссылки на заметки из user_posts не содержат токена, а без него в браузере не открываются: вызовите note с ID заметки, чтобы получить рабочую ссылку. Ссылки на профили из search_users тоже не содержат токена; чтобы получить рабочую ссылку, вызовите profile с user_id. Ссылки на заметки из pgy_content_square содержат токен, кроме запросов с keyword: в них токена нет.
bioОписание профиля, написанное владельцем аккаунта; может содержать переносы строк и эмодзи.
follower_countЧисло подписчиков. В profile значение точное. В search_users оно приблизительное: в списке показано округлённое значение (12 000 отображается как 1,2 × 10 000), которое преобразуется в целое число. null означает, что значение не общедоступно или не распознано; это не ноль.
following_countПодписки. null означает, что значение не раскрыто, а не 0.
like_collect_countСумма лайков и сохранений профиля: полученные лайки плюс сохранения по всем заметкам аккаунта. Слагаемые указаны в like_count и collect_count.
post_countВсего публикаций. null означает, что значение не раскрыто, а не 0.
genderПол, указанный в профиле; может быть пустым.
ip_locationМестоположение по IP (провинция или страна), которое показывает Xiaohongshu; пользователь его не вводит. Есть только в некоторых записях user_posts.
avatar_urlСсылка на аватар. Некоторые платформы возвращают CDN-ссылки с заданным размером, срок действия которых может истечь.
is_verifiedПодтверждён ли аккаунт платформой. null означает, что это невозможно определить.
tagsСписок тегов: в note это теги тем заметки; в profile — личные теги со страницы профиля (например, знак зодиака или регион); в reviews — теги отзыва, которые добавляет магазин, например «хорошее качество». Поле отсутствует, если тегов нет. Значения приводятся в исходном виде.
like_countЧисло лайков. В результатах note и в результатах по комментариям это число лайков у соответствующей записи; в profile — общее число лайков, полученных заметками аккаунта. null означает, что значение не общедоступно или не было возвращено при этом вызове; это не ноль.
collect_countЧисло сохранений. В результатах note это число сохранений заметки; в profile — общее число сохранений всех заметок аккаунта. null означает, что значение не общедоступно или не было возвращено при этом вызове; это не ноль.
real_name_infoСведения о реальном имени точно в том виде, как их показывает профиль; поле отсутствует, если сведений нет.
verification_typeТип верификации в search_users и profile: individual (верифицированный пользователь), business (верифицированная компания) или other. У аккаунтов без верификации поле отсутствует.
verification_textОписание верификации в том виде, как оно указано в профиле (profile).
locationОписание местоположения передаётся как есть; формат зависит от платформы.
platformИдентификатор исходной платформы. Совпадает со значением platform в запросе (например, xiaohongshu, tiktok).

FAQ

Что измеряет like_collect_count?

Суммарное число лайков и сохранений, показанное в профиле: все лайки плюс все сохранения, которые получили заметки аккаунта. like_count и collect_count дают эти две части по отдельности, так что видно, ставит ли аудитория заметкам аккаунта в основном лайки или сохраняет их, чтобы вернуться позже.

Что хранить: user_id или red_id?

Храните оба значения, но основным ключом для записей сделайте user_id: именно его нужно передавать этой возможности и Posts by user. red_id выбирает владелец аккаунта, и именно его пользователи вводят в поиске приложения, поэтому он удобен для отображения и сопоставления с ID, который вам присылают.

Открывается ли ссылка на профиль в браузере?

Обычно да. Ссылки из этой возможности, как правило, содержат токен доступа, поэтому открываются без входа в аккаунт, пока токен не истечёт; повторный вызов возвращает новый. В ссылках на профили из User search и ссылках на заметки из Posts by user токена нет, поэтому эти возможности направляют вас сюда или к Note details.

Ошибки и оплата

401
Ключ отсутствует или недействителен.
402
Недостаточно средств на балансе. Сначала пополните баланс.
422
Недопустимое имя или значение параметра. Исправьте запрос по подсказкам в сообщении об ошибке. Без списания.
429
Достигнут лимит запросов в минуту. Подождите указанное в Retry-After время, затем повторите попытку.
503
Не удалось выполнить. Зарезервированная сумма возвращается на баланс. Если результат неизвестен, проверьте его перед повторной попыткой.
200 (пусто)
Нет данных. Без списания.

Ошибки