API Douyin Сведения
Состояние API
Данные о состоянии этого API временно недоступны, поэтому неизвестно, как он работал в последнее время. Это не значит, что API не работает.
Найдите аккаунт Douyin по secUid. Получите никнейм, имя пользователя, описание, число подписчиков, лайков и видео, IP-местоположение, данные о верификации и наличие магазина. Передайте в user_id secUid (часто начинается с MS4w), а не никнейм или короткий ID. Видео этого аккаунта можно получить через user_posts.
Возможность Douyin Details считывает публичный профиль одного аккаунта по его user_id: никнейм, Douyin ID, описание профиля, аватар, число подписчиков и подписок, общее число лайков, количество видео, пол, регион по IP и статус верификации. Она показывает, что это за аккаунт и насколько велика его аудитория на момент запроса. Это нужно для проверки авторов, отслеживания аккаунтов конкурентов и поддержания актуальности базы авторов.
user_id принимает secUid, который обычно начинается с MS4w. Каждый показатель отражает состояние на момент вызова, поэтому сохраняйте его с датой, если хотите следить за аккаунтом во времени. Значение null означает, что показатель не раскрыт, а не равен нулю. ip_location содержит регион, который сам Douyin показывает в профиле, а не текст, введённый владельцем. is_verified равно null, если верификацию определить невозможно.
Цена: $0.56 за 1 000 запросов ($0.000556 за вызов). Неудачные вызовы и пустые результаты не оплачиваются. Синхронный режим. Для долгих задач добавьте в тело запроса "mode": "async", получите job_id и опрашивайте статус.
Промпт для ИИ
Помогите мне написать скрипт для сбора данных через эндпоинт EveryInfra Douyin Сведения (douyin/profile).
Как работает эндпоинт:
- Запрос: POST https://api.everyinfra.com/api/v1/social с заголовком Authorization: Bearer <API key>. Читайте ключ из переменной окружения EVERYINFRA_API_KEY и никогда не прописывайте его в коде.
- В теле запроса укажите platform: douyin и action: profile, а параметры передайте в params.
- Обязательные параметры:
- user_id: Строка secUid пользователя Douyin (обычно начинается с MS4w), а не никнейм и не короткий числовой Douyin ID. Используется для указания аккаунта в действиях profile и user_posts.
- Возвращает один объект. Основные поля: user_id, douyin_id (Douyin ID: выбранный владельцем идентиф…), nickname (Отображаемое имя аккаунта), bio, url, follower_count, following_count, like_count, video_count (Число видео: видео аккаунта в profile и…), gender (Пол, указанный в аккаунте), ip_location (IP-регион, который показывает Douyin (о…), is_verified; всего полей: 23, полный список: https://api.everyinfra.com/api/v1/social/catalog?platform=douyin.
- Пример тела запроса:
{
"platform": "douyin",
"action": "profile",
"params": {
"user_id": "https://www.douyin.com/user/MS4wLjABAAAAk1tZ-L085zZf2yW_H5dnVFZWyk8Rt8v4RAvf9KhTyPoVdMDxTs7Q_rvgTJGWXezS"
}
}
- Цена: $0.56 за 1 000 запросов; неудачные и пустые результаты не оплачиваются.
- Для десятков или сотен целей добавьте в тело запроса "mode": "async": вы сразу получите job_id и сможете опрашивать GET https://api.everyinfra.com/api/v1/jobs/{job_id}, чтобы получить результат.
- При ответе 422 исправьте запрос, используя предложенные в ошибке имена параметров и допустимые значения; при ответе 429 или 503 подождите указанное в Retry-After время и повторите попытку.
Прежде чем писать код, спросите меня, какие цели мне нужны, сколько их будет, какие поля мне нужны и в каком формате вывести результат; затем согласуйте со мной план и примерную стоимость.Параметры запроса
| Имя | Расположение | Тип | Обязательный | По умолчанию | Описание |
|---|---|---|---|---|---|
Authorization | header | string | Да | - | Укажите Bearer, а после него — ваш API-ключ. Создайте ключ в консоли; никогда не указывайте его в URL и не храните в репозитории кода. |
platform | body | string | Да | douyin | Идентификатор платформы, фиксированное значение. |
action | body | string | Да | profile | Идентификатор возможности, фиксированное значение. |
user_id | body.params | string | Да | - | Строка secUid пользователя Douyin (обычно начинается с MS4w), а не никнейм и не короткий числовой Douyin ID. Используется для указания аккаунта в действиях profile и user_posts; её можно взять из поля author_id в результатах поиска или из URL профиля пользователя. |
Примеры кода
curl -X POST 'https://api.everyinfra.com/api/v1/social' \
-H "Authorization: Bearer $EVERYINFRA_API_KEY" \
-H 'Content-Type: application/json' \
--data-raw '{
"platform": "douyin",
"action": "profile",
"params": {
"user_id": "https://www.douyin.com/user/MS4wLjABAAAAk1tZ-L085zZf2yW_H5dnVFZWyk8Rt8v4RAvf9KhTyPoVdMDxTs7Q_rvgTJGWXezS"
}
}'Спецификация OpenAPI (JSON)Примеры читают ключ из переменной окружения EVERYINFRA_API_KEY; скопированный код никогда не содержит ваш ключ.
Пример ответа
Получено September 26, 2026 at 08:56 (UTC) вызовом этого API с параметрами из примера кода выше. results и count — реальный ответ этого вызова, из которого удалены персональные данные (имена, никнеймы, аватары, ссылки на профили, контакты). id, billing и quota меняются при каждом вызове, поэтому показана только их структура.
{
"id": "req_…",
"platform": "douyin",
"action": "profile",
"results": {
"user_id": "MS4wLjABAAAAk1tZ-L085zZf2yW_H5dnVFZWyk8Rt8v4RAvf9KhTyPoVdMDxTs7Q_rvgTJGWXezS",
"douyin_id": "•••",
"nickname": "•••",
"bio": "📚英语爱好者\n🧸努力学习英语中\n❤️好好吃饭💛好好睡觉💚好好生活\n🎇文本群里分享视频的文本,有需要的小伙伴可以进群",
"url": "https://www.iesdouyin.com/xg/user/1929015166249580",
"follower_count": 48341,
"following_count": 21,
"like_count": 91585,
"video_count": 210,
"gender": "•••",
"ip_location": "•••",
"is_verified": true,
"avatar_url": "https://p26.douyinpic.com/•••",
"platform": "douyin"
},
"billing": {
"charged": …,
"charged_usd": …,
"balance_after_usd": …,
…
},
"quota": { … }
}Поля ответа
Бизнес-данные находятся в results. В таблице перечислены поля, которые может содержать запись; значения, которые платформа не показывает, никогда не выдумываются.
| Поле | Значение |
|---|---|
user_id | Уникальный ID пользователя на платформе. |
douyin_id | Douyin ID: выбранный владельцем идентификатор, по которому можно найти аккаунт. |
nickname | Отображаемое имя аккаунта. |
bio | Описание профиля, написанное владельцем аккаунта; может содержать переносы строк и эмодзи. |
url | Ссылка на запись на платформе. |
follower_count | Подписчики. null означает, что значение не раскрыто, а не 0. |
following_count | Подписки. null означает, что значение не раскрыто, а не 0. |
like_count | Лайки. null означает, что платформа или эта возможность не раскрывает значение; это не 0. |
video_count | Число видео: видео аккаунта в profile и billboard_account_search, видео, связанные с записью, в trending. |
gender | Пол, указанный в аккаунте. |
ip_location | IP-регион, который показывает Douyin (определяется платформой, а не вводится пользователем). |
is_verified | Подтверждён ли аккаунт платформой. null означает, что это невозможно определить. |
avatar_url | Ссылка на аватар. Некоторые платформы возвращают CDN-ссылки с заданным размером, срок действия которых может истечь. |
uid | Числовой ID пользователя (profile / creator_search). user_id — это secUid; оба идентификатора указывают на один и тот же аккаунт. |
background_image_url | Ссылка на фоновое изображение профиля. |
country | Страна или регион: полное название либо код ISO в зависимости от платформы. Значение передаётся без нормализации. |
language | Код языка контента (например, zh, en) по определению платформы; может быть неточным. |
is_live | Вёл ли аккаунт прямой эфир в момент вызова; состояние на конкретный момент. |
likes_given_count | Публичный счётчик «Нравится» в профиле: сколько постов лайкнул аккаунт. |
has_shop | Включена ли у аккаунта витрина товаров. |
age | Трактуется так же, как на самой платформе |
has_series | Трактуется так же, как на самой платформе |
platform | Идентификатор исходной платформы. Совпадает со значением platform в запросе (например, xiaohongshu, tiktok). |
verify_reason | Примечание о верификации в исходном виде (profile, creator_search) при верификации компании или частного лица; у неверифицированных аккаунтов значение пустое или отсутствует. |
FAQ
Чем user_id отличается от douyin_id?
user_id — это secUid, длинный внутренний ID, который обычно начинается с MS4w. Его принимают такие возможности Douyin, как Posts by user и Creator audience. douyin_id — более короткий идентификатор, который выбрал владелец, и по нему аккаунт ищут в приложении. Его принимают возможности Xingtu creator analytics и rate card. Храните в своих данных оба идентификатора.
Можно ли передать ссылку на профиль вместо secUid?
Да. Адрес страницы профиля аккаунта состоит из https://www.douyin.com/user/ и следующего за ним secUid. Скопируйте и передайте его целиком, как в примере на этой странице. Можно также передать только secUid. Никнейм или идентификатор из douyin_id относятся к другому типу ID, поэтому здесь используйте secUid.
Как отслеживать рост аккаунта?
Вызывайте возможность по расписанию и сохраняйте follower_count с датой каждого вызова, чтобы построить собственный ряд: каждый ответ отражает состояние только на момент вызова. Чтобы получить готовую динамику подписчиков, передайте тот же user_id в возможность Douyin Creator growth trend.
Ошибки и оплата
- 401
- Ключ отсутствует или недействителен.
- 402
- Недостаточно средств на балансе. Сначала пополните баланс.
- 422
- Недопустимое имя или значение параметра. Исправьте запрос по подсказкам в сообщении об ошибке. Без списания.
- 429
- Достигнут лимит запросов в минуту. Подождите указанное в Retry-After время, затем повторите попытку.
- 503
- Не удалось выполнить. Зарезервированная сумма возвращается на баланс. Если результат неизвестен, проверьте его перед повторной попыткой.
- 200 (пусто)
- Нет данных. Без списания.
Официальные источники
Используются только для проверки объектов и терминов. Они не означают, что платформа разрешила или одобрила работу EveryInfra.
- Открытая платформа Douyin: Open ID и Union ID ↗
На открытой платформе Douyin Open ID — это идентификатор пользователя в рамках одного приложения, а Union ID действует в пределах аккаунта разработчика. На этой странице user_id ожидает secUid, как описано выше; не передавайте идентификаторы открытой платформы напрямую как равнозначные входные данные.
Проверено 2026-09-04