Конфігурація скрипту Post
Ця сторінка документує параметри конфігурації для скрипту post, що використовується при створенні завдань.
Огляд
Скрипт post використовується для автоматичної публікації відео або зображень на TikTok, Instagram або Threads. TikTok та Instagram підтримують методи публікації, специфічні для платформи, та параметри звуку нижче; Threads підтримує дописи з написами та чернетки.
Параметри запиту
При створенні завдання можна вказати наступні параметри верхнього рівня:
| Параметр | Тип | Обов'язковий | За замовчуванням | Опис |
|---|---|---|---|---|
| serials | string[] | Умовний | [] | Список серійних номерів пристроїв (Режим 1: на основі пристроїв) |
| usernames | string[] | Умовний | [] | Список імен користувачів для створення завдань (Режим 2: на основі імен користувачів) |
| script_name | string | Так | - | Назва скрипту для виконання (наприклад, "post") |
| script_config | object | Так | - | Параметри конфігурації скрипту (див. нижче) |
| enable_multi_account | boolean | Ні | false | Увімкнути режим мультиакаунту (створити завдання для кожного облікового запису на пристрої) |
| start_time | string | Ні | - | Необов'язковий час початку у форматі "HH:MM" |
| platform | string | Умовний* | auto | Цільова платформа: tiktok, instagram, threads. Див. примітку нижче |
Примітка: Необхідно вказати або serials, або usernames.
*Поведінка параметра Platform:
- TikMatrix і IgMatrix: Параметр
platformігнорується, якщо його вказано. Платформа автоматично визначається з імені додатка (TikMatrix → tiktok, IgMatrix → instagram). - TikMatrix Pro: Параметр
platformє обов'язковим і має бути явно вказаний якtiktok,instagramабоthreads. - Threads: підтримує дописи відео/зображення, кілька зображень, підписи, обидва джерела матеріалів та
save_draft. Threads ігнорує параметри звуку, товару, місця, обкладинки, мітки ШІ, посилання на сторіс та вбудоване планування, оскільки додаток не надає цих можливостей.
Конфігурація скрипту (script_config)
Об'єкт script_config містить параметри для скрипту post. Нижче наведено доступні параметри:
Загальні параметри (TikTok, Instagram та Threads)
| Параметр | Тип | Обов'язковий | За замовчуванням | Опис |
|---|---|---|---|---|
| content_type | integer | Ні | 0 | Тип контенту: 0 = Відео, 1 = Зображення |
| image_count | integer | Ні | 1 | Кількість зображень для вибору (коли content_type = 1) |
| captions | string | Ні | "" | Текст підпису для публікації. Підтримує формат spintax: {варіант1|варіант2|варіант3} |
| caption_format | string | Ні | "multiline" | Спосіб обробки багаторядкових підписів: multiline (вставляє реальні переноси рядків) або singleline (замінює \n пробілами) |
| ai_label | boolean | Ні | false | Чи додавати до публікації мітку вмісту, створеного ШІ |
| save_draft | boolean | Ні | false | Лише TikTok (звичайні відео) і Threads. Зберегти публікацію як чернетку замість негайної публікації. В Instagram та сторіс TikTok (placement = "story") немає чернеток: завдання з цим параметром там відхиляється з помилкою 40001, а не публікується. |
| post_way | string | Ні | "addButton" | Спосіб публікації. Докладніше дивіться в розділі Способи публікації нижче |
| material_source | string | Ні | "materialLibrary" | Джерело матеріалів: materialLibrary або localFolder (ігнорується, якщо надано material_list) |
| material_path | string | Умовний | "" | Шлях до локальної папки (обов'язковий, коли material_source = "localFolder") |
| material_list | string[] | Ні | [] | Масив прямих шляхів до файлів матеріалів. При наданні обходить логіку material_source та material_path. Ідеально для автоматизації API. |
| materials_tags | string | Ні | "" | Теги матеріалів через кому для фільтрації з бібліотеки |
| upload_wait_time | integer | Ні | 10 | Секунди очікування завершення завантаження |
| upload_wait_time_min | integer | Ні | - | Нижня межа діапазону очікування. Якщо задано обидві межі, скрипт обирає випадкове значення з діапазону для кожного завдання |
| upload_wait_time_max | integer | Ні | - | Верхня межа діапазону очікування |
| sound_wait_time | integer | Ні | 10 | Секунди очікування завантаження звуку |
| sound_wait_time_min | integer | Ні | - | Нижня межа діапазону очікування. Якщо задано обидві межі, скрипт обирає випадкове значення з діапазону для кожного завдання |
| sound_wait_time_max | integer | Ні | - | Верхня межа діапазону очікування |
| add_sound | string/integer | Ні | "-1" | Параметр звуку: -1 = за замовчуванням, 0 = вимкнути, 1 = увімкнути, custom = використати власний звук |
| sound_name | string | Умовний | "" | Назва/URL звуку (обов'язковий, коли post_way = "useSound") |
| custom_sound_keyword | string | Умовний | "" | Ключове слово для пошуку власного звуку (обов'язковий, коли add_sound = "custom") |
| origin_sound_volume | integer | Ні | 100 | Гучність оригінального звуку (0-100) |
| add_sound_volume | integer | Ні | 100 | Гучність доданого звуку (0-100) |
upload_wait_timeзастосовується і до звичайної публікації, і до режимуsave_draft. Навіть під час збереження в чернетку TikTok/Threads все одно потрібен час, щоб завершити завантаження відео у фоновому режимі.
upload_wait_timeіsound_wait_timeтакож приймають діапазон: надішлітьupload_wait_time_min/upload_wait_time_max(абоsound_wait_time_min/sound_wait_time_max), і скрипт щоразу обиратиме нове випадкове значення в межах діапазону, щоб усі завдання не чекали однакову кількість секунд. Якщо присутні обидві межі, пріоритет має діапазон; інакше використовується ключ з одним значенням.
Способи публікації (post_way)
Параметр post_way керує тим, як скрипт відкриває екран публікації:
| Значення | Опис |
|---|---|
addButton | (За замовчуванням) Натискає кнопку створення "+" у застосунку, а потім вибирає медіа з галереї пристрою. Працює з усіма місцями публікації (reel, story, post). Рекомендується для більшості випадків. |
share | Запускає Android share intent безпосередньо з медіафайлу в застосунок Instagram/TikTok. Це альтернативний спосіб, що обходить навігацію в застосунку; корисно, коли сценарій addButton працює ненадійно на певному пристрої або версії застосунку. |
useSound | Спочатку переходить до певної аудіодоріжки (через URL а бо ключове слово sound_name), а потім прив'язує відео до цього звуку. Лише для Reels / TikTok. Потрібно задати sound_name. Несумісно з placement = "post" або placement = "story". |
Коли placement дорівнює post (допис у стрічці Instagram), автоматизація звуку не підтримується незалежно від post_way. Скрипт автоматично пропустить крок зі звуком.
Параметри лише для TikTok
| Параметр | Тип | Обов'язковий | За замовчуванням | Опис |
|---|---|---|---|---|
| placement | string | Ні | "" | Місце публікації: "" (звичайне відео, за замовчуванням) або "story" (TikTok Story). При "story" скрипт натискає "Your Story" після налаштування звуку, пропускаючи заголовок/посилання на товар/мітку ШІ. |
| add_product_link | integer | Ні | 0 | Чи додавати посилання на товар/магазин: 0 = ні, 1 = так |
Параметри лише для Instagram
| Параметр | Тип | Обов'язковий | За замовчуванням | Опис |
|---|---|---|---|---|
| placement | string | Ні | "reel" | Місце публікації: reel (Reels), story (Stories) або post (звичайний допис у стрічці). Примітка: параметри звуку не підтримуються, коли placement дорівнює post |
| enable_schedule_reels | boolean | Ні | false | Чи планувати Reel на майбутній час |
| schedule_reels_time | string | Умовно | "" | Запланований час публікації у форматі YYYY-MM-DD HH:MM (обов'язково, якщо enable_schedule_reels = true) |
| trial_reel | boolean | Ні | false | Чи вмикати перемикач «Пробний Reels» в Instagram, щоб ролик спочатку показувався тим, хто не підписаний, і не з'являвся в профілі (застосовується лише при placement = "reel"). Облікові записи без цієї опції публікують звичайний Reels |
| story_link | string | Ні | "" | URL для прикріплення як посилання-стікер на Story (застосовується лише коли placement = "story") |
Приклади
Публікація у TikTok Story
Публікація безпосередньо в TikTok Story. Після налаштування звуку скрипт натискає "Your Story" — без кроків заголовку/посилання на товар/мітки ШІ :
curl -X POST http://localhost:50809/api/v1/task \
-H "Content-Type: application/json" \
-d '{
"serials": ["device_serial_1"],
"script_name": "post",
"script_config": {
"content_type": 0,
"placement": "story",
"post_way": "addButton",
"material_list": ["C:/Videos/story_video.mp4"],
"upload_wait_time": 30
}
}'
Базове завдання публікації з прям им списком матеріалів
Це рекомендований підхід для автоматизації API - передавайте шляхи до матеріалів безпосередньо, не покладаючись на бібліотеку матеріалів або сканування папок:
curl -X POST http://localhost:50809/api/v1/task \
-H "Content-Type: application/json" \
-d '{
"serials": ["device_serial_1"],
"script_name": "post",
"script_config": {
"content_type": 0,
"captions": "Подивіться на моє нове відео! #viral #fyp",
"material_list": [
"C:/Videos/video1.mp4"
],
"upload_wait_time": 60
}
}'
Завдання публікації з бібліотекою матеріалів (TikTok)
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": 0,
"captions": "Подивіться на моє нове відео! #viral #fyp",
"post_way": "addButton",
"material_source": "materialLibrary",
"materials_tags": "trending, dance",
"upload_wait_time": 60,
"add_sound": "-1"
},
"enable_multi_account": false
}'
Завдання публікації за списком імен користувачів
Цей режим дозволяє створювати завдання безпосередньо для конкретних облікових записів без знання їх серійних номерів пристроїв:
curl -X POST http://localhost:50809/api/v1/task \
-H "Content-Type: application/json" \
-d '{
"usernames": ["@user1", "@user2", "@user3"],
"script_name": "post",
"script_config": {
"content_type": 0,
"captions": "Подивіться на моє нове відео! #viral #fyp",
"material_list": [
"C:/Videos/video1.mp4"
],
"upload_wait_time": 60
}
}'
Завдання публікації з локальною папкою (Instagram)
curl -X POST http://localhost:50809/api/v1/task \
-H "Content-Type: application/json" \
-d '{
"serials": ["device_serial_1"],
"script_name": "post",
"script_config": {
"content_type": 0,
"captions": "Чудовий контент! #instagram #reels",
"post_way": "addButton",
"placement": "reel",
"material_source": "localFolder",
"material_path": "C:/Videos/instagram",
"upload_wait_time": 45
},
"enable_multi_account": true
}'
Допис у стрічці Instagram (placement: post)
Публікація у звичайну стрічку Instagram (не Reel). Параметри звуку для цього місця публікації не підтримуються:
curl -X POST http://localhost:50809/api/v1/task \
-H "Content-Type: application/json" \
-d '{
"serials": ["device_serial_1"],
"script_name": "post",
"platform": "instagram",
"script_config": {
"content_type": 0,
"captions": "New post! #instagram",
"placement": "post",
"post_way": "addButton",
"material_list": ["C:/Videos/my_video.mp4"],
"upload_wait_time": 45
}
}'
Публікація з власним звуком
curl -X POST http://localhost:50809/api/v1/task \
-H "Content-Type: application/json" \
-d '{
"serials": ["device_serial_1"],
"script_name": "post",
"script_config": {
"content_type": 0,
"captions": "Танцюю під цей трендовий звук!",
"post_way": "addButton",
"add_sound": "custom",
"custom_sound_keyword": "trending dance 2024",
"origin_sound_volume": 30,
"add_sound_volume": 70,
"material_source": "materialLibrary",
"upload_wait_time": 60
}
}'