Aller au contenu
Préproduction : l'API répond sur https://api.visiobank.com/v1, avec une clé de test. Les exemples gardent l'adresse de production, api.vizalia.ai, qui ouvrira à la mise en production.

Passer du webhook de dossier à case.submitted

Le dossier qu’un agent vocal dépose pendant l’appel (résumé, données, photos, vidéos) part aujourd’hui par le webhook de dossier, réglé dans le back-office. L’API v1 le transmet aussi par l’événement case.submitted, signé et réessayé comme ses autres webhooks. Le webhook de dossier continue de partir tant qu’il est réglé : vous passez quand vous voulez.

Webhook de dossier case.submitted
Réglage Dans le back-office, sur l’agent Vizalia, la connexion vocale de la clé ou l’espace Un abonnement, par POST /webhook_endpoints (portée webhooks:manage) ou dans l’onglet Webhooks du back-office
Signature En-têtes X-Urgentime-Signature, X-Urgentime-Timestamp et X-Urgentime-Case-Id Standard Webhooks : webhook-id, webhook-timestamp et webhook-signature
Nouvelles tentatives 3, en 25 secondes au plus 7, sur près de deux jours (calendrier) ; le journal GET /events le garde 30 jours
Dossier case_id data.id, la même valeur
Session session_id, le jeton de l’appel session_id, l’identifiant ses_… de la session, celui de ses autres événements
Données data data, en valeurs simples seulement : un objet ou une liste en est écarté
Photos id entier, url, created_at, label, criterion, verification id (pho_…), url, created_at
Vidéos id, url, duration_ms, created_at id (vid_…), url, duration_ms, created_at

summary et submitted_at ne changent pas.

  • Le libellé, le critère et la vérification d’une photo (label, criterion, verification). Le libellé se relit dans caption, par GET /sessions/{session_id}/photos, où la photo a le même id ; il y est posé quelques secondes après la photo : relisez la liste un peu après le dossier.
  • intervention_id : c’est le legacy_id de la session, que donne GET /sessions/{session_id}.
  • room_id et partner_name : le dossier v1 n’en a pas l’équivalent.
  • test : un essai lancé depuis le back-office n’émet aucun événement v1. Pour essayer votre récepteur, envoyez-lui un dossier fictif : POST /webhook_endpoints/{endpoint_id}/test avec {"type": "case.submitted"}.

Les URL des photos et des vidéos expirent au bout d’une heure, comme partout dans la v1 : téléchargez les fichiers à réception, ou relisez les listes de la session pour des URL neuves (Médias).

  1. Abonnez-vous à case.submitted, et gardez le secret whsec_… de la réponse : il n’est renvoyé qu’une fois.

    Fenêtre de terminal
    curl https://api.vizalia.ai/v1/webhook_endpoints \
    -H "Authorization: Bearer $VIZALIA_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{"url": "https://crm.exemple.fr/webhooks/vizalia", "events": ["case.submitted"], "description": "Dossiers des agents vocaux"}'
  2. Traitez les deux le temps de vérifier. Ils portent le même dossier : écartez le second par son identifiant, case_id d’un côté, data.id de l’autre.

  3. Ne gardez que case.submitted, puis retirez le webhook de dossier dans le back-office.