דלג לתוכן הראשי

תצורת סקריפט שיווק מתקדם

דף זה מתאר את נקודות ה-API של סקריפט השיווק המתקדם. בשונה מסקריפטים אחרים, השיווק המתקדם אינו נוצר דרך נקטות הקצה הכללית POST /api/v1/task — הוא פועל על בסיס מאגר נתונים לשימוש חוזר של יעדים ויש לו נקודות קצה ייעודיות.

סקירה כללית​

קמפיין שיווק מתקדם משלב מספר פעולות צמיחה (מעקב, ביטול מעקב, דיווח, הודעות ישירות, עצירה, תגובות מסיביות) בריצה אחת על מאגר יעדים. מאגר היעדים מאוחסן כמאגר נתונים:

  • סוג נתונים — מאגר הנתונים מכיל usernames (כינויי TikTok/Instagram/Threads) או post_links (כתובות URL של פוסטים).
  • אסטרטגיה — שולטת כיצד מחולקים היעדים בין המכשירים שלך:
    • shared_pool — כל מכשיר/חשבון שנבחר מעבד את כל היעדים.
    • consume_once — היעדים מחולקים בין המכשירים וכל אחד נצרך פעם אחת.

הזרימה הטיפוסית היא:

  1. ייבוא יעדים למאגר נתונים ← קבל dataset_id.
  2. הפעלה של קמפיין המתייחס ל-dataset_id על מכשיר אחד או יותר.

Threads תומך בניווט פרופיל, מעקב/ביטול מעקב, DM כאשר היעד חושף כפתור הודעה, צפייה בפוסט/לייק/שמירה/שיתוף מחדש, ותגובות. שיתוף ל-SMS מדולג כיוון שלThreads אין workflow שקול. דיווח על חשבון מדולג בכוונה כיוון שThreads דורש סיבה דיווח שנבחרה ידנית.

הגדרות הפיצ'רים (מעקב / הודעות ישירות / תגובות וכו') נקראות מהתצורה השמורה בתוכנת שולחן העבודה (super_marketing_settings.json). ניתן לעקוף כל הגדרה לכל ריצה על ידי מסירת script_config בבקשת ההפעלה.

דרישות רישיון

כל נקודות הקצה של שיווק מתקדם דורשות תוכנית Pro, Team או Business, כמו שאר ה-API המקומי.


ייבוא מאגר נתונים​

יצירת מאגר נתונים חדש או הוספת יעדים למאגר קיים.

  • נקודת קצה: POST /api/v1/super-marketing/dataset

גוף הבקשה​

שדהסוגנדרשברירת מחדלתיאור
dataset_idintegerNo—מזהה מאגר נתונים קיים להוספה / להחלפה. השמט או השתמש ב-0 ליצירת מאגר חדש.
data_typestringYes—usernames או post_links
strategystringYes—shared_pool או consume_once
entriesstring[]Yes*[]יעדים כמערך JSON. גובר על raw_text.
raw_textstringYes*—יעדים כמחרוזת מופרדת בירידות שורה (חלופה ל-entries).
modestringNoappendappend מוסיף לרשומות קיימות; replace מוחק רשומות קיימות תחילה.
labelstringNo—תווית קריאה אנושית אופציונלית למאגר הנתונים.
note

ספק יעדים דרך entries או raw_text. רשומות כפולות וריקות מתעלמות. ייבוא אחד מוגבל ל-100,000 רשומות.

דוגמה​

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"]
}'

הוספת עוד יעדים למאגר נתונים קיים:

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"
}'

תגובה לדוגמה​

{
"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
}
}
}

רשימת מאגרי נתונים​

אחזור כל מאגרי הנתונים עם נתוני צריכה.

  • נקודת קצה: GET /api/v1/super-marketing/datasets

פרמטרי שאילתה​

פרמטרסוגברירת מחדלתיאור
data_typestring—מסנן אופציונלי: usernames או post_links

דוגמה​

curl "http://localhost:50809/api/v1/super-marketing/datasets?data_type=usernames"

תגובה לדוגמה​

{
"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"
}
]
}

קבל מאגר נתונים​

שליפת נתוני מאגר הנתונים ודף מהרשומות שלו.

  • נקודת קצה: GET /api/v1/super-marketing/dataset/{id}

פרמטרי שאילתה​

פרמטרסוגברירת מחדלתיאור
limitinteger50רשומות לכל דף (מקסימום 500)
offsetinteger0מספר רשומות לדלג

דוגמה​

curl "http://localhost:50809/api/v1/super-marketing/dataset/7?limit=100&offset=0"

נקה מאגר נתונים​

הסרת כל הרשומות ממאגר הנתונים. רשומת מאגר הנתונים עצמו נשמרת (וה-dataset_id שלה נשאר תקף לייבואים עתידיים).

  • נקודת קצה: DELETE /api/v1/super-marketing/dataset/{id}

דוגמה​

curl -X DELETE http://localhost:50809/api/v1/super-marketing/dataset/7

תגובה לדוגמה​

{
"code": 0,
"message": "success",
"data": { "cleared": true, "dataset_id": 7 }
}

הפעלת קמפיין​

הפעלת קמפיין שיווק מתקדם על המכשירים הנתונים, תוך שימוש ביעדי מאגר הנתונים.

  • נקודת קצה: POST /api/v1/super-marketing/run

גוף הבקשה​

שדהסוגנדרשברירת מחדלתיאור
serialsstring[]Yes[]מספרי סידורי של מכשירים להפעלה עליהם
dataset_idintegerYes—מאגר נתונים שיעדיו מניעים את הקמפיין
enable_multi_accountbooleanNofalseיצירת משימה אחת לכל חשבון בכל מכשיר
merge_same_username_tasksbooleanNofalseאריזת כל יעדי המכשיר למשימה אחת במקום משימה אחת לכל יעד
platformstringNo—דריסת פלטפורמה (tiktok / instagram)
min_intervalintegerNo0דקות מינימום בין זמני התחלה של משימות
max_intervalintegerNo0דקות מקסימום בין זמני התחלה של משימות
start_timestringNo—זמן התחלה של המשימה הראשונה בפורמט HH:MM
rotate_proxybooleanNofalseהחלפת הפרוקסי של המכשיר לפני ההפעלה
switch_account_methodstringNo—כיצד להחליף חשבונות במצב רב-חשבונות
official_packagesstring[]No[]הגבלת ביצוע לחבילות רשמיות אלה
clone_package_prefixstringNo—הגבלת ביצוע לאפליקציות שיבוט שם החבילה שלהן מתחיל בקידומת זו
script_configobjectNo—הגדרות פיצ'ר שדורסות את התצורה השמורה בשולחן העבודה
סוג הנתונים נלקח ממאגר הנתונים

אינך מעביר data_source_type בבקשת ההפעלה — הקמפיין משתמש אוטומטית ב-data_type ממאגר הנתונים. מאגרי נתונים של קישורי פוסטים תומכים רק בפיצ'רים boost_posts ו-mass_comment.

עקיפות script_config​

script_config הוא אופציונלי. כאשר מושמט, הקמפיין משתמש בהגדרות שקבעת בתוכנת שולחן העבודה. ספק אותו להפעלת קמפיין עצמאי מלא או לדריסת שדות ספציפיים. מפתחות מקבלים גם camelCase וגם snake_case.

שדהסוגתיאור
access_methodstringכיצד להגיע ליעדי שמות משתמש: search או direct
features.follow_usersbooleanעקוב אחרי כל יעד
features.unfollow_usersbooleanבטל מעקב אחרי כל יעד
features.report_accountbooleanדווח על כל חשבון יעד
features.send_dmbooleanשלח הודעה ישירה לכל יעד
features.boost_postsbooleanלייק / מועדפים / שיתוף מחדש / שיתוף לפוסטים של היעד
features.mass_commentbooleanהגב על פוסטים של היעד
follow_settings.boost_typestringfollow או unfollow
dm_settings.message_formatstringmultiline (ברירת מחדל) או spintax — ראה את הפרק על פורמטי ההודעות למטה
dm_settings.message_contentsstringטקסט ההודעה. ב-multiline כל שורה היא הודעה נפרדת (### = מעבר שורה בתוך הודעה); ב-spintax כל המחרוזת היא הודעה אחת (מעברי שורה רגילים, קבוצות {option1|option2}). תומך ב-{username} וב-{sender_username}.
dm_settings.message_orderstringrandom או sequential (חל על פורמט multiline בלבד)
dm_settings.insert_emojibooleanהכנס אמוג'י אקראי להודעה הישירה
dm_settings.generate_by_chatgptbooleanצור את ההודעה הישירה עם ChatGPT
dm_settings.chatgpt_settingsobject{ url, api_key, model, system_prompt }
post_settings.skip_posts_countintegerפוסטים לדלג לפני הפעולה (0–8, מקור שמות משתמש בלבד)
post_settings.max_posts_countintegerמקסימום פוסטים לעיבוד לכל יעד
post_settings.enable_likebooleanלייק לפוסטים
post_settings.enable_favoritebooleanהוסף פוסטים למועדפים
post_settings.enable_repostbooleanשתף מחדש פוסטים
post_settings.enable_sharebooleanשתף פוסטים
post_settings.repeat_timesintegerמספר פעמים לחזור על פעולות הפוסט
post_settings.view_durationsinteger[]שניות [min, max] לצפייה בכל פוסט
comment_settings.comment_contentstringטקסט התגובה (מופרד בירידות שורה לגרסאות מרובות)
comment_settings.comment_orderstringrandom או sequential
comment_settings.insert_emojibooleanהכנס אמוג'י אקראי לתגובה
comment_settings.generate_by_chatgptbooleanצור את התגובה עם ChatGPT
comment_settings.chatgpt_settingsobject{ url, api_key, model, system_prompt }
task_finish_wait_timeintegerשניות להמתין לפני סיום (מונע אובדן נתונים)

פורמטי הודעות DM​

dm_settings.message_contents מפוענח לפי dm_settings.message_format, בדיוק כפי שכיתובי פוסטים מפוענחים לפי caption_format:

פורמטתבניותמעברי שורהגיוון אקראי
multiline (ברירת מחדל)אחת לכל שורה לא ריקה, נבחרת לפי message_order### בתוך שורהבין השורות, באמצעות message_order
spintaxכל המחרוזת היא תבנית אחת\n רגיל בתוך המחרוזתקבוצות {option1|option2}

{username} ו-{sender_username} מוחלפים לפני פענוח קבוצות ה-spintax, כך שמשתנה לעולם אינו נחשב לקבוצת spintax בעלת אפשרות אחת.

// multiline
"dm_settings": {
"message_format": "multiline",
"message_contents": "Hey {username}! Love your content 🙌\nHi {username}###Here is a video I made###v.example.com/{username}",
"message_order": "sequential"
}

// spintax
"dm_settings": {
"message_format": "spintax",
"message_contents": "{Hi|Hello} {username}\n\nHere is a video I made\n\nv.example.com/{username}"
}

דוגמאות​

הפעלה מינימלית (שימוש בהגדרות השמורות בשולחן העבודה)​

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
}'

קמפיין מעקב + הודעות ישירות עצמאי​

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_format": "multiline",
"message_contents": "Hey! Love your content 🙌\nGreat posts, keep it up!",
"message_order": "random",
"insert_emoji": true
}
}
}'

תגובה מסיבית על מאגר נתונים של קישורי פוסטים​

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"
}
}
}'

תגובה לדוגמה​

{
"code": 0,
"message": "success",
"data": { "created_count": 6 }
}

created_count הוא מספר המשימות שנוצרו. המשימות הממתינות רצות לאחר מכן על המכשירים שהוקצו להן כמו כל משימה אחרת — עקוב אחריהן דרך API ניהול משימות.


תגובות שגיאה​

HTTP StatusCodeתיאור
40040001פרמטרים לא תקינים (data_type/strategy לא תקין, serials ריק, dataset_id לא חיובי, script_config אינו אובייקט, או לא נוצרו משימות)
40340301אסור — גישה ל-API דורשת תוכנית Pro+
40440401מאגר הנתונים לא נמצא
50050001שגיאת שרת פנימית
לא נוצרו משימות

אם ההפעלה מחזירה קוד 40001 עם הודעת "No tasks created", ודא שמאגר הנתונים עדיין מכיל יעדים שנותרו (לאסטרטגיית consume_once) ושהמכשירים שנבחרו מחוברים.

ראה גם​