TikoAPI
GELİŞTİRİCİ DOKÜMANI

API Dokümantasyonu

WhatsApp oturumunuzu Tiko WhatsApp API'ye bağlayın, metin ve görsel mesaj gönderin, webhook ile gelen mesajları kendi sisteminize aktarın. Bu sayfadaki örnekler canlı base URL üzerinden hazırlanmıştır.

Giriş

BASE URL · https://whatsapp.tikoapi.com

Tiko WhatsApp API REST tabanlıdır, JSON gövdeleriyle çalışır ve standart HTTP durum kodları döndürür. Mesaj gönderme endpointleri için panelden aldığınız API key gereklidir.

1. Hesap oluşturPanelden kayıt olun ve WhatsApp numaranızı ekleyin.
2. Oturumu bağlaQR kodu telefonunuzla tarayıp numara oturumunu aktif edin.
3. Mesaj gönderREST isteğiyle metin veya görsel mesajınızı iletin.

Kimlik doğrulama

Public API isteklerinde Authorization: Bearer YOUR_API_KEY header'ı kullanılır. Panel endpointleri ise panel girişinden dönen oturum token'ı ile çalışır.

bash · sağlık kontrolü
curl https://whatsapp.tikoapi.com/health

Oturum

Her WhatsApp numarasının panelde görünen bir sessionId değeri vardır. API key panelde seçilen numaraya bağlı oluşturulur.

GET/v1/sessions/YOUR_SESSION_ID/status
POST/v1/sessions/YOUR_SESSION_ID/start
GET/v1/sessions/YOUR_SESSION_ID/qr
bash · oturum durumu
curl https://whatsapp.tikoapi.com/v1/sessions/YOUR_SESSION_ID/status \
  -H "Authorization: Bearer YOUR_API_KEY"

Mesajlar

POST/v1/messages/text

Bağlı WhatsApp oturumunuzdan tek alıcıya metin mesajı gönderir.

ParametreTipAçıklama
sessionIdstringAPI key'in bağlı olduğu numara. Boş bırakılırsa key kapsamındaki numara kullanılır.
tozorunlustringÜlke koduyla telefon numarası. Örn. 905xxxxxxxxx.
textzorunlustringGönderilecek mesaj metni.
bash · metin mesajı
curl -X POST https://whatsapp.tikoapi.com/v1/messages/text \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "sessionId": "YOUR_SESSION_ID",
    "to": "905xxxxxxxxx",
    "text": "Merhaba, Tiko WhatsApp API aktif."
  }'
POST/v1/messages/image

Public olarak erişilebilir bir görsel URL'sini WhatsApp mesajı olarak gönderir.

ParametreTipAçıklama
tozorunlustringAlıcı telefon numarası.
imageUrlzorunlustringHTTPS ile erişilebilen görsel adresi.
captionstringGörsel alt yazısı.
GET/v1/conversations
GET/v1/messages

CRM'iniz ticket kaydını kendi tarafında tutarken Tiko'dan ham konuşma akışını okuyabilir. source alanı customer, api veya manual döner; böylece telefon/WhatsApp Web üzerinden atılan manuel mesajlar API çıkışlarından ayrılır.

QueryTipAçıklama
phonestringTelefon numarasına göre konuşma veya mesaj filtreler.
chatIdstringTek WhatsApp konuşmasını okumak için kullanılır.
directionstringinbound veya outbound.
sourcestringcustomer, api veya manual.
sincedatetimeBelirli tarihten sonraki mesajları getirir.
bash · konuşma akışı
curl https://whatsapp.tikoapi.com/v1/messages?phone=905xxxxxxxxx \
  -H "Authorization: Bearer YOUR_API_KEY"

Panel API

Kullanıcı paneli; giriş, API key yönetimi ve webhook ayarları için aynı API üzerinde çalışır.

POST/v1/auth/registerPanel hesabı ve tenant oluşturur.
POST/v1/auth/loginPanel oturumu açar.
POST/v1/auth/forgot-passwordŞifre sıfırlama isteği alır.
GET/v1/panel/api-keysAPI key listesini döndürür.
POST/v1/panel/api-keysYeni API key oluşturur ve tam değeri bir kez gösterir.
DELETE/v1/panel/api-keys/{id}Aktif API key'i pasifleştirir.
GET/v1/panel/sessionsPaneldeki WhatsApp telefon oturumlarını listeler.
POST/v1/panel/sessionsYeni telefon oturumu oluşturur; QR ile bağlanmaya hazır hale gelir.

Webhook

Gelen mesajları veya mesaj durumlarını sisteminize aktarmak için panelden HTTPS webhook adresi tanımlayın.

GET/v1/panel/webhooksWebhook adreslerini listeler.
POST/v1/panel/webhooksYeni webhook adresi ekler.
POST/v1/panel/webhooks/testKayıtlı webhook adresine test event gönderir.
DELETE/v1/panel/webhooks/{id}Webhook adresini siler.
GET/v1/panel/webhook-deliveriesCRM webhook teslimat geçmişini ve hata durumlarını listeler.

Webhook isteklerinde X-Tiko-Event, X-Tiko-Delivery ve secret tanımlıysa X-Tiko-Signature header'ları gönderilir. İmza formatı sha256=... şeklindedir.

json · örnek payload
{
  "event": "messages.received",
  "timestamp": "2026-06-01T04:42:00.000Z",
  "tenant": { "slug": "tiko-demo" },
  "session": { "id": "wa-905...", "phone": "905..." },
  "data": {
    "message": {
      "direction": "inbound",
      "source": "customer",
      "phone": "905xxxxxxxxx",
      "text": "Merhaba",
      "status": "received"
    }
  }
}

Hata kodları

KodAnlam
200 / 201İstek başarılı.
400Eksik veya hatalı gövde.
401Geçersiz veya eksik token/API key.
404Kaynak bulunamadı.
500Sunucu tarafında beklenmeyen hata.