Что такое TikTok LIVE API?
TikTok не предоставляет публичного API для данных прямых эфиров: чата, подарков или числа зрителей. TikTok Business API охватывает только рекламу и аналитику магазина. Чтобы получать данные LIVE в реальном времени, разработчики используют сторонние API.
Open-source библиотеки tiktok-live-connector (Node.js) и TikTokLive (Python) распространяются по лицензии MIT и бесплатны. Подпись запросов TikTok они передают бэкенду; одним из исторических вариантов по умолчанию был платный сервис подписи от той же команды, что поддерживает эти библиотеки.
TikTool - это независимая альтернатива с собственной инфраструктурой подписи. Полностью управляемый API: поддержка соединения и авторизация на нашей стороне. Одно WebSocket-соединение передаёт 90+ типов событий - чат, подарки, лайки, подписки, зрители, баттлы и многое другое. Официальные SDK для Node.js и Python. Тариф Sandbox, банковская карта не нужна.
Как работает TikTok LIVE API?
TikTool стоит между вашим приложением и инфраструктурой прямых эфиров TikTok. Вот как это устроено:
Приложение подключается
Ваше приложение открывает WebSocket к wss://api.tik.tools с никнеймом TikTok и вашим API-ключом.
TikTool находит эфир
TikTool определяет ID комнаты, проходит авторизацию, решает проверки и подключается к стриму.
События идут потоком
События в реальном времени (чат, подарки, зрители и т. д.) приходят в ваше приложение в виде чистого JSON - разобранного, структурированного и типизированного.
Вам не нужно работать с протоколом TikTok напрямую. Когда TikTok меняет внутренние системы (а это происходит часто), TikTool подстраивается - ваш код продолжает работать без изменений.
Быстрый старт - Node.js / TypeScript
Установите официальный SDK из npm:
npm install @tiktool/liveПодключитесь к стриму и получайте события:
import { TikTokLive } from '@tiktool/live';
const client = new TikTokLive({
uniqueId: 'streamer_username',
apiKey: 'YOUR_API_KEY' // Get free key → https://tik.tools
});
client.on('chat', (event) => {
console.log(`${event.user.uniqueId}: ${event.comment}`);
});
client.on('gift', (event) => {
console.log(`${event.user.uniqueId} sent ${event.giftName} (${event.diamondCount} diamonds)`);
});
client.on('roomUserSeq', (event) => {
console.log(`${event.viewerCount} viewers watching`);
});
client.connect();Полная поддержка TypeScript - все типы событий, поля и параметры типизированы, с автодополнением в вашей IDE. Полное руководство по Node.js →
Быстрый старт - Python
Установите из PyPI:
pip install tiktok-live-apiПодключитесь через SDK и зарегистрируйте обработчики декораторами:
from tiktok_live_api import TikTokLive
client = TikTokLive("streamer_username", api_key="YOUR_API_KEY") # Get free key at https://tik.tools
@client.on("chat")
def on_chat(event):
print(f"{event['user']['uniqueId']}: {event['comment']}")
@client.on("gift")
def on_gift(event):
print(f"{event['user']['uniqueId']} sent {event['giftName']} ({event['diamondCount']} diamonds)")
@client.on("roomUserSeq")
def on_viewers(event):
print(f"{event['viewerCount']} viewers watching")
client.run() # blocks; reconnects automaticallyПредпочитаете asyncio? await client.connect() запускает тот же клиент внутри вашего event loop. Ключ также можно передать через переменную окружения TIKTOOL_API_KEY.
Полное руководство по Python →
Быстрый старт - чистый WebSocket (любой язык)
Подойдёт любой язык с поддержкой WebSocket - Go, Rust, Java, C#, Ruby, PHP, Dart, Kotlin, Swift. Просто подключитесь к:
wss://api.tik.tools?uniqueId=TIKTOK_USERNAME&apiKey=YOUR_API_KEYКаждое сообщение - JSON-объект с полями event и data. Чистые структурированные данные - никакого разбора бинарных форматов. Полный справочник WebSocket API →
Все типы событий
TikTok LIVE API передаёт 18+ событий в реальном времени с любого стрима:
chatСообщение зрителя в чате. Содержит данные пользователя, текст комментария, эмоуты и значки.
giftВиртуальный подарок от зрителя. Содержит название подарка, стоимость в алмазах, число повторов и статус комбо.
likeЗритель лайкнул стрим. Содержит число лайков в событии и общее количество.
memberЗритель зашёл в комнату эфира. Срабатывает, когда пользователь входит на стрим.
followЗритель подписался на стримера во время эфира.
shareЗритель поделился эфиром с друзьями.
subscribeЗритель оформил подписку на стримера.
roomUserSeqОбновление числа зрителей. Текущее количество зрителей и список топ-зрителей.
battleСобытие баттла/LinkMic. Статус баттла, команды, счёт и участники.
battleArmiesОбновление армий баттла со счётом команд и рейтингом участников.
roomPinСтример закрепил или отметил сообщение в чате.
captionВстроенные автосубтитры TikTok для стрима, одно окно субтитров на кадр.
envelopeСобытие сундука или конверта на стриме.
emoteКастомный эмоут, отправленный зрителем в чат.
liveIntroОбновление описания стрима - изменения названия и описания.
streamEndЭфир завершён. Содержит код причины.
connectedПодключение к стриму TikTok установлено.
errorОшибка соединения. Содержит подробности ошибки.
Полный справочник событий с примерами payload →
Что можно создать?
Чат-ассистенты
Создавайте чат-ассистентов, которые в реальном времени отвечают на сообщения зрителей, команды и подарки.
Аналитика
Отслеживайте число зрителей, вовлечённость, доход от подарков и активность чата по всем стримам.
Интерактивные игры
Дайте зрителям управлять элементами игры через подарки, команды в чате и лайки.
Оверлеи для стрима
Создавайте оверлеи для OBS/Streamlabs с чатом, алертами о подарках и статистикой зрителей.
Поиск стримеров
Следите за рейтингами стримеров, топ-дарителями и положением в лигах, чтобы находить и развивать таланты.
Мобильные приложения
Создавайте мобильные приложения, которые отслеживают стримы TikTok LIVE и взаимодействуют с ними.
TikTool vs Euler Stream vs tiktok-live-connector
Open-source библиотеки tiktok-live-connector (Node.js) и TikTokLive (Python) поддерживает та же команда, что развивает Euler Stream. Вместе это хорошо поддерживаемая экосистема с клиентами под лицензией MIT и управляемым бэкендом подписи. TikTool - независимая управляемая альтернатива с собственной инфраструктурой подписи и другим набором возможностей.
eulerstreamЦены и бесплатный тариф
Начните работать с TikTok LIVE API бесплатно. Банковская карта не нужна.