API Bağlantıları
Yapay zeka ve kuralların sistemlerinizden gerçek zamanlı veri çekebilmesi için harici API'lerinizi enuchat'a bağlayın.
Nasıl Çalışır
API Bağlantıları, enuchat'ı kendi arka uç sistemlerinizle entegre etmenizi sağlar — rezervasyon motorları, CRM'ler, sipariş yönetimi, envanter ve daha fazlası. Bir ziyaretçi soru sorduğunda, enuchat gerçek veri almak için API'nizi çağırabilir ve yanıta dahil edebilir.
Akış
- Bir bağlantı yapılandırın — API'nizin temel URL'si ve kimlik doğrulaması
- Endpoint'ler ekleyin — yol şablonları ve yanıt eşlemesi olan spesifik API çağrıları
- Bir kural oluşturun — CALL_API eylemi olan bir yapay zeka veya statik kural
- Ziyaretçi soru sorar — kural tetiklenir, API'nizi çağırır, yanıtı oturum değişkenlerine eşler
- Yapay zeka gerçek verilerle yanıt verir — oturum değişkenleri yapay zekanın doğru bir yanıt oluşturması için kullanılabilir
Örnek: Otel Odası Müsaitliği
Ziyaretçi: "205 nolu oda gelecek hafta müsait mi?"
Yapay zeka kuralı eşleşir: "Ziyaretçi oda müsaitliği hakkında sorduğunda"
CALL_API eylemi: GET https://api.hotel.com/rooms/205/availability
Yanıt eşlendi: room_available = true, price = "€120/gece"
Yapay zeka yanıtlar: "205 nolu oda gelecek hafta gecelik €120'dan müsaittir. Rezervasyon yapmak ister misiniz?"
Bağlantı Kurulumu
Panelinizde Ayarlar → API Bağlantıları'na gidin.
1. Bir Bağlantı Oluşturun
Bir bağlantı, tek bir harici API'yi temsil eder. İhtiyacınız olan bilgiler:
| Alan | Açıklama | Örnek |
|---|---|---|
| Ad | Bu bağlantı için bir etiket | Otel Rezervasyon API |
| Temel URL | API'nin kök URL'si | https://api.hotel.com/v1 |
| Kimlik Doğrulama Türü | Nasıl kimlik doğrulanacağı | Bearer Token, OAuth2 vb. |
2. Kimlik Doğrulama Türleri
None
Kimlik doğrulama gerektirmeyen genel API'ler için.
API Key
Statik bir anahtarı başlık veya sorgu parametresi olarak gönderir.
| Alan | Açıklama |
|---|---|
| Anahtar | API anahtarınızın değeri |
| Başlık Adı | Kullanılacak başlık (varsayılan: X-Api-Key) |
Anahtar şu şekilde gönderilir: X-Api-Key: your_key_here
Bearer Token
Authorization başlığında statik bir token gönderir.
Şu şekilde gönderilir: Authorization: Bearer your_token_here
Basic Auth
Kullanıcı adı ve şifreyi base64 kodlamasıyla gönderir.
Şu şekilde gönderilir: Authorization: Basic dXNlcjpwYXNz
OAuth 2.0 (Client Credentials)
Erişim tokenını otomatik olarak alır ve süresi dolana kadar önbelleğe alır. Salesforce, Google veya özel OAuth sunucuları gibi modern API'ler için en uygunudur.
| Alan | Açıklama |
|---|---|
| Token URL | OAuth token endpoint'i (ör. https://auth.example.com/oauth/token) |
| Client ID | OAuth istemci kimliğiniz |
| Client Secret | OAuth istemci gizli anahtarınız |
| Scope | Boşlukla ayrılmış kapsamlar (ör. read write) |
enuchat token yaşam döngüsünü otomatik olarak yönetir — ilk çağrıda alır, süresi dolana kadar önbelleğe alır, gerektiğinde yeniler.
Güvenlik: Tüm kimlik bilgileri libsodium kullanılarak şifreli olarak saklanır. API yanıtlarında asla açığa çıkmaz — panelde yalnızca maskelenmiş değerler gösterilir.
Endpoint Yapılandırma
Her bağlantının birden fazla endpoint'i olabilir — yapmak istediğiniz spesifik API çağrıları.
| Alan | Açıklama | Örnek |
|---|---|---|
| Ad | Bu endpoint için etiket | Müsaitlik kontrol |
| Yöntem | HTTP yöntemi | GET, POST, PUT, DELETE |
| Yol | URL yolu (temel URL'ye eklenir). Dinamik değerler için {'{'}variable} kullanın | /rooms/{'{'}roomId}/availability |
| Sorgu Parametreleri | Anahtar-değer çiftleri olarak URL parametreleri. Değerler {'{'}variable} destekler | date={'{'}checkIn} |
| Gövde Şablonu | POST/PUT için JSON gövdesi. {'{'}variable} interpolasyonunu destekler | {'{'}"guest": "{'{'}name}"} |
| Yanıt Eşlemesi | Nokta notasyonu kullanarak JSON yanıt alanlarını oturum değişkenlerine eşleyin | data.available → room_available |
| Açıklama | Yapay zeka için bağlam (bu endpoint'in hangi verileri döndürdüğü) | Oda müsaitliği ve fiyatlandırma döndürür |
Değişken Interpolasyonu
Yollarda, sorgu parametrelerinde ve gövde şablonlarında {'{'}variableName} kullanın. Değişkenler şunlardan gelir:
- Oturum değişkenleri — önceki kurallar tarafından ayarlanmış (SET_VARIABLE eylemi)
- Eylem parametreleri — CALL_API kural eyleminde sabit kodlanmış
Yanıt Eşlemesi
Nokta notasyonu kullanarak JSON yanıt alanlarını oturum değişkenlerine eşleyin:
// API returns:
{'{'}
"data": {'{'}
"available": true,
"price": {'{'} "amount": 120, "currency": "EUR" }
}
}
// Mapping:
data.available → room_available // "true"
data.price.amount → room_price // "120"
data.price.currency → room_currency // "EUR"Eşlenen değişkenler konuşmada oturum değişkenleri olarak saklanır ve yapay zekanın yanıt oluşturması için kullanılabilir.
Kurallarla Kullanım
API çağrıları kurallardaki CALL_API eylemiyle tetiklenir. Diğer eylemlerle birleştirebilirsiniz.
Tarif: Sipariş Durumu Sorgulama
Bağlantı: Sipariş Yönetim API — https://api.shop.com/v2 — Bearer Token
Endpoint: GET /orders/{'{'}orderId} → data.status → order_status, data.eta → delivery_eta eşler
Kural (yapay zeka türü): "Ziyaretçi sipariş durumu veya teslimat hakkında sorduğunda"
Eylemler:
- CALL_API → Sipariş Durumu endpoint'i
- REPLY_AI → Yapay zeka
order_statusvedelivery_etakullanarak yanıt verir
Sonuç: Ziyaretçi: "#4521 nolu siparişim nerede?" — Yapay zeka: "#4521 nolu siparişiniz şu anda kargoda ve Perşembe gününe kadar teslim edilmesi bekleniyor."
Tarif: Gerçek Zamanlı Fiyatlandırma
Bağlantı: Fiyatlandırma API — https://pricing.example.com — API Key
Endpoint: GET /products/{'{'}productId}/price → price → current_price, currency → price_currency eşler
Kural (statik): MESSAGE_MATCHES_REGEX: /\b(price|cost|how much)\b/i
Eylemler:
- CALL_API → Fiyatlandırma endpoint'i
- REPLY_TEXT → "Güncel fiyat {'{'}current_price} {'{'}price_currency}."
Test Etme
Kurallarda kullanmadan önce bağlantılarınızı ve endpoint'lerinizi her zaman test edin:
- Bağlantı Testi — kimlik doğrulamanın çalıştığını doğrular (OAuth2 için: token alır)
- Endpoint Testi — örnek değişkenlerle gerçek bir API çağrısı yapar ve yanıtı gösterir
- Kural Testi (kuru çalıştırma) — Kurallar sayfasında bir kuralın eşleşip eşleşmeyeceğini ve hangi eylemlerin çalışacağını test edin
İpucu: Önce bağlantıyı, sonra her endpoint'i, sonra da tam kuralı test ederek başlayın. Bu şekilde sorunları her düzeyde izole edebilirsiniz.
Güvenlik
- Şifreli saklama — tüm kimlik bilgileri saklanmadan önce libsodium ile şifrelenir
- Asla açığa çıkmaz — API yanıtları şifresi çözülmüş kimlik bilgilerini asla içermez, yalnızca maskelenmiş değerler
- SSRF koruması — enuchat localhost, özel IP'ler ve dahili ana bilgisayar adlarına yapılan çağrıları engeller
- Zaman aşımı — harici API çağrılarında takılmayı önlemek için 5 saniyelik zaman aşımı uygulanır
- OAuth2 token önbellekleme — erişim tokenları güvenli bir şekilde önbelleğe alınır ve otomatik olarak yenilenir
- Kiracı izolasyonu — bağlantılar kiracınıza özeldir, başkalarının erişimine kapalıdır
API'lerinizi bağlamaya hazır mısınız?
Bugün sistemlerinizi enuchat ile entegre etmeye başlayın.
Ücretsiz Başlayın