⌘ POUR LES DÉVELOPPEURS

Une plateforme. Trois interfaces puissantes.

Récupérez les conversations avec l'API REST, écoutez les événements en temps réel grâce aux webhooks signés en HMAC, et pilotez par le code la bulle de chat de votre site avec l'API JS du widget.

200 OK · 42 ms Webhooks signés en HMAC-SHA256 Accès par clé API
01 · Premiers pas

Votre première requête en 5 minutes

Un seul prérequis, quelle que soit l'interface : créez une clé API sur la page Développeurs de votre tableau de bord. Avec votre clé, vous pouvez récupérer des données via REST, configurer des webhooks et piloter le widget.

1
Créez une clé
Tableau de bord → Développeurs → Nouvelle clé
2
Envoyez une requête
Avec un en-tête Authorization: Bearer
3
Écoutez les événements
Définissez l'URL de votre webhook
02 · Authentification

Authentifiez-vous avec une clé Bearer

Ajoutez votre clé à chaque requête REST dans l'en-tête Authorization. Les clés commencent par le préfixe rc_live_ et ne sont affichées qu'une seule fois, à leur création — conservez la vôtre en lieu sûr.

curl
curl https://revochat.app/api/v1/conversations \
  -H "Authorization: Bearer rc_live_XXXXXXXXXXXX"
03 · API REST

Un accès programmatique à vos données

URL de base : https://revochat.app/api/v1

GET/conversations

Liste les conversations, les plus récemment mises à jour en premier. Paramètres : status (open | closed), limit (50 par défaut, 200 max.). La réponse renvoie un tableau data ; chaque enregistrement inclut le site, le visiteur, l'agent attribué, les tags, la note CSAT et les horodatages.

curl
curl "https://revochat.app/api/v1/conversations?status=open&limit=20" \
  -H "Authorization: Bearer rc_live_..."
GET/conversations/:id

Renvoie une conversation avec tous ses messages (hors notes internes). Les messages incluent sender, content, type et, le cas échéant, les champs de fichier. Renvoie 404 si elle est introuvable.

Une clé invalide ou absente renvoie une erreur 401 avec le corps { "error": "..." }. Les anciennes clés au préfixe cd_live_ continuent de fonctionner.

04 · Webhooks

Les événements entre vos mains dès qu'ils se produisent

Définissez une URL de webhook dans votre tableau de bord ; les événements choisis sont envoyés en POST avec un corps JSON dès qu'ils se produisent. Chaque requête comporte deux en-têtes : X-RevoChat-Event (le nom de l'événement) et X-RevoChat-Signature (une signature HMAC-SHA256 du corps brut, générée avec le secret de votre webhook) — vérifiez-la avant tout traitement. Format du corps : { event, createdAt, data }. Les envois expirent au bout de 5 secondes : répondez rapidement.

conversation.created
Une nouvelle conversation a démarré
message.created
Un nouveau message est arrivé
conversation.closed
Une conversation a été fermée
conversation.rated
Un visiteur a laissé une note CSAT
node — vérification de signature
const crypto = require("crypto");
const expected = crypto
  .createHmac("sha256", process.env.WEBHOOK_SECRET)
  .update(rawBody) // raw body — BEFORE JSON.parse
  .digest("hex");
if (expected !== req.headers["x-revochat-signature"]) return res.status(401).end();
05 · API JS du widget

Un contrôle total de la bulle de chat

Une fois le script d'installation chargé, l'objet window.RevoChat est prêt :

widget.js
RevoChat.open();                    // open the panel
RevoChat.close();                   // close the panel
RevoChat.toggle();                  // open/close
RevoChat.isOpen();                  // is it open? (boolean)

RevoChat.identify({                 // identify the visitor
  name: "Jane Doe",
  email: "[email protected]",
});

RevoChat.on("ready", () => {});     // widget loaded
RevoChat.on("open", () => {});      // panel opened
RevoChat.on("close", () => {});     // panel closed
RevoChat.on("message", (m) => {});  // new message ({ sender, content, type })

Ajoutez data-lang="en" à la balise script pour imposer la langue du widget page par page (tr / en / de / es). L'attribut data-canli-destek des anciens codes d'intégration reste pris en charge.

06 · Suivi des ventes

Reliez vos conversations au chiffre d'affaires

Ajoutez une ligne à votre page de confirmation de commande ; la vente est rattachée à la dernière conversation du visiteur et apparaît dans Statistiques comme « chiffre d'affaires attribué au chat ».

widget.js
RevoChat.track("purchase", {
  orderId: "ORD-1042",   // optional
  amount: 1299.9,        // required (number)
  currency: "USD",       // default: TRY
});

Pour l'instant, le seul événement pris en charge est purchase ; la vente est attribuée à la conversation la plus récente du visiteur.

Obtenez votre clé, connectez-vous en 5 minutes

Les clés API et les secrets des webhooks se gèrent sur la page Développeurs de votre tableau de bord.

Aller à Développeurs →
200 OK · 42 ms