सुपर मार्केटिंग स्क्रिप्ट कॉन्फ़िगरेशन
यह पेज Super Marketing स्क्रिप्ट के API एंडपॉइंट का दस्तावेज़ीकरण करता है। अन्य स्क्रिप्ट के विपरीत, सुपर मार्केटिंग POST /api/v1/task एंडपॉइंट से नहीं बनाया जाता — यह लक्ष्यों के एक पुन: उपयोगी डेटासेट पर चलता है और इसके अपने समर्पित एंडपॉइंट हैं।
अवलोकन
एक सुपर मार्केटिंग अभियान कई विकास क्रियाओं (फ़ॉलो, अनफ़ॉलो, रिपोर्ट, DM, बूस्ट, मास कमेंट) को एक लक्ष्य पूल पर एकत्रित करता है। लक्ष्यों का पूल डेटासेट के रूप में संग्रहीत होता है:
- Data type — डेटासेट में
usernames(TikTok/Instagram/Threads हैंडल) याpost_links(पोस्ट URL) होते हैं। - Strategy — नियंत्रित करता है कि ल क्ष्य डिवाइस पर कैसे वितरित होते हैं:
shared_pool— प्रत्येक डिवाइस/खाता सभी लक्ष्यों को प्रोसेस करता है।consume_once— लक्ष्य डिवाइस में विभाजित होते हैं और प्रत्येक एक बार उपयोग होता है।
सामान्य प्रवाह:
- Import — डेटासेट में लक्ष्य आयात करें →
dataset_idप्राप्त करें। - Run — उस
dataset_idका संदर्भ देते हुए एक या अधिक डिवाइस पर अभियान चलाएं।
Threads प्रोफाइल नेविगेशन, फ़ॉलो/अनफ़ॉलो, DM (जहां लक्ष्य एक संदेश बटन प्रदर्शित करता है), पोस्ट व्यू/लाइक/सेव/रीपोस्ट और टिप्पणियां समर्थन करता है। शेयर-टू-SMS को छोड़ दिया जाता है क्योंकि Threads के पास कोई समकक्ष वर्कफ़्लो नहीं है। खाता रिपोर्टिंग को जानबूझकर छोड़ दिया जाता है क्योंकि Threads को एक मानव-चयनित रिपोर्ट कारण की आवश्यकता है।
फ़ीचर टॉगल और विस्तृत सेटिंग डेस्कटॉप ऐप की सहेजी गई कॉन्फ़िगरेशन (super_marketing_settings.json) से पढ़ी जाती हैं। रन अनुरोध में script_config पास करके किसी भी सेटिंग को ओवरराइड कर सकते हैं।
सभी सुपर मार्केटिंग एंडपॉइंट के लिए Pro, Team, या Business योजना आवश्यक है।
डेटासेट आयात करें
नया डेटासेट बनाएं या मौजूदा में लक्ष्य जोड़ें।
- Endpoint:
POST /api/v1/super-marketing/dataset
Request Body
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
| dataset_id | integer | No | — | मौजूदा डेटासेट ID जोड़ने/बदलने के लिए। नया बनाने के लिए छोड़ें या 0 उपयोग करें। |
| data_type | string | Yes | — | usernames या post_links |
| strategy | string | Yes | — | shared_pool या consume_once |
| entries | string[] | Yes* | [] | JSON array के रूप में लक्ष्य। raw_text से प्राथमिकता लेता है। |
| raw_text | string | Yes* | — | नई-पंक्ति से अलग लक्ष्य (entries का विकल्प)। |
| mode | string | No | append | append मौजूदा में जोड़ता है; replace पहले मौजूदा साफ़ करता है। |
| label | string | No | — | डेटासेट के लिए वैकल्पिक लेबल। |
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
}
}
}
डेटासेट सूची देखें
सभी डेटासेट उपभोग आँकड़ों के साथ प्राप्त करें।
- Endpoint:
GET /api/v1/super-marketing/datasets
Query Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| data_type | string | — | वैकल्पिक फ़िल्टर: 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"
}
]
}
डेटासेट प्राप्त करें
डेटासेट की आँकड़े और एंट्री का एक पेज प्राप्त करें।
- Endpoint:
GET /api/v1/super-marketing/dataset/{id}
Query Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| limit | integer | 50 | प्रति पेज एंट्री (अधिकतम 500) |
| offset | integer | 0 | छोड़ी जाने वाली एंट्री की संख्या |
उदाहरण
curl "http://localhost:50809/api/v1/super-marketing/dataset/7?limit=100&offset=0"
डेटासेट साफ़ करें
डेटासेट से सभी एंट्री हटाएं। डेटासेट रिकॉर्ड बना रहता है।
- Endpoint:
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 }
}
अभियान चलाएं
दिए गए डिवाइस पर डेटासेट के लक्ष्यों का उपयोग करके सुपर मार्केटिंग अभियान चलाएं।
- Endpoint:
POST /api/v1/super-marketing/run
Request Body
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
| serials | string[] | Yes | [] | डिवाइस सीरियल नंबर |
| dataset_id | integer | Yes | — | अभियान के लक्ष्य वाला डेटासेट |
| enable_multi_account | boolean | No | false | प्रत्येक डिवाइस पर प्रति खाता एक टास्क बनाएं |
| merge_same_username_tasks | boolean | No | false | सभी लक्ष्यों को एक टास्क में पैक करें |
| platform | string | No | — | प्लेट फ़ॉर्म ओवरराइड (tiktok / instagram) |
| min_interval | integer | No | 0 | स्टैगर्ड टास्क शुरू समय के बीच न्यूनतम मिनट |
| max_interval | integer | No | 0 | स्टैगर्ड टास्क शुरू समय के बीच अधिकतम मिनट |
| start_time | string | No | — | पहले टास्क का शुरू समय HH:MM में |
| rotate_proxy | boolean | No | false | चलाने से पहले डिवाइस प्रॉक्सी बदलें |
| switch_account_method | string | No | — | मल्टी-अकाउंट मोड में खाता बदलने का तरीका |
| official_packages | string[] | No | [] | इन आधिकारिक पैकेज तक सीमित रखें |
| clone_package_prefix | string | No | — | इस प्रीफ़िक्स से शुरू होने वाले क्लोन ऐप्स तक सीमित |
| script_config | object | No | — | फ़ीचर टॉगल / सेटिंग जो डेस्कटॉप कॉन्फ़िगरेशन को ओवरराइड करती हैं (नीचे देखें) |
रन अनुरोध में data_source_type पास न करें — अभियान स्वचालित रूप से डेटासेट के data_type का उपयोग करता है।
script_config ओवरराइड
script_config वैकल्पिक है। जब छोड़ा जाए, डेस्कटॉप ऐप की सेटिंग उपयोग होती हैं। Keys camelCase और snake_case दोनों स्वीकार करती हैं।
| Field | Type | Description |
|---|---|---|
| access_method | string | username लक्ष्यों तक पहुंचने का तरीका: search या direct |
| features.follow_users | boolean | प्रत्येक लक्ष्य को फ़ॉलो करें |
| features.unfollow_users | boolean | प्रत्येक लक्ष्य को अनफ़ॉलो करें |
| features.report_account | boolean | प्रत्येक लक्ष्य खाते की रिपोर्ट करें |
| features.send_dm | boolean | प्रत्येक ल क्ष्य को डायरेक्ट मैसेज भेजें |
| features.boost_posts | boolean | लक्ष्य की पोस्ट लाइक/पसंदीदा/रीपोस्ट/शेयर करें |
| features.mass_comment | boolean | लक्ष्य की पोस्ट पर कमेंट करें |
| follow_settings.boost_type | string | follow या unfollow |
| dm_settings.message_format | string | multiline (डिफ़ॉल्ट) या spintax — नीचे संदेश प्रारूप अनुभाग देखें |
| dm_settings.message_contents | string | संदेश टेक्स्ट। multiline में हर पंक्ति अलग संदेश है (### = संदेश के भीतर पंक्ति विराम); spintax में पूरी स्ट्रिंग एक संदेश है (सामान्य पंक्ति विराम, {option1|option2} समूह)। {username} और {sender_username} समर्थित हैं। |
| dm_settings.message_order | string | random या sequential (केवल multiline प्रारूप पर लागू) |
| dm_settings.insert_emoji | boolean | DM में रैंडम इमोजी डालें |
| dm_settings.generate_by_chatgpt | boolean | ChatGPT से DM जनरेट करें |
| dm_settings.chatgpt_settings | object | { url, api_key, model, system_prompt } |
| post_settings.skip_posts_count | integer | कार्य करने से पहले छ ोड़ी जाने वाली पोस्ट (0–8) |
| post_settings.max_posts_count | integer | प्रति लक्ष्य अधिकतम पोस्ट प्रोसेस |
| post_settings.enable_like | boolean | पोस्ट लाइक करें |
| post_settings.enable_favorite | boolean | पोस्ट पसंदीदा में जोड़ें |
| post_settings.enable_repost | boolean | पोस्ट रीपोस्ट करें |
| post_settings.enable_share | boolean | पोस्ट शेयर करें |
| post_settings.repeat_times | integer | पोस्ट क्रियाएं दोहराने की संख्या |
| post_settings.view_durations | integer[] | प्रत्येक पोस्ट देखने के [min, max] सेकंड |
| comment_settings.comment_content | string | कमेंट टेक्स्ट (कई वेरिएंट के लिए नई पंक्ति से अलग) |
| comment_settings.comment_order | string | random या sequential |
| comment_settings.insert_emoji | boolean | कमेंट में रैंडम इमोजी डालें |
| comment_settings.generate_by_chatgpt | boolean | ChatGPT से कमेंट जनरेट करें |
| comment_settings.chatgpt_settings | object | { url, api_key, model, system_prompt } |
| task_finish_wait_time | integer | समाप्ति से पहले प्रतीक्षा सेकंड |
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
}'
स्व-निहित फ़ॉलो + 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_format": "multiline",
"message_contents": "Hey! Love your content 🙌\nGreat posts, keep it up!",
"message_order": "random",
"insert_emoji": true
}
}
}'