Asistanınızı kendi kodunuzdan çağırın.
WhatsApp'ta müşterilerinize yanıt veren asistan, aynı talimat, katalog ve ekiple uygulamanızda da konuşur. OpenAI ve Vercel AI SDK biçimleriyle.
Kodlama ajanınıza verin. Dokümanın tamamı tek bir Markdown dosyasında: adresi yapıştırın ya da metni kopyalayın.
İstek
POST https://pb.sonecentral.com/api/v1/chat/completions Authorization: Bearer sk-sone-v1-… { "model": "default", "messages": [{ "role": "user", "content": "Keten gömleğiniz var mı? M beden." }] }
Yanıtın Sonecentral bölümü
"content": "Var! M bedende iki rengimiz kaldı.\n\n…", "sone": { "status": "answered", "messages": [ { "type": "text", "text": "Var! M…" }, { "type": "catalog", "catalog": {…} }, { "type": "actions", "actions": {…} } ] }
Ziyaretçinin gördüğü
Keten gömleğiniz var mı? M beden.
Var! M bedende iki rengimiz kaldı.
Keten gömlek, taş rengi
M ve L stokta
1.290,00 TL
İnceleKeten gömlek, lacivert
Yalnız M kaldı
1.290,00 TL
İnceleHer zengin mesajın düz metin karşılığı da gelir. Yalnız content alanını gösteren bir istemci de eksiksiz çalışır.
Bu API ne yapar
Sonecentral'da kurduğunuz metin asistanı WhatsApp'ta, Instagram'da ve Messenger'da müşterilerinize yanıt veriyor. Bu API aynı asistanı sizin uygulamanıza, sitenize ya da arka uç kodunuza açar.
Yanıtı bir dil modeli değil, sizin asistanınız verir. Panelde yazdığınız talimat ve çalışma alanınızda tanımlı her şey burada WhatsApp, Instagram ve Messenger'daki gibi aynen geçerlidir: hizmetleriniz, ürünleriniz ve stokunuz, katalog öğeleriniz, ekibiniz, bölümleriniz, çalışma saatleriniz, işletme bilgileriniz, kampanyalarınız, kargo kurallarınız, fiyat listeniz ve iskonto yetkiniz, Bilgi Bankası'ndaki belgeler ve onlardan çıkarılan işletme verileri, sipariş ve randevu talepleri, ekibe devir. Çünkü ortada ikinci bir asistan yok: istek, WhatsApp mesajını yanıtlayan aynı çalışma zamanından geçer.
Tek fark ziyaretçinin anonim olmasıdır. Asistan kişinin kendi kayıtlarına bakmaz, randevuyu kendisi kesinleştirmez; her sipariş ve randevu ekibinizin onayını bekleyen bir taleptir.
Adres ve biçimler
Bütün istekler tek adrese gider:
https://pb.sonecentral.com/api/v1Üç biçimden birini seçin. Üçü de aynı asistanla, aynı sohbet kaydıyla çalışır.
| Uç nokta | Biçim ve ne zaman |
|---|---|
POST /chat/completions | OpenAI Chat Completions. OpenAI SDK'sı ya da onunla uyumlu bir istemci zaten elinizdeyse. |
POST /responses | OpenAI Responses. Sohbeti previous_response_id ile sürdürmek istiyorsanız. |
POST /chat | Vercel AI SDK. React ya da Next.js'te useChat ile sohbet penceresi yapıyorsanız. |
model alanına asistanınızın kimliğini yazarsınız. Kimlikleri Asistanlar ve modeller sayfasındaki GET /models listeler. Anahtarınız tek bir asistana açıksa "default" yazmanız yeterli.
Bilinmesi gerekenler
- Ziyaretçiler anonimdir. API'den gelen kişinin kimliği doğrulanmaz. Asistan ona ürün, fiyat, stok ve randevu uygunluğu gibi herkese açık konularda yardım eder; geçmiş siparişler ya da mevcut randevular gibi kişisel kayıtları paylaşmaz. Ayrıntılar: Siparişler, randevular ve gizlilik.
- Yanıt balon balon gelir. İşletmenin güvenlik kontrolleri yanıtın tamamına bakar, metin bu kontrollerden sonra yola çıkar. Akışta harf harf değil, mesaj mesaj ilerlersiniz. Ayrıntılar: Akış.
- Zengin mesajlar düz metinle birlikte gelir. Ürün kartları, düğmeler ve dosyalar yapılandırılmış veri olarak gelir; her birinin düz metin karşılığı da vardır. Ayrıntılar: Zengin mesajlar.
- Sohbetler Mesajlar ekranında görünür. API'den açılan her sohbet Sonecentral'daki Mesajlar ekranında API kaynağıyla, ziyaretçi API ziyaretçisi adıyla görünür. Asistan gerektiğinde sohbeti ekibinize devreder; ekip oradan yazar, ziyaretçi bu yanıtları API'den okur. Ayrıntılar: İnsan devri ve ekip yanıtları.
Uç noktalar
| Uç nokta | Açıklama |
|---|---|
GET /models | Anahtarın kullanabildiği asistanlar. Asistanlar ve modeller |
GET /models/{id} | Tek bir asistan. |
POST /chat/completions | OpenAI Chat Completions, akışlı ya da akışsız. Chat Completions |
POST /responses | OpenAI Responses, akışlı ya da akışsız. Responses API |
GET /responses/{id} | Saklanan bir yanıt. |
DELETE /responses/{id} | Saklanan bir yanıtı siler. |
GET /responses/{id}/input_items | Bir yanıtın girdi öğeleri. |
POST /responses/{id}/cancel | Yanıt varsa her zaman 400 not_cancellable döner, yoksa 404 response_not_found; yanıtlar istek içinde tamamlanır. |
POST /chat | Vercel AI SDK UI mesaj akışı, yani useChat. Vercel AI SDK |
GET /chat/{id}/stream | useChat({ resume: true }) için. Her zaman 204 döner. Bağlantı koparsa |
GET /conversations/{id} | Sohbetin kimde olduğu: asistanda ya da ekipte. Sohbetin durumu |
GET /conversations/{id}/messages | Bir sohbetin mesajları; ekip yanıtlarını okumak için. İnsan devri |
GET /files/{id} | Asistanın paylaştığı bir dosyanın imzalı indirme adresi. Anahtar istemez. Dosyayı indirmek |
GET /key | Kullandığınız anahtarın özeti. Kimlik doğrulama |
Hepsi OPTIONS ön isteğine yanıt verir, bu yüzden tarayıcıdan tarayıcı anahtarıyla çağrılabilir. GET /files/{id} dışındaki her uç nokta anahtar ister ve anahtarın sınırlarına sayılır.
Sonraki adım
Hızlı başlangıç ile anahtarınızı oluşturup ilk isteği gönderin.