Skip to main content

ภาพรวม Local API

TikMatrix มี Local RESTful API ที่ช่วยให้คุณจัดการงานผ่านโปรแกรมได้ เหมาะสำหรับการเชื่อม TikMatrix เข้ากับระบบอัตโนมัติของคุณเอง การทำเวิร์กโฟลว์เฉพาะทาง หรือการทำงานแบบแบตช์

ข้อกำหนด

ข้อกำหนดด้านไลเซนส์

Local API เปิดให้ใช้งานเฉพาะผู้ใช้แผน Pro, Team และ Business เท่านั้น แผน Starter จะไม่สามารถเข้าถึง API ได้

Base URL

API ทำงานบนเครื่องโลคัลที่:

http://localhost:50809/api/v1/
note

พอร์ต 50809 คือพอร์ตเริ่มต้น โปรดตรวจสอบว่า TikMatrix กำลังทำงานก่อนเรียก API

รูปแบบการตอบกลับ

การตอบกลับของ API ทั้งหมดใช้รูปแบบเดียวกัน:

{
"code": 0,
"message": "success",
"data": { ... }
}

คำอธิบายรหัสตอบกลับ

Codeคำอธิบาย
0สำเร็จ
40001คำขอไม่ถูกต้อง - พารามิเตอร์ไม่ถูกต้อง รวมถึง script_config ที่ไม่ผ่านการตรวจสอบ
40002พารามิเตอร์ไม่ครบ - ขาด script_name
40003คำขอไม่ถูกต้อง - ไม่รองรับสคริปต์นี้ในบิลด์หรือแพลตฟอร์มนี้ ไม่มีการติดตั้งใช้งาน หรือสถานะงานไม่ถูกต้อง
40004พารามิเตอร์ไม่ถูกต้อง - สามารถหยุดเฉพาะงานที่กำลังทำงาน
40005พารามิเตอร์ไม่ถูกต้อง - task_ids ไม่สามารถเว้นว่างได้
40301ถูกปฏิเสธ - ต้องใช้แผน Pro+ เพื่อเข้าถึง API
40401ไม่พบทรัพยากร
50001ข้อผิดพลาดภายในเซิร์ฟเวอร์

เริ่มต้นใช้งานอย่างรวดเร็ว

1) ตรวจสอบสิทธิ์การเข้าถึง API

ตรวจสอบว่าไลเซนส์ของคุณรองรับ API หรือไม่:

curl http://localhost:50809/api/v1/license/check

ตัวอย่างการตอบกลับ:

{
"code": 0,
"message": "success",
"data": {
"plan_name": "Pro",
"api_enabled": true,
"device_limit": 20,
"message": "API access enabled"
}
}

2) ค้นหาสคริปต์และพารามิเตอร์

GET /api/v1/schema อธิบายทุกสคริปต์ที่บิลด์นี้รันได้ พร้อมฟิลด์ script_config ที่แต่ละตัวรับอย่างครบถ้วน ทั้งชื่อ ชนิด ค่าเริ่มต้น ค่าที่อนุญาต และฟิลด์ใดจำเป็น ข้อมูลนี้สร้างจากแค็ตตาล็อกชุดเดียวกับที่เซิร์ฟเวอร์ใช้ตรวจสอบ จึงไม่มีทางคลาดจากสิ่งที่การสร้างงานยอมรับจริง

curl http://localhost:50809/api/v1/schema

พารามิเตอร์เสริมสองตัว:

พารามิเตอร์ผลลัพธ์
platformจำกัดรายการไว้ที่ tiktok หรือ instagram แพลตฟอร์มที่บิลด์นี้ไม่มีจะถูกปฏิเสธด้วยรหัส 40001 ค่าเริ่มต้นคือทุกแพลตฟอร์มที่บิลด์รองรับ
include_unavailableตั้งเป็น true เพื่อแสดงชื่อสคริปต์ที่ API ยอมรับแต่ไม่มีการติดตั้งใช้งานจริงด้วย แต่ละรายการจะมี unavailable_reason กำกับ

การตอบกลับ (ย่อ):

{
"code": 0,
"message": "success",
"data": {
"build": { "platforms": ["tiktok"] },
"scripts": [
{
"name": "follow",
"internal_name": "follow",
"summary": "Follow the given users. One task per target.",
"platforms": ["tiktok", "instagram"],
"available": true,
"fan_out": { "kind": "per_item", "key": "target_users", "alt_key": "target_user" },
"any_of": [["target_users", "target_user"]],
"fields": [
{
"key": "access_method",
"type": "string",
"required": false,
"default": "direct",
"choices": ["direct", "search"],
"description": "How to reach the profile: direct (via URL) or search."
}
]
}
]
}
}

fan_out บอกว่าคำขอหนึ่งครั้งจะสร้างงานกี่รายการ: per_device สร้างหนึ่งงานต่อหนึ่งอุปกรณ์ (หรือต่อหนึ่งบัญชีในโหมดหลายบัญชี) ส่วน per_item สร้างหนึ่งงานต่อหนึ่งรายการในฟิลด์ที่ระบุ ต่อหนึ่งอุปกรณ์

3) สร้างงาน

curl -X POST http://localhost:50809/api/v1/task \
-H "Content-Type: application/json" \
-d '{
"serials": ["device_serial_1", "device_serial_2"],
"script_name": "post",
"script_config": {
"content_type": 1,
"captions": "วิดีโอใหม่ของฉัน! #กำลังฮิต"
},
"enable_multi_account": false
}'

4) แสดงรายการงาน

curl "http://localhost:50809/api/v1/task?status=0&page=1&page_size=20"

สคริปต์ที่รองรับ

พารามิเตอร์ script_name รองรับค่าต่อไปนี้:

ชื่อสคริปต์คำอธิบายรองรับ API
postโพสต์เนื้อหา✅ รองรับ
followติดตามผู้ใช้✅ รองรับ
unfollowเลิกติดตามผู้ใช้✅ รองรับ
account_warmupวอร์มบัญชี✅ รองรับ
commentแสดงความคิดเห็น✅ รองรับ
boost_commentถูกใจ/ตอบกลับความคิดเห็นที่มีอยู่✅ รองรับ
loginเข้าสู่ระบบบัญชี✅ รองรับ
profileอัปเดตโปรไฟล์✅ รองรับ
match_accountจับคู่บัญชีในอุปกรณ์✅ รองรับ
likeกดไลก์✅ รองรับ
viewดูโพสต์เป็นระยะเวลาที่กำหนด✅ รองรับ
favoriteบันทึกโพสต์ไปยังรายการโปรด✅ รองรับ
repostรีโพสต์วิดีโอ TikTok✅ รองรับ — เฉพาะ TikTok
messageส่งข้อความ❌ ใช้งานไม่ได้ §
follow_suggestedติดตามบัญชีที่แนะนำ✅ รองรับ — เฉพาะ TikTok
super_marketingแคมเปญซุปเปอร์มาร์เก็ตติ้ง✅ รองรับ †
scrape_userดึงข้อมูลผู้ใช้🔜 เร็วๆ นี้
† Super Marketing ใช้ endpoint เฉพาะ

แคมเปญ Super Marketing ไม่ได้ สร้างผ่าน POST /api/v1/task แต่ทำงานบนชุดข้อมูลเป้าหมายที่นำกลับมาใช้ใหม่ได้ และมี endpoint เฉพาะของตัวเอง — ดู การตั้งค่าสคริปต์ Super Marketing

§ message ไม่มีการติดตั้งใช้งาน

message เคยถูกยอมรับตอนสร้างงาน แต่ไบนารีของสคริปต์ไม่มีตัวจัดการสำหรับมันบนทั้งสองแพลตฟอร์ม งานลักษณะนี้จึงล้มเหลวบนเครื่องด้วยข้อความ "Unknown script" ทุกครั้ง ตอนนี้มันจะถูกปฏิเสธตั้งแต่ตอนสร้างพร้อมระบุเหตุผลดังกล่าว หากต้องการส่งข้อความส่วนตัว ให้ใช้ super_marketing ซึ่งส่ง DM ผ่านชุดข้อมูลเป้าหมาย

สคริปต์เฉพาะแพลตฟอร์ม

repost และ follow_suggested มีการติดตั้งใช้งานเฉพาะ TikTok เท่านั้น การสร้างงานเหล่านี้กับเป้าหมาย Instagram จะถูกปฏิเสธแทนที่จะเข้าคิว — ก่อนหน้านี้งานจะถูกสร้างขึ้นแล้วไปล้มเหลวบนเครื่อง

การตรวจสอบ script_config

การสร้างงานจะตรวจสอบ script_config กับ schema ข้างต้นก่อนเขียนข้อมูลใด ๆ พารามิเตอร์ที่ผิดจึงกลับมาเป็น 400 พร้อมระบุชื่อฟิลด์ แทนที่จะกลายเป็นงานที่ไปล้มเหลวบนมือถือภายหลัง มีสามกรณีที่ถูกปฏิเสธ:

  • ฟิลด์จำเป็นที่ขาดหายหรือว่างเปล่า
  • กลุ่มตัวเลือกที่ต้องมีอย่างน้อยหนึ่งรายการแต่ไม่ได้ตั้งค่าเลย (เช่น follow ต้องมี target_users หรือ target_user อย่างใดอย่างหนึ่ง)
  • ค่าที่อยู่นอกรายการ choices ที่ระบุไว้ของฟิลด์นั้น

คีย์ที่ไม่ได้อยู่ใน schema จะถูก ละเว้น ไม่ใช่ปฏิเสธ — แอปเดสก์ท็อปเองก็ส่งคีย์ของตัวเองผ่านอ็อบเจ็กต์เดียวกันนี้ และการปฏิเสธคีย์ที่ไม่รู้จักจะทำให้การเชื่อมต่อที่มีอยู่พัง คีย์เหล่านี้จะถูกบันทึกไว้ฝั่งเซิร์ฟเวอร์ เพื่อให้คุณเห็นคำที่พิมพ์ผิดได้จากล็อกของแอป

ตัวเลขส่งเป็นสตริงได้ ("20" เช่นเดียวกับ 20) ซึ่งตรงกับที่สคริปต์รับอยู่แล้ว

สถานะงาน

รหัสสถานะข้อความสถานะคำอธิบาย
0pendingงานรอการดำเนินการ
1runningงานกำลังทำงาน
2completedงานสำเร็จ
3failedงานล้มเหลว

อ่านต่อ