Una plataforma. Tres superficies potentes.
Obtén conversaciones con la API REST, escucha eventos en tiempo real con webhooks firmados con HMAC y controla por código la burbuja de chat de tu sitio con la API JS del widget.
Tu primera solicitud en 5 minutos
Todas las superficies tienen un único requisito: crear una clave de API en la página Desarrolladores de tu panel. Con tu clave puedes obtener datos por REST, configurar webhooks y controlar el widget.
Autentícate con una clave Bearer
Añade tu clave a cada solicitud REST en la cabecera Authorization. Las claves empiezan por el prefijo rc_live_ y solo se muestran una vez, al crearlas: guarda la tuya en un lugar seguro.
curl https://revochat.app/api/v1/conversations \
-H "Authorization: Bearer rc_live_XXXXXXXXXXXX"Acceso programático a tus datos
URL base: https://revochat.app/api/v1
/conversationsLista las conversaciones, primero las actualizadas más recientemente. Parámetros: status (open | closed), limit (50 por defecto, máximo 200). La respuesta devuelve un array data; cada registro incluye el sitio, el visitante, el agente asignado, las etiquetas, la puntuación CSAT y las marcas de tiempo.
curl "https://revochat.app/api/v1/conversations?status=open&limit=20" \
-H "Authorization: Bearer rc_live_..."/conversations/:idDevuelve una sola conversación con todos sus mensajes (sin las notas internas). Los mensajes incluyen sender, content, type y los campos de archivo cuando existen. Devuelve 404 si no se encuentra.
Una clave no válida o ausente recibe un 401 con un cuerpo { "error": "..." }. Las claves antiguas con el prefijo cd_live_ siguen funcionando.
Los eventos en tus manos en el momento en que ocurren
Configura una URL de webhook en tu panel; los eventos que elijas se envían como POST con un cuerpo JSON en el momento en que ocurren. Cada solicitud lleva dos cabeceras: X-RevoChat-Event (el nombre del evento) y X-RevoChat-Signature (una firma HMAC-SHA256 del cuerpo sin procesar, hecha con tu secreto de webhook): verifícala antes de procesarla. Forma del cuerpo: { event, createdAt, data }. Las entregas caducan a los 5 segundos, así que responde rápido.
conversation.createdmessage.createdconversation.closedconversation.ratedconst crypto = require("crypto");
const expected = crypto
.createHmac("sha256", process.env.WEBHOOK_SECRET)
.update(rawBody) // cuerpo sin procesar — ANTES de JSON.parse
.digest("hex");
if (expected !== req.headers["x-revochat-signature"]) return res.status(401).end();Control total de la burbuja de chat
Una vez cargado el script de instalación, el objeto window.RevoChat está listo:
RevoChat.open(); // abrir el panel
RevoChat.close(); // cerrar el panel
RevoChat.toggle(); // abrir/cerrar
RevoChat.isOpen(); // ¿está abierto? (boolean)
RevoChat.identify({ // identificar al visitante
name: "Jane Doe",
email: "[email protected]",
});
RevoChat.on("ready", () => {}); // widget cargado
RevoChat.on("open", () => {}); // panel abierto
RevoChat.on("close", () => {}); // panel cerrado
RevoChat.on("message", (m) => {}); // mensaje nuevo ({ sender, content, type })Añade data-lang="en" a la etiqueta del script para forzar el idioma del widget en cada página (tr / en / de / es). El atributo data-canli-destek de los códigos de inserción antiguos sigue siendo compatible.
Vincula los chats con los ingresos
Añade una línea a tu página de confirmación de pedido; la venta se vincula a la última conversación del visitante y aparece en Analíticas como "ingresos atribuidos al chat".
RevoChat.track("purchase", {
orderId: "ORD-1042", // opcional
amount: 1299.9, // obligatorio (número)
currency: "USD", // por defecto: TRY
});Por ahora, el único evento compatible es purchase; la venta se atribuye a la conversación más reciente del visitante.
Las claves de API y los secretos de webhook se gestionan en la página Desarrolladores de tu panel.
Ir a Desarrolladores →