Przejdź do głównej zawartości

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) lub post_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:

  1. Importuj cele do zestawu danych → uzyskaj dataset_id.
  2. Uruchom kampanię odwołującą się do dataset_id na 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.

Wymaganie licencji

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

PoleTypWymaganeDomyślneOpis
dataset_idintegerNieID istniejącego zestawu danych do dołączenia/zastąpienia. Pomiń lub użyj 0, aby utworzyć nowy.
data_typestringTakusernames lub post_links
strategystringTakshared_pool lub consume_once
entriesstring[]Tak*[]Cele jako tablica JSON. Pierwszeństwo nad raw_text.
raw_textstringTak*Cele jako ciąg oddzielony nową linią (alternatywa dla entries).
modestringNieappendappend dodaje do istniejących wpisów; replace najpierw czyści istniejące.
labelstringNieOpcjonalna czytelna etykieta zestawu danych.
notatka

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

ParametrTypDomyślnyOpis
data_typestringOpcjonalny 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

ParametrTypDomyślnyOpis
limitinteger50Wpisów na stronę (maks. 500)
offsetinteger0Liczba 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

PoleTypWymaganeDomyślneOpis
serialsstring[]Tak[]Numery seryjne urządzeń
dataset_idintegerTakZestaw danych, którego cele napędzają kampanię
enable_multi_accountbooleanNiefalseUtwórz jedno zadanie na konto na każdym urządzeniu
merge_same_username_tasksbooleanNiefalseSpakuj wszystkie cele urządzenia w jedno zadanie
platformstringNieNadpisanie platformy (tiktok / instagram)
min_intervalintegerNie0Minimalna liczba minut między stopniowanymi czasami startu
max_intervalintegerNie0Maksymalna liczba minut między stopniowanymi czasami startu
start_timestringNieCzas startu pierwszego zadania w formacie HH:MM
rotate_proxybooleanNiefalseRotacja proxy urządzenia przed uruchomieniem
switch_account_methodstringNieSposób przełączania kont w trybie multi-konto
official_packagesstring[]Nie[]Ogranicz wykonanie do tych oficjalnych pakietów
clone_package_prefixstringNieOgranicz wykonanie do sklonowanych aplikacji z tym prefiksem
script_configobjectNieNadpisania przełączników funkcji (patrz poniżej)
Typ danych pochodzi z zestawu danych

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.

PoleTypOpis
access_methodstringSposób dostępu do celów: search lub direct
features.follow_usersbooleanObserwuj każdy cel
features.unfollow_usersbooleanPrzestań obserwować każdy cel
features.report_accountbooleanZgłoś każde konto docelowe
features.send_dmbooleanWyślij DM do każdego celu
features.boost_postsbooleanPolub / zapisz / repostuj / udostępnij posty celu
features.mass_commentbooleanKomentuj posty celu
follow_settings.boost_typestringfollow lub unfollow
dm_settings.message_contentsstringTekst DM (oddzielony nową linią dla wariantów)
dm_settings.message_orderstringrandom lub sequential
dm_settings.insert_emojibooleanWstaw losowe emoji
dm_settings.generate_by_chatgptbooleanGeneruj DM przez ChatGPT
dm_settings.chatgpt_settingsobject{ url, api_key, model, system_prompt }
post_settings.skip_posts_countintegerPosty do pominięcia (0–8, tylko źródło usernames)
post_settings.max_posts_countintegerMaks. postów do przetworzenia na cel
post_settings.enable_likebooleanPolub posty
post_settings.enable_favoritebooleanDodaj posty do Ulubionych
post_settings.enable_repostbooleanRepostuj posty
post_settings.enable_sharebooleanUdostępnij posty
post_settings.repeat_timesintegerLiczba powtórzeń działań na postach
post_settings.view_durationsinteger[][min, max] sekund oglądania każdego posta
comment_settings.comment_contentstringTekst komentarza (oddzielony nową linią dla wariantów)
comment_settings.comment_orderstringrandom lub sequential
comment_settings.insert_emojibooleanWstaw losowe emoji
comment_settings.generate_by_chatgptbooleanGeneruj komentarz przez ChatGPT
comment_settings.chatgpt_settingsobject{ url, api_key, model, system_prompt }
task_finish_wait_timeintegerSekundy 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 HTTPKodOpis
40040001Nieprawidłowe parametry (błędny data_type/strategy, puste serials, nieprawidłowy dataset_id, script_config nie jest obiektem lub nie utworzono żadnych zadań)
40340301Zabronione — wymagany plan Pro+
40440401Zestaw danych nie znaleziony
50050001Wewnętrzny błąd serwera
Nie utworzono żadnych zadań

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ż