Aller au contenu
Daber AI

Développeurs

Tout ce que fait l’interface, votre code peut le faire aussi

Une API publique authentifiée par clé, des webhooks signés à la fin de l’appel, l’écriture de l’activité dans votre CRM, et un serveur MCP qui permet de construire tout votre espace de travail depuis Claude ou ChatGPT.

En bref

Existe-t-il une API pour l’agent téléphonique ?

Oui. Il existe une API REST publique authentifiée par une clé envoyée dans l’en-tête Authorization ; elle permet de mettre un appel sortant en file d’attente, de lire les conversations et les transcriptions, et de gérer les agents, les scénarios d’appel et la base de connaissances. À la fin d’un appel, un webhook signé en HMAC est livré à un endpoint que vous configurez, ce qui vous évite tout polling. Si vous travaillez avec Salesforce ou HubSpot, le système peut réécrire l’appel sous forme d’activité terminée rattachée au lead ou au contact. Tout cela est également exposé via un serveur MCP distant, qui permet à un client LLM de construire et d’exploiter l’espace de travail sans écrire la moindre ligne de code. La référence complète, champ par champ et route par route, se trouve dans la documentation OpenAPI liée depuis cette page.

La référence vivante

La référence est générée à partir du code lui-même : elle correspond donc toujours à ce qui tourne réellement. Une route, un champ ou un code d’erreur que vous y voyez est ce que le serveur renvoie.

Ouvrir la référence de l’API

https://server.daber.ai/v1/docs

L’API REST publique

Authentification par clé à chaque requête, snake_case sur le fil, et des scopes par route : chaque clé porte un ensemble de scopes défini, et une clé dépourvue du bon scope n’obtient tout simplement pas la route. Une clé n’est affichée qu’une seule fois, à sa création ; de notre côté, seul son hachage est conservé.

  • Mettre un appel sortant en file d’attente, avec rattachement facultatif à une campagne pour que le résultat alimente ses indicateurs
  • Lire les conversations : métadonnées, transcription, résumé, sentiment et motif du transfert vers un conseiller
  • Gérer les agents et les scénarios d’appel, y compris générer un scénario à partir d’un document de script existant
  • Écrire dans la base de connaissances — les entrées créées par l’API arrivent à l’état de brouillon, et c’est la validation dans l’interface qui les rend consultables par l’agent
  • Chaque modification d’agent ou de scénario est versionnée, y compris lorsqu’elle arrive par l’API — et elle peut être annulée

Mettre un appel sortant en file d’attente

La requête minimale : un identifiant d’agent et un numéro à composer. L’appel entre dans la file et emprunte le même chemin de numérotation que les campagnes : il n’existe pas de second chemin de code au comportement différent.

curl -X POST https://server.daber.ai/v1/calls \
  -H "Authorization: Bearer dbr_live_xxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "agent_id": "3f9c1a52-7b41-4f0e-9c8d-2a5b6e7d8f10",
    "phone": "+972501234567"
  }'
La réponse renvoie l’identifiant de la demande d’appel. Le résultat — décroché ou non, ce qui a été dit et ce qui a été résumé — arrive par le webhook de fin d’appel, et non dans la réponse à cette requête.

Webhooks de fin d’appel

Au lieu d’interroger l’API jusqu’à la fin de l’appel, vous déclarez un endpoint et l’événement vient à vous. Chaque requête porte une signature HMAC-SHA256 calculée sur l’horodatage et le corps du message — la vérifier de votre côté, c’est toute la différence entre un endpoint et un endpoint que n’importe qui peut alimenter.

  • Événements du cycle de vie d’un appel commandé via l’API : mis en file, terminé, échoué
  • Un événement de conversation terminée pour chaque conversation vocale achevée, et pas seulement celles commandées via l’API
  • La signature circule dans un en-tête dédié et comporte un horodatage, ce qui vous permet de rejeter un renvoi ancien
  • Le secret peut être révélé et renouvelé depuis les réglages, et un journal de livraison conserve les dernières tentatives par endpoint

Où va un appel une fois terminé

Un appel terminé est un enregistrement dans au moins deux systèmes : le nôtre et le vôtre. Deux façons de combler cet écart sans coder une synchronisation à la main.

Écriture de l’activité dans le CRM

Si l’appel n’est pas dans le CRM, pour le commercial il n’a pas eu lieu. À la fin de l’appel, le système peut créer une activité terminée dans Salesforce ou HubSpot, rattachée au bon lead ou contact et affectée à son propriétaire, avec le résumé et le résultat. Un échec d’écriture dans le CRM ne fait jamais échouer l’appel lui-même : il est consigné et signalé, et la conversation reste intacte chez nous.

Serveur MCP distant

La même API, exposée en serveur MCP — vous pouvez ainsi relier l’espace de travail à un client LLM comme Claude ou ChatGPT et le construire en conversant : transformer un document de script en scénario d’appel, créer un agent, y rattacher le scénario et les modèles, ajouter des entrées à la base de connaissances et passer un appel de test. L’authentification utilise la même clé d’API, et les outils exposés au client se limitent à ceux qu’autorisent les scopes de cette clé : un client LLM n’obtient jamais plus que la clé qu’il détient.

Avant de passer en production

  • Une clé active est un secret comme un autre : elle n’est affichée qu’une fois et n’est jamais envoyée depuis un navigateur
  • Une limite de débit s’applique par clé, et une vague d’appels détectée peut suspendre une clé automatiquement — la suspension se lève depuis les réglages
  • Vérifier la signature du webhook de votre côté est obligatoire, pas facultatif
  • Le résumé et le sentiment sont écrits après la fin de l’appel et non au raccroché — c’est pourquoi ils arrivent par le webhook et non dans la réponse à la demande d’appel

Appelez l’agent IA maintenant

Un vrai appel, en hébreu. Exactement ce qu’entendraient vos clients.

Faites-vous rappeler par l’agent IA

Laissez un numéro — l’agent vous rappelle en moins d’une minute.

En envoyant ce formulaire, vous acceptez que nous vous contactions au sujet de cette demande. L’appel est enregistré et transcrit.