API Rendez-vous (intégration CRM)

Channels & Integrations8 vues

API Rendez-vous (intégration CRM)

Si vous exploitez votre propre CRM, ERP ou écran de réservation, vous pouvez piloter les rendez-vous Conviro via une API REST simple. Les réservations par API utilisent le même moteur que la réservation dans le chat : la disponibilité est recalculée côté serveur selon vos horaires et votre calendrier connecté (Google, Outlook ou flux ICS), le client reçoit l'e-mail de confirmation avec fichier calendrier et lien de gestion, et votre équipe reçoit les notifications habituelles.

Prérequis

  1. Les rendez-vous configurés pour votre assistant : Dashboard -> Assistants -> [votre bot] -> Setup -> Scheduling.
  2. Un calendrier connecté : Google Calendar, Outlook / Microsoft 365, un flux ICS (Apple/iCloud, Fastmail, Nextcloud, ...) ou le calendrier interne intégré.
  3. Une clé API avec les bons scopes : Dashboard -> Settings -> API Keys ; cochez Appointments Read et/ou Appointments Write.

Authentification

Envoyez votre clé dans l'en-tête Authorization à chaque requête :

Authorization: Bearer YOUR_API_KEY

URL de base : https://api.conviro.io

1. Lister les créneaux libres

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.conviro.io/v1/api/appointments/slots?chatbotId=CHATBOT_ID&date=2026-07-15"
  • date (optionnel) — une date locale (YYYY-MM-DD) dans le fuseau de l'assistant ; sans elle, le prochain jour disponible.
  • serviceId (optionnel) — l'un des services renvoyés dans la réponse.

La réponse contient timeZone, vos services et slots sous forme de paires { start, end } au format ISO UTC.

2. Réserver un rendez-vous

Nécessite le scope appointments:write. Les réservations par API sont de confiance — aucun OTP e-mail n'est envoyé, votre système possédant déjà l'identité du client.

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"
  }'

Utilisez un startIso issu de l'endpoint des créneaux. Le serveur revalide le créneau avant de réserver — s'il vient d'être pris, vous recevez un 400 (« plus disponible ») : rechargez les créneaux et réessayez.

3. Lister les rendez-vous

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

Filtres : status (p. ex. confirmed, cancelled), limit (max 200), offset. Nécessite appointments:read.

4. Annuler un rendez-vous

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

Nécessite appointments:write. L'annulation supprime aussi l'événement du calendrier connecté et notifie votre équipe.

Webhooks — garder votre CRM synchronisé

Abonnez-vous dans Dashboard -> Developers -> Webhooks à :

  • appointment.booked — déclenché pour chaque réservation confirmée (chat, widget de réservation ou API)
  • appointment.cancelled — déclenché à chaque annulation

La charge utile contient appointmentId, chatbotId, startIso, endIso, timeZone, service, contactName, contactEmail, contactPhone et channel — tout ce qu'il faut pour refléter la réservation dans votre CRM.

Options de calendrier en un coup d'œil

CalendrierAuthVérif. d'occupationCrée des événements
Google CalendarOAuthouioui
Outlook / Microsoft 365OAuthouioui
Flux ICS (Apple/iCloud, Fastmail, Nextcloud, ...)URL du fluxouinon (lecture seule)
Calendrier interneaucuneses propres réservationsnon

> Astuce: Les clés API sont limitées en débit par clé. Pour de gros volumes, préférez les webhooks au polling de l'endpoint de liste.

apiappointmentscrmwebhooksdevelopersintegration

Cet article vous a-t-il été utile ?