Randevu API'si (CRM Entegrasyonu)

Channels & Integrations5 görüntüleme

Randevu API'si (CRM Entegrasyonu)

Kendi CRM, ERP veya rezervasyon ekranınız varsa Conviro randevularını basit bir REST API üzerinden oradan yönetebilirsiniz. API ile alınan randevular sohbet içi rezervasyonla aynı motoru kullanır: uygunluk, çalışma saatleriniz ve bağlı takviminiz (Google, Outlook veya ICS feed) üzerinden sunucu tarafında yeniden hesaplanır; müşteri, takvim dosyası ve self-servis yönetim bağlantısı içeren onay e-postasını alır; ekibiniz her zamanki bildirimleri alır.

Ön koşullar

  1. Asistanınız için randevular yapılandırılmış olmalı: Dashboard -> Assistants -> [botunuz] -> Setup -> Scheduling.
  2. Bağlı bir takvim: Google Calendar, Outlook / Microsoft 365, ICS feed (Apple/iCloud, Fastmail, Nextcloud, ...) veya yerleşik dahili takvim.
  3. Doğru kapsamlara sahip bir API anahtarı: Dashboard -> Settings -> API Keys; Appointments Read ve/veya Appointments Write seçin.

Kimlik doğrulama

Anahtarınızı her istekte Authorization başlığında gönderin:

Authorization: Bearer YOUR_API_KEY

Temel URL: https://api.conviro.io

1. Açık saatleri listeleyin

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.conviro.io/v1/api/appointments/slots?chatbotId=CHATBOT_ID&date=2026-07-15"
  • date (isteğe bağlı) — asistanın saat dilimindeki yerel tarih (YYYY-MM-DD); boş bırakılırsa bir sonraki uygun gün.
  • serviceId (isteğe bağlı) — yanıtta dönen hizmetlerden biri.

Yanıt; timeZone, services ve UTC ISO formatında { start, end } çiftleri olarak slots içerir.

2. Randevu oluşturun

appointments:write kapsamı gerekir. API ile alınan randevular güvenilir kabul edilir — e-posta OTP gönderilmez; müşterinin kimliği zaten sizin sisteminizdedir.

curl -X POST "https://api.conviro.io/v1/api/appointments" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chatbotId": "CHATBOT_ID",
    "startIso": "2026-07-15T09:00:00.000Z",
    "contactEmail": "[email protected]",
    "contactName": "Jane Doe",
    "contactPhone": "+31 6 00000000"
  }'

startIso değerini slots uç noktasından alın. Sunucu, rezervasyondan önce saati yeniden doğrular — bu arada dolduysa 400 ("artık uygun değil") alırsınız: saatleri yenileyip tekrar deneyin.

3. Randevuları listeleyin

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.conviro.io/v1/api/appointments?status=confirmed&limit=50"

Filtreler: status (ör. confirmed, cancelled), limit (en fazla 200), offset. appointments:read gerekir.

4. Randevu iptal edin

curl -X DELETE "https://api.conviro.io/v1/api/appointments/APPOINTMENT_ID" \
  -H "Authorization: Bearer YOUR_API_KEY"

appointments:write gerekir. İptal, etkinliği bağlı takvimden de siler ve ekibinize bildirir.

Webhook'lar — CRM'inizi senkron tutun

Dashboard -> Developers -> Webhooks altından şunlara abone olun:

  • appointment.bookedher onaylanan randevuda tetiklenir (sohbet, rezervasyon widget'ı veya API)
  • appointment.cancelled — bir randevu iptal edildiğinde tetiklenir

Payload; appointmentId, chatbotId, startIso, endIso, timeZone, service, contactName, contactEmail, contactPhone ve channel alanlarını içerir — randevuyu CRM'inize aynen aktarmak için gereken her şey.

Takvim seçeneklerine genel bakış

TakvimKimlik doğrulamaDoluluk kontrolüEtkinlik oluşturma
Google CalendarOAuthevetevet
Outlook / Microsoft 365OAuthevetevet
ICS feed (Apple/iCloud, Fastmail, Nextcloud, ...)feed URL'sievethayır (salt okunur)
Dahili takvimyokkendi randevularıhayır

> İpucu: API anahtarları anahtar başına hız sınırına tabidir. Büyük hacimli senkronizasyonda liste ucunu sorgulamak yerine webhook'ları tercih edin.

apiappointmentscrmwebhooksdevelopersintegration

Bu makale yardımcı oldu mu?