> For the complete documentation index, see [llms.txt](https://library.zoom.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://library.zoom.com/technical-library/es/servicios-comercial/zoom-contact-center/expert-insights/integrate-engagement-data.md).

# Integrar datos de interacción

### Resumen

Zoom centro de contacto genera valiosos datos de interacción durante cada interacción con el cliente, incluidas grabaciones de llamadas, transcripciones, notas del agente y disposiciones. Siga leyendo para aprender cómo almacenar los datos de interacción en sistemas externos (por ejemplo, CRM y otros sistemas de registro) para crear una vista unificada del cliente, habilitar una capacitación eficaz de los agentes o cumplir con los requisitos de cumplimiento al usar Zoom centro de contacto.

Desglosaremos los diferentes métodos de Integraciones para ayudarle a elegir el mejor enfoque según cómo sus agentes puedan trabajar con mayor eficiencia.

El mejor método depende principalmente de un factor clave: **la aplicación en la que los agentes están gestionando sus interacciones**. Las dos opciones que analizaremos son:

1. Agentes que usan el Conector CTI de CRM ZCC listo para usar dentro del CRM.
2. Agentes que trabajan en la aplicación Zoom Workplace, lo que requiere una solución personalizada con API de ZCC y webhooks.

***

### Integraciones del Conector CTI de CRM listo para usar

Este es el método más sencillo. Si sus agentes usan un Conector CTI de CRM ZCC, la mayoría de los datos de interacción se pueden sincronizar automáticamente entre la plataforma Zoom y el CRM correspondiente.

#### <mark style="color:azul;">Cómo funciona</mark>

El Conector CTI integra la interfaz del agente de ZCC directamente en el CRM. Cuando finaliza una interacción, datos como grabaciones, transcripciones, notas y disposiciones se guardan automáticamente en Zoom y se vinculan al registro correspondiente (por ejemplo, un ticket o un contacto) en su CRM.

#### <mark style="color:azul;">Requisitos de configuración</mark>

La funcionalidad que permite la sincronización de datos entre Zoom y el CRM viene «lista para usar», pero requiere activación en el portal del administrador de ZCC.

Complete los siguientes pasos:

{% stepper %}
{% step %}
**Habilitar en el portal del administrador de ZCC**

Inicie sesión en el portal del administrador de Zoom como administrador y navegue a Gestión del centro de contacto > Integraciones > Aplicaciones.

Busque la integración de CRM correspondiente y habilite la configuración adecuada para permitir el almacenamiento de datos en su CRM.
{% endstep %}

{% step %}
**Permisos de CRM**

Revise y siga las [guías de configuración de Integraciones de CRM](https://support.zoom.com/) para verificar que el usuario de Integraciones de CRM tenga los permisos de escritura necesarios para todos los objetos relevantes.
{% endstep %}
{% endstepper %}

#### <mark style="color:azul;">Plataformas de CRM compatibles</mark>

Esta funcionalidad está disponible a través del Conector CTI de CRM ZCC cuando los agentes usan los siguientes CRM:

* Salesforce
* Zendesk
* ServiceNow
* Microsoft Dynamics
* HubSpot

Con los conectores CTI de CRM, no se requiere ninguna configuración especial y, de forma predeterminada, guardarán los datos de interacción en el CRM.

***

### Integraciones personalizadas mediante API

Si sus agentes usan la aplicación nativa de Zoom Workplace o ZCC Smart Embed, necesitará una solución personalizada para transferir los datos de interacción. La forma principal de hacerlo es con la API de Zoom centro de contacto.

Hay dos enfoques principales para acceder a los datos de interacción mediante la API:

* **Consulta periódica:** Consulte periódicamente la API de Zoom para ver si hay nuevos datos de interacción disponibles.
* **Webhooks:** Reciba una notificación en tiempo real de Zoom en cuanto una transcripción esté lista.

También hay un tercer enfoque, **Integraciones de Flow Events**, que funciona para ciertos tipos de datos.

#### <mark style="color:azul;">Consulta periódica de las API de Zoom centro de contacto</mark>

Para descargar los datos de interacción, debe consultar los puntos de conexión de la API de ZCC correspondientes. Es importante señalar que los distintos tipos de datos provienen de distintas API, por lo que probablemente deberá crear lógica de sondeo para cada punto de conexión relevante.

Muchas API relacionadas con la interacción dentro de Reports V2 (análisis de CX) ahora admiten filtrado por hora de finalización con `end_time_from` y `end_time_to`. Prefiera estos parámetros cuando estén disponibles para que sus trabajos de sondeo recuperen las interacciones en función de cuándo han terminado realmente. Esto ayuda a reducir los registros omitidos porque los datos completos de la interacción (incluidos los datos de reportes V2) se finalizan al terminar la interacción.

| Para obtener estos datos...                                         | Consulte esta API...                                                                                                                                                                                                                                                                                                                                                                   | Usando este campo... | Notas:                                                                                   |
| ------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | ---------------------------------------------------------------------------------------- |
| <p>Archivo multimedia de grabación</p><p>(Canal de voz y video)</p> | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/recordings/get/contact_center/recordings">Listar grabaciones</a> o</p><p>Listar grabaciones de interacción</p>                                                                                                                                                                                                     | `download_url`       | Requiere que la grabación de llamadas esté habilitada para la cola.                      |
| <p>Transcripción de la grabación</p><p>(Canal de voz y video)</p>   | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/recordings/GET/contact_center/recordings">Listar grabaciones</a> o</p><p>Listar grabaciones de interacción</p>                                                                                                                                                                                                     | `transcripción_url`  | Requiere grabación de llamadas con la transcripción habilitada.                          |
| <p>Transcripción</p><p>(Canal de mensajería)</p>                    | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/engagements/get/contact_center/engagements/{engagementId}">Obtener una interacción</a> o</p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/reports-v2-cx-analytics/get/contact_center/analytics/log/historical/engagement">Listar datos históricos del registro de interacciones</a></p>      | `transcripción_url`  | La transcripción está habilitada de forma predeterminada para los canales de mensajería. |
| <p>Disposiciones</p><p>(Todos los canales)</p>                      | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/engagements/get/contact_center/engagements/{engagementId}">Obtener una interacción</a> o</p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/reports-v2-cx-analytics/get/contact_center/analytics/log/historical/engagement">Listar datos históricos del registro de interacciones</a></p>      | `disposiciones`      | Un arreglo de objetos de disposición.                                                    |
| <p>Notas</p><p>(Todos los canales)</p>                              | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/engagements/get/contact_center/engagements/{engagementId}">Obtener una interacción</a> o</p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/reports-v2-cx-analytics/get/contact_center/analytics/log/historical/engagement">Listar datos históricos del registro de interacciones</a></p>      | `notas`              | Un arreglo de objetos de nota.                                                           |
| <p>Archivo multimedia del correo de voz</p><p><br><br></p>          | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/messages">Listar los mensajes de la bandeja de entrada de una cuenta</a> <strong>o</strong></p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/{inboxId}/messages">Listar los mensajes de una bandeja de entrada</a></p> | `download_url`       | Para los correos de voz dejados en una bandeja de entrada del centro de contacto.        |
| Transcripción del correo de voz                                     | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/messages">Listar los mensajes de la bandeja de entrada de una cuenta</a> <strong>o</strong></p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/{inboxId}/messages">Listar los mensajes de una bandeja de entrada</a></p> | `transcripción_url`  | Requiere que la transcripción esté habilitada para la bandeja de entrada.                |

{% hint style="danger" %}
**Advertencia**

Las URL de descarga (`download_url`, `transcripción_url`, `playback_url`, y así sucesivamente) proporcionadas por estas API de Zoom son **no** enlaces públicos. Están diseñadas para el acceso programático y requieren autenticación de API (por ejemplo, un token de acceso en el encabezado Authorization) para descargar el archivo asociado.

Esto significa:

* No puedes guardar estas URL directamente en un CRM para que un usuario haga clic. Un usuario que haga clic en el enlace en su navegador no estará autenticado y la descarga fallará.
* El método correcto es que tu servicio de backend use la URL para obtener el archivo. Luego, tu servicio puede almacenar el archivo en tu propio sistema (como Amazon S3, Azure Blob Storage o el almacenamiento de archivos de tu CRM) y proporcionar a tus usuarios un enlace seguro desde allí.
  {% endhint %}

{% hint style="warning" %}
**Atención**

**Retrasos de procesamiento - grabaciones de voz y video:**

Estos datos no están disponibles en el instante en que termina una llamada. El audio debe procesarse y cargarse primero, lo que puede tardar varios minutos en llamadas largas. Para asegurarte de no perder grabaciones, configura el `query_date_type` parámetro a `recording_end_time` al consultar la API de List recordings. Esto obtiene datos en función de cuándo finalizó el procesamiento, no de cuándo terminó la llamada.

Para los trabajos de conciliación centrados en engagement de Reports V2 (CX análisis), usa ventanas de tiempo superpuestas con `end_time_from` y `end_time_to` para proporcionar un margen de seguridad ante el procesamiento retrasado y los problemas transitorios de entrega.
{% endhint %}

Para obtener más información sobre las APIs de Zoom para el centro de contacto, consulta [APIs del centro de contacto](https://developers.zoom.us/docs/api/contact-center/) documentación.

#### <mark style="color:azul;">Usa webhooks para eventos en tiempo real</mark>

Para un enfoque más inmediato, impulsado por Evento, puedes suscribirte a los webhooks de ZCC. Este es el método más eficiente para Integraciones en tiempo casi real.

**Cómo funciona**

1. Suscríbete a los eventos adecuados en Zoom App Marketplace.
2. Cuando ocurre un Evento, Zoom envía una Notificación a tu URL de webhook (o a tu conexión WebSocket).
3. La carga útil del Evento contiene los datos que necesitas, ya sea directamente o como una URL/ID para una llamada API de seguimiento.

**Eventos comunes de webhook para datos de interacción**

* **Datos de fin de la participación listos:** contacto\_center.cx\_engagement\_end\_data\_ready (indica que los datos del informe de fin de interacción V2 están listos para recuperar)
* **Grabación de voz/vídeo:** contacto\_center.recording\_completed (proporciona una `download_url`)
* **Transcripción de voz/video:** contacto\_center.recording\_transcripción\_completed (proporciona una `transcripción_url`)
* **Transcripción de mensajería:** contacto\_center.engagement\_mensajería\_transcripción\_completed (proporciona una `transcripción_url`)
* **Notas:** contacto\_center.engagement\_note\_added (proporciona una `nota` campo con los datos de la nota)
* **Disposición:** contacto\_center.engagement\_disposición\_added (proporciona una `disposición_name` campo con los datos de la disposición)

**Patrón recomendado: activar la recuperación cuando los datos de interacción estén listos**

Cuando recibas `contacto_center.cx_engagement_end_data_ready`, trátelo como su señal de que los datos del informe de fin de interacción V2 están completos para esa interacción. En este Evento, llame a la API de datos del registro histórico de interacción y a cualquier otra API relevante para recopilar el conjunto final de datos. Use `engagement_id` como su clave de búsqueda y luego obtenga los artefactos completos de la interacción desde sus endpoints requeridos.

{% hint style="warning" %}
**Atención**

* **Tenga en cuenta varios Eventos:** El `nota_agregada` y `disposición_agregada` Los eventos pueden activarse varias veces para una sola interacción (por ejemplo, si un agente guarda varias notas o se transfiere una llamada). La lógica de su aplicación debe poder manejar esto.
* **Incorpore redundancia:** La entrega de eventos no siempre está garantizada al 100% (por ejemplo, su punto de conexión o conexión websocket podría estar temporalmente inactiva).
* **Estrategia de respaldo:** Recomendamos ejecutar un script de conciliación usando API de sondeo con `end_time_from` y `end_time_to` ventanas para detectar eventos perdidos y cerrar brechas de datos.
  {% endhint %}

Para más información sobre los eventos de webhook/websocket de Zoom centro de contacto, consulte [Webhooks del centro de contacto](https://developers.zoom.us/docs/api/contact-center/events/) documentación.

#### <mark style="color:azul;">Integraciones de Eventos de Flujo</mark>

Para ciertos tipos de datos, puedes enviar datos directamente a un sistema externo desde el editor de ZCC Flow mediante un Script de Evento de JavaScript.

**Datos compatibles y limitaciones:**

* **Disposición:** Se puede acceder en todos los tipos de canal de interacción Entrantes usando el `global_system.Engagement.disposición` variable.
* **Transcripción:** Solo accesible para interacciones de mensajería Entrantes (por ejemplo, Web chat) usando el `global_system.Engagement.transcripción` variable.
* **Múltiples flujos:** Cuando trabaje con varios flujos en su configuración, especialmente cuando un flujo usa el `RouteTo` widget para conectarse a otro flujo, es esencial asegurarse de que los Scripts de Evento y los activadores idénticos estén correctamente configurados en todos los flujos.

Este método es más potente en un flujo de mensajería, donde puede combinar tanto la transcripción como la disposición en un solo Evento.

**Pasos de configuración**

Siga estos pasos para Configure su flujo:

{% stepper %}
{% step %}
**Añadir un Script de Evento**

En su flujo de ZCC (por ejemplo, un flujo de chat web), haga clic en el widget Start.

Localice Scripts de Evento y añada un Script de Evento para Eventos, como Interacción cerrada y/o Disposición guardada.

<div align="left"><figure><img src="/files/f2910e015086465e0b8a8cdafe6b6ed53b2c4bba" alt="Flow screen showing a welcome message and events."><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
**Añadir su JavaScript personalizado**

El ejemplo siguiente recupera tanto la disposición como la transcripción, luego las envía juntas a una API externa.

```javascript
async function main () { 
  try {
    // Obtenga el objeto de disposición de su variable
    const disposición_data = var_get()['global_system.Engagement.disposición'];
    
    // Obtenga el objeto de transcripción completo
    const transcripción_data = await req.get(var_get()['global_system.Engagement.transcripción']);

    // Prepare una carga útil con todos los datos que desea enviar
    const payload_to_send = {
      disposición: disposición_data.data.result,
      transcripción: transcripción_data.data.result.transcripción
    };

    // Defina el destino de sus datos
    const external_api_url = '<reemplazar-con-tu punto de conexión de API>';
    
    // Envíe los datos combinados a su sistema externo
  	const response = await req.post(external_api_url, payload_to_send);
    
    // Registre la respuesta del sistema externo para la resolución de problemas
    log.debug("Respuesta de API externa: " + JSON.stringify(response.data));
    
  } catch (error) {
    log.debug("Se produjo un error en el script de Evento de transcripción: " + error);
  }
}
```

{% endstep %}
{% endstepper %}

***

### Resumen y recomendaciones

Seleccione el método de Integraciones que mejor se alinee con el flujo de trabajo de sus agentes y sus recursos técnicos.

| Si sus agentes usan...                                                | Entonces su mejor opción es...                                                 | Consideraciones clave:                                                                                                                                                                                                                                                                         |
| --------------------------------------------------------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| El Conector ZCC CTI en un CRM compatible                              | Las Integraciones integradas                                                   | <ul><li>La ruta más sencilla</li><li>No se requiere código</li><li>La Sincronizar de datos de interacción está integrada</li></ul>                                                                                                                                                             |
| La aplicación Zoom Workplace o Smart Embed                            | Webhooks de API más conciliación de sondeo filtrado por tiempo de finalización | <ul><li>Use <code>contacto\_center.cx\_engagement\_end\_data\_ready</code> como su activador de recuperación</li><li>Luego concilie con <code>end\_time\_from</code>/<code>end\_time\_to</code> Windows</li><li>Mejora la eficiencia al tiempo que reduce las interacciones perdidas</li></ul> |
| Un flujo de trabajo de mensajería Entrantes (y necesita enviar datos) | Scripts de Evento de flujo                                                     | <ul><li>De nicho, pero potente</li><li>Requiere JavaScript</li><li>Funciona mejor para enviar transcripciones de mensajería y disposiciones</li></ul>                                                                                                                                          |

Al comprender estas diferentes rutas, puedes crear unas Integraciones robustas y fiables que te ofrecen una vista completa de las interacciones con tus clientes. Combinar la recuperación activada por Evento con la conciliación filtrada por hora de finalización te ayuda a reducir llamadas a la API innecesarias mientras mejoras la completitud.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://library.zoom.com/technical-library/es/servicios-comercial/zoom-contact-center/expert-insights/integrate-engagement-data.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
