Konfiguracja skryptu Super Marketing
Ta strona dokumentuje punkty końcowe API skryptu Super Marketing. W przeciwieństwie do innych skryptów, super marketing nie jest tworzony przez ogólny punkt końcowy POST /api/v1/task — działa na podstawie wielokrotnie używanego zestawu danych celów i ma własne dedykowane punkty końcowe.
Przegląd
Kampania super marketingu łączy kilka działań wzrostowych (obserwowanie, odsubskrybowanie, zgłaszanie, DM, boost, masowe komentarze) w jednym uruchomieniu na puli celów. Pula celów jest przechowywana jako zestaw danych:
- Typ danych — zestaw danych zawiera
usernames(nazwy użytkowników TikTok/Instagram) lubpost_links(URL postów). - Strategia — kontroluje dystrybucję celów między urządzeniami:
shared_pool— każde wybrane urządzenie/konto przetwarza wszystkie cele.consume_once— cele są podzielone między urządzenia i każdy jest zużywany raz.
Typowy przebieg:
- Importuj cele do zestawu danych → uzyskaj
dataset_id. - Uruchom kampanię odwołującą się do
dataset_idna jednym lub więcej urządzeniach.
Przełączniki funkcji (obserwowanie / DM / komentarz itp.) są odczytywane z zapisanej konfiguracji aplikacji desktopowej (super_marketing_settings.json). Możesz nadpisać dowolne z nich dla każdego uruchomienia przez script_config.
Wszystkie punkty końcowe super marketingu wymagają planu Pro, Team lub Business, podobnie jak reszta Local API.
Import zestawu danych
Utwórz nowy zestaw danych lub dodaj cele do istniejącego.
- Punkt końcowy:
POST /api/v1/super-marketing/dataset
Treść żądania
| Pole | Typ | Wymagane | Domyślne | Opis |
|---|---|---|---|---|
| dataset_id | integer | Nie | — | ID istniejącego zestawu danych do dołączenia/zastąpienia. Pomiń lub użyj 0, aby utworzyć nowy. |
| data_type | string | Tak | — | usernames lub post_links |
| strategy | string | Tak | — | shared_pool lub consume_once |
| entries | string[] | Tak* | [] | Cele jako tablica JSON. Pierwszeństwo nad raw_text. |
| raw_text | string | Tak* | — | Cele jako ciąg oddzielony nową linią (alternatywa dla entries). |
| mode | string | Nie | append | append dodaje do istniejących wpisów; replace najpierw czyści istniejące. |
| label | string | Nie | — | Opcjonalna czytelna etykieta zestawu danych. |
Podaj cele przez entries lub raw_text. Duplikaty i puste wpisy są ignorowane. Pojedynczy import jest ograniczony do 100 000 wpisów.
Przykład
curl -X POST http://localhost:50809/api/v1/super-marketing/dataset \
-H "Content-Type: application/json" \
-d '{
"data_type": "usernames",
"strategy": "shared_pool",
"label": "Campaign A targets",
"entries": ["@user_one", "@user_two", "@user_three"]
}'
Dołącz więcej celów do istniejącego zestawu danych przez tekst:
curl -X POST http://localhost:50809/api/v1/super-marketing/dataset \
-H "Content-Type: application/json" \
-d '{
"dataset_id": 7,
"data_type": "usernames",
"strategy": "shared_pool",
"mode": "append",
"raw_text": "@user_four\n@user_five\n@user_six"
}'
Przykładowa odpowiedź
{
"code": 0,
"message": "success",
"data": {
"dataset": {
"stats": {
"id": 7,
"data_type": "usernames",
"strategy": "shared_pool",
"label": "Campaign A targets",
"total": 3,
"consumed": 0,
"remaining": 3,
"created_at": "2026-06-22 09:00:00",
"updated_at": "2026-06-22 09:00:00"
},
"entries": [
{ "id": 1, "value": "@user_one", "consumed": false, "consumed_by": null, "consumed_at": null, "created_at": "2026-06-22 09:00:00", "updated_at": "2026-06-22 09:00:00" }
]
},
"summary": {
"inserted": 3,
"duplicates": 0,
"skipped_empty": 0,
"removed": 0,
"truncated": 0
}
}
}
Lista zestawów danych
Pobierz wszystkie zestawy danych ze statystykami zużycia.
- Punkt końcowy:
GET /api/v1/super-marketing/datasets
Parametry zapytania
| Parametr | Typ | Domyślny | Opis |
|---|---|---|---|
| data_type | string | — | Opcjonalny filtr: usernames lub post_links |
Przykład
curl "http://localhost:50809/api/v1/super-marketing/datasets?data_type=usernames"
Przykładowa odpowiedź
{
"code": 0,
"message": "success",
"data": [
{
"id": 7,
"data_type": "usernames",
"strategy": "shared_pool",
"label": "Campaign A targets",
"total": 6,
"consumed": 0,
"remaining": 6,
"created_at": "2026-06-22 09:00:00",
"updated_at": "2026-06-22 09:05:00"
}
]
}
Pobierz zestaw danych
Pobierz statystyki zestawu danych i stronę jego wpisów.
- Punkt końcowy:
GET /api/v1/super-marketing/dataset/{id}
Parametry zapytania
| Parametr | Typ | Domyślny | Opis |
|---|---|---|---|
| limit | integer | 50 | Wpisów na stronę (maks. 500) |
| offset | integer | 0 | Liczba wpisów do pominięcia |
Przykład
curl "http://localhost:50809/api/v1/super-marketing/dataset/7?limit=100&offset=0"
Wyczyść zestaw danych
Usuń wszystkie wpisy z zestawu danych. Sam rekord zestawu danych jest zachowywany (a jego dataset_id pozostaje ważny dla przyszłych importów).
- Punkt końcowy:
DELETE /api/v1/super-marketing/dataset/{id}
Przykład
curl -X DELETE http://localhost:50809/api/v1/super-marketing/dataset/7
Przykładowa odpowiedź
{
"code": 0,
"message": "success",
"data": { "cleared": true, "dataset_id": 7 }
}
Uruchom kampanię
Uruchom kampanię super marketingu na wybranych urządzeniach, używając celów zestawu danych.
- Punkt końcowy:
POST /api/v1/super-marketing/run
Treść żądania
| Pole | Typ | Wymagane | Domyślne | Opis |
|---|---|---|---|---|
| serials | string[] | Tak | [] | Numery seryjne urządzeń |
| dataset_id | integer | Tak | — | Zestaw danych, którego cele napędzają kampanię |
| enable_multi_account | boolean | Nie | false | Utwórz jedno zadanie na konto na każdym urządzeniu |
| merge_same_username_tasks | boolean | Nie | false | Spakuj wszystkie cele urządzenia w jedno zadanie |
| platform | string | Nie | — | Nadpisanie platformy (tiktok / instagram) |
| min_interval | integer | Nie | 0 | Minimalna liczba minut między stopniowanymi czasami startu |
| max_interval | integer | Nie | 0 | Maksymalna liczba minut między stopniowanymi czasami startu |
| start_time | string | Nie | — | Czas startu pierwszego zadania w formacie HH:MM |
| rotate_proxy | boolean | Nie | false | Rotacja proxy urządzenia przed uruchomieniem |
| switch_account_method | string | Nie | — | Sposób przełączania kont w trybie multi-konto |
| official_packages | string[] | Nie | [] | Ogranicz wykonanie do tych oficjalnych pakietów |
| clone_package_prefix | string | Nie | — | Ogranicz wykonanie do sklonowanych aplikacji z tym prefiksem |
| script_config | object | Nie | — | Nadpisania przełączników funkcji (patrz poniżej) |
Nie przekazuj data_source_type w żądaniu uruchomienia — kampania automatycznie używa data_type zestawu danych (usernames lub post_links). Zestawy danych z linkami do postów obsługują tylko funkcje boost_posts i mass_comment.
Nadpisania script_config
script_config jest opcjonalne. Gdy pominięte, kampania używa przełączników skonfigurowanych w aplikacji desktopowej. Klucze akceptują zarówno camelCase, jak i snake_case.
| Pole | Typ | Opis |
|---|---|---|
| access_method | string | Sposób dostępu do celów: search lub direct |
| features.follow_users | boolean | Obserwuj każdy cel |
| features.unfollow_users | boolean | Przestań obserwować każdy cel |
| features.report_account | boolean | Zgłoś każde konto docelowe |
| features.send_dm | boolean | Wyślij DM do każdego celu |
| features.boost_posts | boolean | Polub / zapisz / repostuj / udostępnij posty celu |
| features.mass_comment | boolean | Komentuj posty celu |
| follow_settings.boost_type | string | follow lub unfollow |
| dm_settings.message_contents | string | Tekst DM (oddzielony nową linią dla wariantów) |
| dm_settings.message_order | string | random lub sequential |
| dm_settings.insert_emoji | boolean | Wstaw losowe emoji |
| dm_settings.generate_by_chatgpt | boolean | Generuj DM przez ChatGPT |
| dm_settings.chatgpt_settings | object | { url, api_key, model, system_prompt } |
| post_settings.skip_posts_count | integer | Posty do pominięcia (0–8, tylko źródło usernames) |
| post_settings.max_posts_count | integer | Maks. postów do przetworzenia na cel |
| post_settings.enable_like | boolean | Polub posty |
| post_settings.enable_favorite | boolean | Dodaj posty do Ulubionych |
| post_settings.enable_repost | boolean | Repostuj posty |
| post_settings.enable_share | boolean | Udostępnij posty |
| post_settings.repeat_times | integer | Liczba powtórzeń działań na postach |
| post_settings.view_durations | integer[] | [min, max] sekund oglądania każdego posta |
| comment_settings.comment_content | string | Tekst komentarza (oddzielony nową linią dla wariantów) |
| comment_settings.comment_order | string | random lub sequential |
| comment_settings.insert_emoji | boolean | Wstaw losowe emoji |
| comment_settings.generate_by_chatgpt | boolean | Generuj komentarz przez ChatGPT |
| comment_settings.chatgpt_settings | object | { url, api_key, model, system_prompt } |
| task_finish_wait_time | integer | Sekundy oczekiwania przed zakończeniem |
Przykłady
Minimalne uruchomienie (użyj zapisanych ustawień)
curl -X POST http://localhost:50809/api/v1/super-marketing/run \
-H "Content-Type: application/json" \
-d '{
"serials": ["device_serial_1", "device_serial_2"],
"dataset_id": 7
}'
Kampania obserwowania + DM
curl -X POST http://localhost:50809/api/v1/super-marketing/run \
-H "Content-Type: application/json" \
-d '{
"serials": ["device_serial_1"],
"dataset_id": 7,
"enable_multi_account": true,
"min_interval": 1,
"max_interval": 3,
"script_config": {
"access_method": "search",
"features": {
"follow_users": true,
"send_dm": true
},
"follow_settings": { "boost_type": "follow" },
"dm_settings": {
"message_contents": "Hey! Love your content 🙌\nGreat posts, keep it up!",
"message_order": "random",
"insert_emoji": true
}
}
}'
Masowe komentarze na zestawie z linkami do postów
curl -X POST http://localhost:50809/api/v1/super-marketing/run \
-H "Content-Type: application/json" \
-d '{
"serials": ["device_serial_1"],
"dataset_id": 9,
"merge_same_username_tasks": true,
"script_config": {
"features": { "mass_comment": true },
"comment_settings": {
"comment_content": "🔥🔥🔥\nAmazing!\nLove this",
"comment_order": "random"
}
}
}'
Przykładowa odpowiedź
{
"code": 0,
"message": "success",
"data": { "created_count": 6 }
}
created_count to liczba utworzonych zadań. Oczekujące zadania są następnie uruchamiane na przypisanych urządzeniach — śledź je przez API Zarządzania Zadaniami.
Odpowiedzi błędów
| Status HTTP | Kod | Opis |
|---|---|---|
| 400 | 40001 | Nieprawidłowe parametry (błędny data_type/strategy, puste serials, nieprawidłowy dataset_id, script_config nie jest obiektem lub nie utworzono żadnych zadań) |
| 403 | 40301 | Zabronione — wymagany plan Pro+ |
| 404 | 40401 | Zestaw danych nie znaleziony |
| 500 | 50001 | Wewnętrzny błąd serwera |
Jeśli uruchomienie zwraca kod 40001 z komunikatem "No tasks created", sprawdź czy zestaw danych ma pozostałe cele (dla strategii consume_once) i czy wybrane urządzenia są online.
Zobacz Również
- Przegląd Lokalnego API - Przegląd API i szybki start
- API Zarządzania Zadaniami - Śledzenie i zarządzanie utworzonymi zadaniami
- API statusu kont - Sprawdzanie statusu kont i urządzeń