Огляд локального API
TikMatrix надає локальний RESTful API, що дозволяє програмно керувати завданнями. Це корисно для інтеграції TikMatrix у власні системи автоматизації, побудови кастомних робочих процесів або виконання пакетних операцій.
Вимоги
Локальний API доступний лише для підписників планів Pro, Team і Business. Для плану Starter доступ до API відсутній.
Базова URL-адреса
API працює локально за адресою:
http://localhost:50809/api/v1/
Порт 50809 — порт за замовчуванням. Переконайтеся, що TikMatrix запущено перед надсиланням запитів.
Формат відповіді
Усі відповіді API мають формат:
{
"code": 0,
"message": "success",
"data": { ... }
}
Коди відповідей
| Code | Опис |
|---|---|
| 0 | Успіх |
| 40001 | Неправильний запит - Недопустимі параметри, зокрема script_config, що не пройшов перевірку |
| 40002 | Неправильний запит - відсутній script_name |
| 40003 | Неправильний запит - Скрипт не підтримується в цій збірці або на цій платформі, не має реалізації, або недопустимий стан завдання |
| 40004 | Неправильний запит - можна зупинити лише запущені завдання |
| 40005 | Неправильний запит - task_ids не можна залишати порожнім |
| 40301 | Заборонено - доступ до API потребує план Pro+ |
| 40401 | Не знайдено - ресурс відсутній |
| 50001 | Внутрішня помилка сервера |
Швидкий старт
1. Перевірка доступу до API
Спочатку перевірте, чи підтримує ваша ліцензія доступ до API:
curl http://localhost:50809/api/v1/license/check
Приклад відповіді:
{
"code": 0,
"message": "success",
"data": {
"plan_name": "Pro",
"api_enabled": true,
"device_limit": 20,
"message": "API access enabled"
}
}
2. Як дізнатися перелік скриптів та їхні параметри
GET /api/v1/schema описує кожен скрипт, який може виконати ця збірка, і точний набір полів script_config: назви, типи, значення за замовчуванням, дозволені значення та те, які поля обовʼязкові. Він формується з того самого каталогу, за яким перевіряє сервер, тож не може розійтися з тим, що п риймає створення завдань.
curl http://localhost:50809/api/v1/schema
Два необовʼязкові параметри запиту:
| Параметр | Дія |
|---|---|
platform | Обмежує вибірку платформою tiktok або instagram. Платформа, якої немає у збірці, відхиляється з кодом 40001. Типово — усі платформи збірки. |
include_unavailable | Зі значенням true додатково перелічує назви скриптів, які API приймає, але які не мають робочої реалізації. Кожен має unavailable_reason. |
Відповідь (скорочено):
{
"code": 0,
"message": "success",
"data": {
"build": { "platforms": ["tiktok"] },
"scripts": [
{
"name": "follow",
"internal_name": "follow",
"summary": "Follow the given users. One task per target.",
"platforms": ["tiktok", "instagram"],
"available": true,
"fan_out": { "kind": "per_item", "key": "target_users", "alt_key": "target_user" },
"any_of": [["target_users", "target_user"]],
"fields": [
{
"key": "access_method",
"type": "string",
"required": false,
"default": "direct",
"choices": ["direct", "search"],
"description": "How to reach the profile: direct (via URL) or search."
}
]
}
]
}
}
fan_out показує, скільки завдань створить запит: per_device створює одне завдання на пристрій (або на акаунт у багатоакаунтному режимі), per_item — по одному на кожен елемент указаного поля, на кожен пристрій.
3. Створення завдання
curl -X POST http://localhost:50809/api/v1/task \
-H "Content-Type: application/json" \
-d '{
"serials": ["device_serial_1", "device_serial_2"],
"script_name": "post",
"script_config": {
"content_type": 1,
"captions": "Подивіться моє нове відео! #вірусне"
},
"enable_multi_account": false,
"start_time": "14:30"
}'
4. Отримання списку завдань
curl http://localhost:50809/api/v1/task?status=0&page=1&page_size=20
Доступні скрипти
Параметр script_name може приймати такі значення:
| Назва скрипту | Опис | Підтримка API |
|---|---|---|
post | Публікація контенту | ✅ Підтримується |
follow | Підписатися на користувачів | ✅ Підтримується |
unfollow | Відписатися від користувачів | ✅ Підтримується |
account_warmup | Прогрів облікового запису |