Yerel API Genel Bakış
TikMatrix, görevleri programatik olarak yönetmenizi sağlayan yerel bir RESTful API sunar. Bu, TikMatrix'i kendi otomasyon sistemlerinizle entegre etmek, özel iş akışları oluşturmak veya toplu işlemler gerçekleştirmek için kullanışlıdır.
Gereksinimler
Yerel API yalnızca Pro, Team ve Business plan abonelerine açıktır. Starter plan API erişimine sahip değildir.
Temel URL
API yerel makinenizde çalışır:
http://localhost:50809/api/v1/
50809 varsayılan porttur. API istekleri göndermeden önce TikMatrix'in çalıştığından emin olun.
Yanıt Formatı
Tüm API yanıtları şu formatı takip eder:
{
"code": 0,
"message": "success",
"data": { ... }
}
Yanıt Kodları
| Code | Açıklama |
|---|---|
| 0 | Başarılı |
| 40001 | Hatalı İstek - Geçersiz parametreler; doğrulamadan geçemeyen bir script_config dahil |
| 40002 | Hatalı İstek - script_name eksik |
| 40003 | Hatalı İstek - Betik bu derlemede veya bu platformda desteklenmiyor, uygulaması yok ya da görev durumu geçersiz |
| 40004 | Hatalı İstek - Yalnızca çalışan görevler durdurulabilir |
| 40005 | Hatalı İstek - task_ids boş olamaz |
| 40301 | Yasak - API erişimi Pro+ planı gerektirir |
| 40401 | Bulunamadı - Kaynak bulunamadı |
| 50001 | Dahili Sunucu Hatası |
Hızlı Başlangıç
1. API Erişimini Kontrol Et
Önce lisansınızın API erişimini destekleyip desteklemediğini doğrulayın:
curl http://localhost:50809/api/v1/license/check
Yanıt:
{
"code": 0,
"message": "success",
"data": {
"plan_name": "Pro",
"api_enabled": true,
"device_limit": 20,
"message": "API access enabled"
}
}
2. Betikleri ve parametrelerini keşfetme
GET /api/v1/schema, bu derlemenin çalıştırabildiği her betiği ve her birinin aldığı script_config alanlarını tam olarak açıklar: adlar, türler, varsayılanlar, izin verilen değerler ve hangilerinin zorunlu olduğu. Sunucunun doğrulama için kullandığı katalogdan üretildiği için görev oluşturmanın kabul ettiğinden sapamaz.
curl http://localhost:50809/api/v1/schema
İki isteğe bağlı sorgu parametresi:
| Parametre | Etkisi |
|---|---|
platform | Listeyi tiktok veya instagram ile sınırlar. Bu derlemede bulunmayan bir platform 40001 ile reddedilir. Varsayılan olarak derlemedeki tüm platformlar. |
include_unavailable | true yapıldığında, API’nin kabul ettiği ama çalışan bir uygulaması olmayan betik adlarını da listeler. Her biri bir unavailable_reason taşır. |
Yanıt (kısaltılmış):
{
"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, bir isteğin kaç görev üreteceğini söyler: per_device cihaz başına bir görev oluşturur (çoklu hesap modunda hesap başına), per_item ise belirtilen alanın her girdisi için cihaz başına bir görev oluşturur.
3. Görev Oluştur
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": "Yeni videoma göz at! #viral"
},
"enable_multi_account": false,
"start_time": "14:30"
}'
4. Görevleri Listele
curl http://localhost:50809/api/v1/task?status=0&page=1&page_size=20
Mevcut Skriptler
script_name parametresi aşağıdaki değerleri kabul eder:
| Script Adı | Açıklama | API Desteği |
|---|---|---|
post | İçerik yayınla | ✅ Destekleniyor |
follow | Kullanıcıları takip et | ✅ Destekleniyor |
unfollow | Takibi bırak | ✅ Destekleniyor |
account_warmup | Hesapları ısıt | ✅ Destekleniyor |
comment | Gönderilere yorum yap | ✅ Destekleniyor |
boost_comment | Mevcut yorumları beğen/yanıtla | ✅ Destekleniyor |
login | Hesaba giriş yap | ✅ Destekleniyor |
profile | Profili güncelle | ✅ Destekleniyor |
match_account | Cihazda hesapları eşleştir | ✅ Destekleniyor |
like | Beğen | ✅ Destekleniyor |
view | Bir gönderiyi belirli bir süre izle | ✅ Destekleniyor |
favorite | Gönderiyi Favorilere kaydet | ✅ Destekleniyor |
repost | TikTok videolarını yeniden paylaş | ✅ Destekleniyor — yalnızca TikTok |
message | Doğrudan mesaj gönder | ❌ Kullanılamıyor § |
follow_suggested | Önerilen hesapları takip et | ✅ Destekleniyor — yalnızca TikTok |
super_marketing | Süper pazarlama kampanyası | ✅ Destekleniyor † |
scrape_user | Kullanıcı verisi çek | 🔜 Yakında |
Süper pazarlama kampanyası POST /api/v1/task üzerinden oluşturulmaz. Yeniden kullanılabilir bir hedef veri setine dayanır ve kendine özgü endpoint'leri vardır — bkz. Süper Marketing Skript Yapılandırması.
message için bir uygulama yokmessage görev oluşturma tarafından kabul ediliyordu, ancak betik ikilisinin her iki platformda da bunun için bir işleyicisi yok; bu yüzden bu tür her görev cihazda "Unknown script" hatasıyla başarısız oluyordu. Artık bu gerekçeyle daha oluşturulurken reddediliyor. Bugün doğrudan mesaj göndermek için, DM’leri bir hedef veri kümesi üzerinden yürüten super_marketing kullanın.
repost ve follow_suggested yalnızca TikTok için uygulanmıştır. Instagram hedefiyle oluşturmak kuyruğa alınmak yerine reddedilir — daha önce görev oluşturuluyor, ardından cihazda başarısız oluyordu.
script_config doğrulaması
Görev oluşturma, herhangi bir şey yazmadan önce script_config’i yukarıdaki şemaya göre doğrular; böylece hatalı bir parametre, telefonda sonradan başarısız olan bir görev yerine, alanı adlandıran bir 400 olarak geri döner. Üç şey reddedilir:
- eksik veya boş bırakılmış zorunlu bir alan,
- hiçbir üyesi ayarlanmamış bir "şunlardan biri" grubu (örneğin
follow,target_users/target_useralanlarından birine ihtiyaç duyar), - bir alanın belgelenmiş
choicesdeğerleri dışında bir değer.
Şemada yer almayan anahtarlar reddedilmez, yok sayılır — masaüstü uygulaması kendi anahtarlarını aynı nesneden geçirir ve bilinmeyen anahtarları reddetmek mevcut entegrasyonları bozardı. Sunucu tarafında günlüklenir, böylece bir yazım hatasını uygulama günlüğünde fark edebilirsiniz.
Sayılar dizge olarak da gönderilebilir (20 kadar "20" de olur); betiklerin zaten kabul ettiği biçimle uyumludur.
Görev Durumu
| Durum Kodu | Durum Metni | Açıklama |
|---|---|---|
| 0 | pending | Görev yürütülmeyi bekliyor |
| 1 | running | Görev şu anda çalışıyor |
| 2 | completed | Görev başarıyla tamamlandı |
| 3 | failed | Görev başarısız oldu |
Sonraki Adımlar
- Görev Yönetimi API - Görev oluşturma, sorgulama ve yönetimi
- Etkinlik Günlüğü API'si - Etkinlik günlüklerini izleyin ve yönetin
- Post Skript Yapılandırması - Post skript parametrelerini yapılandırın
- Takip Skript Yapılandırması - Takip skript parametrelerini yapılandırın
- Önerilen Takip Skript Yapılandırması - Önerilen takip skript parametrelerini yapılandırın
- Takibi Bırak Skript Yapılandırması - Takibi bırak skript parametrelerini yapılandırın
- Hesap Isıtma Skript Yapılandırması - Hesap ısıtma skript parametrelerini yapılandırın
- Yorum Skript Yapılandırması - Yorum skript parametrelerini yapılandırın
- Yorum Güçlendirme (Yanıt) Skript Yapılandırması - Mevcut yorumları beğen/yanıtla
- Beğeni Skript Yapılandırması - Beğeni skript parametrelerini yapılandırın
- View Skript Yapılandırması - Gönderileri belirli bir süre izleyin
- Favori Skript Yapılandırması - Gönderileri Favorilere kaydedin
- Mesaj Skript Yapılandırması - Mesaj skript parametrelerini yapılandırın
- Giriş Skript Yapılandırması - Giriş skript parametrelerini yapılandırın
- Profil Skript Yapılandırması - Profil skript parametrelerini yapılandırın
- Hesap Eşleştirme Skript Yapılandırması - Hesap eşleştirme skript parametrelerini yapılandırın
- Süper Marketing Skript Yapılandırması - Hedef veri setleri içe aktarın ve süper marketing kampanyaları başlatın
- TCP Tarama API - TCP/IP üzerinden Android cihazları tarayın ve bağlayın
- Hesap Durumu API'si - Hesap durumunu, cihaz bağlantısını ve oturum açma durumunu sorgulayın
- API Örnekleri - Farklı dillerde kod örnekleri