Skip to main content
Kanal, kliniğin Flextell’e bağladığı bir mesajlaşma hattıdır: bir WhatsApp numarası, bir Telegram botu, bir web sitesi sohbet widget’ı veya bir Instagram kaydı. Sohbetler ve mesajlar her zaman bir kanal üzerinden akar. Bu sayfa /channels kaynağını ve kanal türüne özel alt uçları anlatır. Kanal uçlarının çoğu X-Tenant başlığı ister (Klinikler ve X-Tenant). Tek istisna GET /channels/capabilities ucudur. Başka bir kliniğin kanal kimliği 404 RESOURCE_NOT_FOUND döner.

Endpoint özeti

Taban adres https://app.flextell.ai/api/v1. Her uç için scope ve izin birlikte gerekir (İzinler ve görünürlük). GET /channels sayfalama ve filtre kabul etmez. Aktif ve pasif tüm kanalları tek yanıtta döner.

Kanal nesnesi

Gömme token’ı, bot token’ı ve sağlayıcıya ait bağlantı bilgileri yanıtta hiçbir zaman yer almaz.

Kanal türleri ve durumlar

GET /channels/capabilities her kanal türü ve sağlayıcı için can_send_media, can_send_audio, can_send_location, can_start_conversation, uses_phone_number, supported_media_types, supported_reactions gibi yetenek bayraklarını listeler. Hangi kanalda ne gönderebileceğinizi buradan öğrenin.

Oluşturma ve güncelleme

POST /channels gövdesi:
Kanal kaydedildikten sonra WhatsApp hattı hazırlanır. Hazırlık başarısız olsa bile istek 201 döner. Bu yanıtta QR kod yoktur. QR kodu almak için POST /channels/{id}/whatsapp/connect çağırın.
PUT /channels/{id} kısmi güncellemedir; yalnızca gönderdiğiniz alanlar değişir.
  • type gönderirseniz hata almazsınız, değer sessizce yok sayılır.
  • name büyük harfe çevrilir ve klinik içinde benzersiz olmalıdır; çakışmada 422 döner. WhatsApp kanalını yeniden adlandırmak bağlantıyı etkilemez.
  • WhatsApp address değeri yeniden rakamlara indirgenir.
  • Web sitesi kanalında website_domain güncellemesi address alanını da günceller.
  • ai_reply_mode: null göndermek yapay zeka modu sabitlemesini kaldırır.
  • Telegram kanalında bot_token, webhook_enabled veya webhook_base_url göndermek botu yeniden bağlar. Telegram isteği reddederse isteğin hiçbir alanı kaydedilmez.

Hata kodları

Silme ve şifre onayı

Silmeden önce GET /channels/{id}/deletion-relations ile etkilenecek kayıtları görün. Yanıt, sayısı sıfırdan büyük ilişkileri relation, label, count ve deleted alanlarıyla listeler. Etiketler Accept-Language başlığına göre Türkçe (Sohbetler, Kara liste kayıtları) veya İngilizce döner. DELETE /channels/{id} isteği gövdede current_password ister. Bu, isteği yapan kullanıcının kendi hesabının şifresidir. Şifre yanlışsa veya yoksa 422 VALIDATION_FAILED döner ve errors.current_password alanı hatayı taşır.
Başarılı yanıt Kanal başarıyla silindi mesajını taşır.
Kanal kalıcı olarak silinir ve bu işlemin kanal kaydı için geri dönüşü yoktur. Flextell önce WhatsApp hattını ve Telegram webhook’unu kapatmayı dener. Sonra kanala bağlı sohbetleri ve kara liste kayıtlarını siler. Önce deletion-relations ucunu çağırın.

Kanala özel uçlar

WhatsApp

Bu uçlar yalnızca WhatsApp kanallarında çalışır. Başka türde CHANNEL_NOT_WHATSAPP (422), desteklenmeyen sağlayıcıda CHANNEL_PROVIDER_UNSUPPORTED (422), sağlayıcıya ulaşılamazsa CHANNEL_PROVIDER_UNAVAILABLE (502) döner.
1

Bağlantıyı başlatın

POST /channels/{id}/whatsapp/connect çağırın. Yanıt channel, qr_code (data:image/png;base64,... biçiminde) ve pairing_code alanlarını taşır. Kanal waiting durumuna geçer ve önceki connection_error temizlenir.
2

QR kodu telefonda okutun

Kanalın address alanındaki numaranın telefonuyla QR kodu okutun.
3

Durumu yoklayın

GET /channels/{id}/whatsapp/connection-state çağırın. Yanıt state alanında open, connecting, close veya refused döner. connecting iken güncel QR ve eşleştirme kodu da gelir; QR yaklaşık 45 saniyede bir yenilenir.
QR kod, kanalın address alanındaki numaradan farklı bir telefonla okutulursa bağlantı kapatılır. Kanal closed olur, connection_error dolar ve durum sorgusu state: close döner. QR kodu doğru telefonla yeniden okutun ya da numara değiştiyse önce kanalın numarasını güncelleyin.
Webhook ayarları: GET /channels/{id}/whatsapp/webhook yanıtı url, enabled ve events alanlarıdır. PUT aynı üç alanı ister: url (http veya https, en çok 2048 karakter), enabled (boolean) ve events (benzersiz metinlerden oluşan dizi, her biri en çok 64 karakter). Flextell adresin sonuna /webhook/whatsapp ekler. WhatsApp entegrasyonunun tamamı için WhatsApp sayfasına bakın.

Telegram

GET /channels/{id}/telegram bağlantı özetini döner: has_bot_token, bot_id, bot_username ve webhook_enabled. Bot token ve webhook gizli anahtarı hiçbir zaman döndürülmez. Botu bağlamak ve yenilemek için POST ve PUT /channels uçlarındaki bot_token alanını kullanın. Ayrıntılar için Telegram sayfasına bakın.

Web sitesi widget’ı

Bu uçlar yalnızca web sitesi kanallarında çalışır; başka türde CHANNEL_NOT_WEBSITE (422) döner. snippet değerini sitenizin </body> etiketinden hemen önüne yapıştırın.
Token yenilenince açık ziyaretçi oturumları sona erer ve sitenizdeki eski gömme kodu çalışmayı bırakır. Yeni kodu sitenize yerleştirin. Widget’ın ziyaretçi tarafındaki uçları için Web sitesi widget’ı sayfasına bakın.

İlgili sayfalar

Sohbetler

Kanallar üzerinden akan sohbetleri listeleyin.

Engellenen kullanıcılar

Bir kanalda engellenen numaraları yönetin.

Hatalar

Tüm hata kodlarının listesi.

İzinler ve görünürlük

İzin ve scope ilişkisi.