SDK

TikTok LIVE Agency SDK

Ищите стримеров для рекрутинга, смотрите, кто из вашего состава в эфире, отслеживайте алмазы, получайте webhook о начале эфира и стройте свою панель агентства. Один API-ключ для JavaScript, TypeScript и Python.

Что он даёт агентствам

tiktok-live-agency оборачивает API tik.tools в типизированный клиент для агентств TikTok LIVE (Creator Networks, TCN, MCN). Пакет с тем же названием есть в npm и PyPI, и у обоих клиентов один и тот же список методов.

  • Поиск стримеров для рекрутинга. Рейтинг стримеров по регионам, которые могут вступить в агентство, новички в пуле рекрутинга и стримеры, выбывающие из лиг.
  • Статус эфира и алмазы состава. Проверяйте, кто из ваших стримеров сейчас в эфире, и смотрите алмазы по каждому стримеру и по всему составу на основе подарков, зафиксированных во время их трансляций.
  • Webhook. Подписанные оповещения о начале и конце эфира на ваш сервер, с верификатором для Node, Edge, Workers и Python.
  • Свои панели. Обычный JSON с названиями полей самого API, поэтому данные сразу ложатся в страницу Next.js, ноутбук или выгрузку в таблицу.

Установка

JavaScript и TypeScript

npm install tiktok-live-agency

Python

pip install tiktok-live-agency

# optional, for the real-time big gifts stream
pip install "tiktok-live-agency[realtime]"

Укажите ключ в переменной окружения TIKTOOLS_API_KEY на сервере. Никогда не отдавайте его в браузер: клиент на TypeScript отказывается запускаться на странице в браузере. Ключи - на странице тарифов.

Примеры

Кто из моих стримеров в эфире (TypeScript)

import { AgencyClient } from 'tiktok-live-agency'

const tt = new AgencyClient() // reads TIKTOOLS_API_KEY

const { live, offline, unknown } = await tt.whoIsLive(['creator_one', 'creator_two', 'creator_three'])
console.log(live.map((r) => r.unique_id))

Проверка webhook о начале эфира в Route Handler Next.js (TypeScript)

// app/api/webhooks/tiktools/route.ts
import { verifyWebhook } from 'tiktok-live-agency/webhooks'

export async function POST(req: Request) {
  const raw = await req.text() // raw body, verify before parsing
  try {
    const event = await verifyWebhook(raw, req.headers, process.env.TIKTOOLS_WEBHOOK_SECRET!)
    console.log(event.event, event.creator.unique_id)
  } catch {
    return new Response('bad signature', { status: 400 })
  }
  return new Response('ok')
}

Стримеры для рекрутинга и алмазы состава (Python)

from tiktok_live_agency import AgencyClient, is_free_to_join

tt = AgencyClient()  # reads TIKTOOLS_API_KEY

rows = list(tt.iter_creators_to_recruit("UK", max_pages=5))
free = [r for r in rows if is_free_to_join(r)]

roster = tt.list_rosters()["lists"][0]
week = tt.roster_diamonds(roster["id"], days=7)
print(len(free), week["totalDiamonds"])

Вызов, который не входит в ваш тариф, выбрасывает PlanRequiredError с нужным тарифом и ссылкой на апгрейд, поэтому панель может показать карточку апгрейда вместо падения. Payload и подписи webhook описаны в справочнике API.

Группы методов

ГруппаМетоды
Поиск стримеров для рекрутингаfindCreatorsToRecruititerCreatorsToRecruitisFreeToJoinnewCreatorsleagueMembersleagueDropoutsdroppedOutCreators
Рейтинги и рынокleaderboardglobalLeaderboardclubRankingsgamingRankingspopularLiveliveCountstopGifters
Проверка стримераgetCreatorgetCreatorProfilefindRenamedCreatorresolveUserIds
Статистика стримераgetCreatorSummarygetDailyDiamondsgetCreatorGiftsgetCreatorGiftersgetCreatorBattlesgetCreatorChat
СоставыcreateRosterlistRostersgetRosteraddToRosterremoveFromRosterrosterDiamonds
Статус эфираisLivewhoIsLivewatchLive
Поток крупных подарковstreamBigGifts
Результаты проверки допускаgetEligibilitygetEligibilityAccounts
WebhookcreateWebhooklistWebhooksupdateWebhooktestWebhookdeleteWebhookverifyWebhook
АккаунтgetAccountlistRegions

В Python те же названия в snake_case, например who_is_live и find_creators_to_recruit. Каждый метод с его тарифом указан в README каждого пакета.

Для AI-ассистентов

Машиночитаемое описание всех методов лежит по адресу tik.tools/sdk/agency/llms.txt. Укажите его Cursor, Claude, ChatGPT или любому AI-конструктору и назовите пакет tiktok-live-agency - тогда сгенерированный код будет работать с реальными данными из API.

Исходный код и пакеты

Неофициальный проект, не связан с TikTok или ByteDance. tiktok-live-agency - независимый SDK для API tik.tools. TikTok - товарный знак соответствующего владельца, здесь он упоминается только для описания совместимости.