Super Marketing Script Configuratie
Deze pagina documenteert de API-eindpunten voor het Super Marketing script. In tegenstelling tot andere scripts wordt super marketing niet aangemaakt via het generieke POST /api/v1/task eindpunt — het werkt op basis van een herbruikbare dataset van doelen met eigen eindpunten.
Overzicht
Een super marketing campagne combineert meerdere groei-acties (volgen, ontvolgen, rapporteren, DM, boosten, massa commentaar) in één run over een pool van doelen. De pool van doelen is opgeslagen als een dataset:
- Gegevenstype — de dataset bevat ofwel
usernames(TikTok/Instagram handles) ofpost_links(post-URLs). - Strategie — bepaalt hoe doelen worden verdeeld over uw apparaten:
shared_pool— elk geselecteerd apparaat/account verwerkt alle doelen.consume_once— doelen worden verdeeld over apparaten en elk wordt eenmalig verwerkt.
De typische stroom is:
- Importeer doelen in een dataset → krijg een
dataset_id. - Start een campagne die verwijst naar die
dataset_idop één of meer apparaten.
Functieschakelaars (volgen / DM / commentaar, etc.) en hun gedetailleerde instellingen worden gelezen uit de opgeslagen configuratie van de desktopapp (super_marketing_settings.json). U kunt die per run overschrijven door script_config mee te geven in het startverzoek.
Alle super marketing eindpunten vereisen een Pro, Team of Business plan, net als de rest van de Local API.
Dataset Importeren
Maak een nieuwe dataset of voeg doelen toe aan een bestaande.
- Eindpunt:
POST /api/v1/super-marketing/dataset
Verzoekbody
| Veld | Type | Vereist | Standaard | Beschrijving |
|---|---|---|---|---|
| dataset_id | integer | Nee | — | Bestaande dataset-id om toe te voegen / te vervangen. Laat weg of gebruik 0 om een nieuwe dataset te maken. |
| data_type | string | Ja | — | usernames of post_links |
| strategy | string | Ja | — | shared_pool of consume_once |
| entries | string[] | Ja* | [] | Doelen als JSON-array. Heeft prioriteit boven raw_text. |
| raw_text | string | Ja* | — | Doelen als een door regeleinden gescheiden string (alternatief voor entries). |
| mode | string | Nee | append | append voegt toe aan bestaande items; replace wist eerst bestaande items. |
| label | string | Nee | — | Optioneel leesbaar label voor de dataset. |
Geef doelen op via ofwel entries of raw_text. Duplicaten en lege items worden genegeerd. Een enkele import is beperkt tot 100.000 items.
Voorbeeld
curl -X POST http://localhost:50809/api/v1/super-marketing/dataset \
-H "Content-Type: application/json" \
-d '{
"data_type": "usernames",
"strategy": "shared_pool",
"label": "Campagne A doelen",
"entries": ["@user_one", "@user_two", "@user_three"]
}'
Voeg meer doelen toe aan een bestaande dataset via door regeleinden gescheiden 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"
}'
Voorbeeldresponse
{
"code": 0,
"message": "success",
"data": {
"dataset": {
"stats": {
"id": 7,
"data_type": "usernames",
"strategy": "shared_pool",
"label": "Campagne A doelen",
"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
}
}
}
Datasets Weergeven
Haal alle datasets op met verbruiksstatistieken.
- Eindpunt:
GET /api/v1/super-marketing/datasets
Queryparameters
| Parameter | Type | Standaard | Beschrijving |
|---|---|---|---|
| data_type | string | — | Optioneel filter: usernames of post_links |
Voorbeeld
curl "http://localhost:50809/api/v1/super-marketing/datasets?data_type=usernames"
Voorbeeldresponse
{
"code": 0,
"message": "success",
"data": [
{
"id": 7,
"data_type": "usernames",
"strategy": "shared_pool",
"label": "Campagne A doelen",
"total": 6,
"consumed": 0,
"remaining": 6,
"created_at": "2026-06-22 09:00:00",
"updated_at": "2026-06-22 09:05:00"
}
]
}
Dataset Ophalen
Haal de statistieken van een dataset op en een pagina met items.
- Eindpunt:
GET /api/v1/super-marketing/dataset/{id}
Queryparameters
| Parameter | Type | Standaard | Beschrijving |
|---|---|---|---|
| limit | integer | 50 | Items per pagina (max 500) |
| offset | integer | 0 | Aantal items om over te slaan |
Voorbeeld
curl "http://localhost:50809/api/v1/super-marketing/dataset/7?limit=100&offset=0"
Dataset Wissen
Verwijder alle items uit een dataset. De dataset zelf blijft bewaard (en het dataset_id blijft geldig voor toekomstige imports).
- Eindpunt:
DELETE /api/v1/super-marketing/dataset/{id}
Voorbeeld
curl -X DELETE http://localhost:50809/api/v1/super-marketing/dataset/7
Voorbeeldresponse
{
"code": 0,
"message": "success",
"data": { "cleared": true, "dataset_id": 7 }
}
Campagne Starten
Start een super marketing campagne op de opgegeven apparaten, met de doelen van een dataset.
- Eindpunt:
POST /api/v1/super-marketing/run
Verzoekbody
| Veld | Type | Vereist | Standaard | Beschrijving |
|---|---|---|---|---|
| serials | string[] | Ja | [] | Serienummers van apparaten om op te draaien |
| dataset_id | integer | Ja | — | Dataset waarvan de doelen de campagne aandrijven |
| enable_multi_account | boolean | Nee | false | Maak één taak per account op elk apparaat |
| merge_same_username_tasks | boolean | Nee | false | Pak alle doelen van een apparaat in één taak in plaats van één taak per doel |
| platform | string | Nee | — | Platform override (tiktok / instagram) |
| min_interval | integer | Nee | 0 | Minimale minuten tussen vertraagde taakstarttijden |
| max_interval | integer | Nee | 0 | Maximale minuten tussen vertraagde taakstarttijden |
| start_time | string | Nee | — | Starttijd eerste taak in HH:MM |
| rotate_proxy | boolean | Nee | false | Roteer de apparaatproxy vóór uitvoering |
| switch_account_method | string | Nee | — | Hoe accounts te wisselen in multi-account modus |
| official_packages | string[] | Nee | [] | Beperk uitvoering tot deze officiële pakketten |
| clone_package_prefix | string | Nee | — | Beperk uitvoering tot kloon-apps waarvan de pakketnaam begint met dit voorvoegsel |
| script_config | object | Nee | — | Functieschakelaars / per-functie instellingen die de desktop-opgeslagen config overschrijven (zie hieronder) |
U geeft geen data_source_type mee in het startverzoek — de campagne gebruikt automatisch het data_type van de dataset (usernames of post_links). Post-link datasets ondersteunen alleen de functies boost_posts en mass_comment.
script_config overschrijvingen
script_config is optioneel. Wanneer weggelaten, gebruikt de campagne de functieschakelaars en instellingen die u heeft geconfigureerd in de desktopapp. Geef het mee om een volledig zelfstandige campagne te draaien of om specifieke velden te overschrijven. Sleutels accepteren zowel camelCase als snake_case.
| Veld | Type | Beschrijving |
|---|---|---|
| access_method | string | Hoe gebruikersnaamdoelen te bereiken: search of direct |
| features.follow_users | boolean | Volg elk doel |
| features.unfollow_users | boolean | Ontvolg elk doel |
| features.report_account | boolean | Rapporteer elk doelaccount |
| features.send_dm | boolean | Stuur een direct bericht naar elk doel |
| features.boost_posts | boolean | Like / favoriet / repost / deel de berichten van het doel |
| features.mass_comment | boolean | Reageer op de berichten van het doel |
| follow_settings.boost_type | string | follow of unfollow |
| dm_settings.message_contents | string | DM-tekst (door regeleinden gescheiden voor meerdere varianten) |
| dm_settings.message_order | string | random of sequential |
| dm_settings.insert_emoji | boolean | Voeg willekeurige emoji in de DM in |
| dm_settings.generate_by_chatgpt | boolean | Genereer de DM met ChatGPT |
| dm_settings.chatgpt_prompt | string | Prompt bij het genereren van de DM |
| dm_settings.chatgpt_settings | object | { url, api_key, model, system_prompt } |
| post_settings.skip_posts_count | integer | Berichten om over te slaan vóór actie (0–8, alleen gebruikersnaam-bron) |
| post_settings.max_posts_count | integer | Max. te verwerken berichten per doel |
| post_settings.enable_like | boolean | Like berichten |
| post_settings.enable_favorite | boolean | Voeg berichten toe aan favorieten |
| post_settings.enable_repost | boolean | Repost berichten |
| post_settings.enable_share | boolean | Deel berichten |
| post_settings.repeat_times | integer | Aantal keren herhalenvan berichtacties |
| post_settings.view_durations | integer[] | [min, max] seconden om elk bericht te bekijken |
| comment_settings.comment_content | string | Commentaartekst (door regeleinden gescheiden voor meerdere varianten) |
| comment_settings.comment_order | string | random of sequential |
| comment_settings.insert_emoji | boolean | Voeg willekeurige emoji in het commentaar in |
| comment_settings.generate_by_chatgpt | boolean | Genereer het commentaar met ChatGPT |
| comment_settings.chatgpt_settings | object | { url, api_key, model, system_prompt } |
| task_finish_wait_time | integer | Seconden te wachten vóór voltooiing (voorkomt gegevensverlies) |
Voorbeelden
Minimale run (gebruik desktop-opgeslagen instellingen)
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
}'
Zelfstandige volgen + DM campagne
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
}
}
}'
Massa commentaar op een post-link dataset
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"
}
}
}'
Voorbeeldresponse
{
"code": 0,
"message": "success",
"data": { "created_count": 6 }
}
created_count is het aantal aangemaakte taken. De wachtende taken worden vervolgens uitgevoerd op hun toegewezen apparaten — volg ze via de Taakbeheer API.
Foutresponses
| HTTP Status | Code | Beschrijving |
|---|---|---|
| 400 | 40001 | Ongeldige parameters |
| 403 | 40301 | Verboden — API-toegang vereist Pro+ plan |
| 404 | 40401 | Dataset niet gevonden |
| 500 | 50001 | Interne serverfout |
Als de run code 40001 retourneert met de melding "No tasks created", controleer dan of de dataset nog resterende doelen heeft (voor consume_once strategie) en dat de geselecteerde apparaten online zijn.
Zie Ook
- Local API Overzicht - API-overzicht en snelstart
- Taakbeheer API - Bijhouden en beheren van de aangemaakte taken
- Accountstatus-API - Account- en apparaatstatus opvragen