В этом руководстве показано, как создать надежный конвейер данных TikTok с конечными точками пользователей/профилей, маршрутами поиска и вариантами использования извлечения без водяных знаков.
Карта TikTok API включает в себя классы пользователя, видео, хэштега, местоположения, музыки, тенденций, эффектов и поиска. Это позволяет одному бэкэнду одновременно поддерживать рабочие процессы аналитики, модерации и обогащения.
Что вы получите
- Python-запросы с авторизацией через query-параметр license_key.
- Переиспользуемый helper для классов маршрутов TikTok (video, search, user).
- Стабильная стратегия пагинации на основе cursor-полей из ответов API.
Демо TikTok API
Выберите endpoint, заполните параметры, запустите запрос, проверьте сниппеты и затем сравните JSON-ответ с визуализацией рядом.
Быстрый старт в Postman
Откройте официальную TikTok-коллекцию, задайте license_key и проверьте первые маршруты до написания кода.
Шаг 1
Сделайте fork
Используйте коллекцию IG или TikTok в Postman как базу рабочего пространства.
Шаг 2
Укажите ключ
Один раз настройте license_key в переменной окружения.
Шаг 3
Автоматизируйте
Экспортируйте сниппеты или запускайте workflow с AI-агентами поверх готовых запросов.
Все API-запросы
Полная карта endpoint-ов из коллекции. Раскройте класс и нажмите на маршрут, чтобы посмотреть параметры и примеры ответов.
Видео (8 запросов)
Поиск (9 запросов)
Пользователь (15 запросов)
Хэштег (3 запросов)
Локация (2 запросов)
Музыка (3 запросов)
В тренде (2 запросов)
Эффекты (3 запросов)
Истории (2 запросов)
Плейлисты (3 запросов)
Прямой эфир (4 запросов)
Примеры Python из коллекции
Эти примеры используют ту же модель авторизации, что и в Postman: license_key в query-параметрах.
Пример 1: поиск видео по ключевому слову (GET /searchVideo)
import requests
BASE_URL = "https://tiktok.evelode.com/tiktok-api"
LICENSE_KEY = "YOUR_LICENSE_KEY"
params = {
"license_key": LICENSE_KEY,
"keyword": "appletv",
"cache_timeout": 0,
}
r = requests.get(f"{BASE_URL}/searchVideo", params=params, timeout=30)
r.raise_for_status()
data = r.json()
print(data["status"], data.get("tiktok", {}).get("cursor"))
{
"status": "ok",
"tiktok": {
"cursor": 12,
"aweme_list": []
}
}
Пример 2: получить URL без водяного знака по ID видео (GET /getNoWatermarkUrlByID)
import requests
BASE_URL = "https://tiktok.evelode.com/tiktok-api"
LICENSE_KEY = "YOUR_LICENSE_KEY"
params = {
"license_key": LICENSE_KEY,
"video_id": "7106855913906081070",
"cache_timeout": 0,
}
r = requests.get(f"{BASE_URL}/getNoWatermarkUrlByID", params=params, timeout=30)
r.raise_for_status()
data = r.json()
print(data["status"], data["tiktok"]["id"])
print(data["tiktok"]["url"])
Шаблон Python-запросов (авторизация + пагинация)
Централизуйте подпись запросов и обработку курсоров, чтобы высоконагруженные задачи были предсказуемыми.
import requests
BASE_URL = "https://tiktok.evelode.com/tiktok-api"
LICENSE_KEY = "YOUR_LICENSE_KEY"
def call(endpoint: str, **params):
q = {"license_key": LICENSE_KEY, "cache_timeout": 0, **params}
r = requests.get(f"{BASE_URL}{endpoint}", params=q, timeout=30)
r.raise_for_status()
return r.json()
page1 = call("/getFollowers", query="therock", count=20)
next_cursor = page1.get("tiktok", {}).get("next_cursor")
if next_cursor:
page2 = call("/getFollowers", query="therock", count=20, cursor=next_cursor)
Практические заметки
- Всегда передавайте license_key в каждом запросе.
- Явно задавайте cache_timeout для повторяющихся проверок.
- Сохраняйте поля курсоров вместе с контекстом запроса.
- Масштабируйте покрытие маршрутов по классам после проверки базового потока.
Готовы запустить ваш API-workflow?
Выберите API, протестируйте endpoint'ы в Postman и запустите workflow за минуты.