> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ycloud.com/llms.txt
> Use this file to discover all available pages before exploring further.

# whatsapp.template.reviewed

> Se produce cuando una plantilla de WhatsApp recibe una actualización de revisión o del ciclo de vida, lo que incluye su aprobación, rechazo, pausa, desactivación, archivado y desarchivado.

Usa `whatsapp.template.reviewed` para gestionar este evento en tu endpoint de webhook.

## Desencadenadores

Se produce cuando una plantilla de WhatsApp recibe una actualización de revisión o del ciclo de vida, lo que incluye su aprobación, rechazo, pausa, desactivación, archivado y desarchivado.

Suscríbete a `whatsapp.template.reviewed` cuando [configures tu endpoint de webhook](https://docs.ycloud.com/es/api-reference/guides/api-fundamentals/configure-webhooks.md).

Usa `wabaId`, `name` y `language` para identificar la plantilla. `statusUpdateEvent` describe el cambio que desencadenó el evento; `status` describe el estado actual. Por ejemplo, `UNARCHIVED` puede contener `status: APPROVED` sin una nueva revisión de aprobación.

## Sintaxis

YCloud envía una solicitud HTTP `POST` a la URL de webhook que hayas configurado. La siguiente estructura muestra una variante de la carga útil. Los valores entre corchetes angulares son marcadores de posición; sus tipos se indican en **Parámetros**. Los campos opcionales y otras variantes se describen a continuación.

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "id": "<ID>",
  "type": "whatsapp.template.reviewed",
  "apiVersion": "<API_VERSION>",
  "createTime": "<CREATE_TIME>",
  "whatsappTemplate": {
    "officialTemplateId": "<OFFICIAL_TEMPLATE_ID>",
    "wabaId": "<WABA_ID>",
    "name": "<NAME>",
    "language": "<LANGUAGE>",
    "category": "<CATEGORY>",
    "status": "<STATUS>",
    "statusUpdateEvent": "<STATUS_UPDATE_EVENT>",
    "createTime": "<CREATE_TIME>",
    "updateTime": "<UPDATE_TIME>"
  }
}
```

## Parámetros

Valida el encabezado HTTP `YCloud-Signature` antes de procesar el cuerpo JSON. Consulta [validación de firmas](https://docs.ycloud.com/es/api-reference/guides/api-fundamentals/configure-webhooks.md).

### Sobre del evento

| Parámetro | Tipo | Obligatorio | Descripción |
| - | - | - | - |
| `id` | string | Sí | ID único para el evento. Longitud mínima: `6`. Longitud máxima: `128`. |
| `type` | string | Sí | Siempre `whatsapp.template.reviewed`. |
| `apiVersion` | string | Sí | La versión de la API utilizada para procesar este evento. |
| `createTime` | string (date-time) | Sí | La hora en la que se creó este evento, formateada en [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). Por ejemplo, `2022-06-01T12:00:00.000Z`. |

### Carga útil del evento

| Parámetro | Tipo | Obligatorio | Descripción |
| - | - | - | - |
| `whatsappTemplate` | object | No | Carga útil de `whatsappTemplate` específica del evento. |

Los cuatro campos comunes del sobre son obligatorios. Los campos de la carga útil dependen de la variante del evento. En cada tabla de objetos, **Obligatorio** aplica cuando su objeto primario está presente. Los campos opcionales pueden omitirse; una muestra no convierte un campo en obligatorio.

#### whatsappTemplate

| Parámetro | Tipo | Obligatorio | Descripción |
| - | - | - | - |
| `officialTemplateId` | string | No | ID oficial de la plantilla asignado por WhatsApp. Este ID se utiliza para identificar la plantilla en el sistema de WhatsApp. |
| `wabaId` | string | Sí | ID de la cuenta de WhatsApp Business. |
| `name` | string | Sí | Nombre de la plantilla.Longitud máxima: `512`. Patrón: `[a-z0-9]{1,512}`. |
| `language` | string | Sí | Código de idioma de la plantilla. Consulta [Idiomas admitidos](https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/supported-languages) para ver todos los códigos. |
| `category` | string | No | Categoría de plantillas de WhatsApp.<ul><li>`AUTHENTICATION`: Permiten a las empresas autenticar a los usuarios mediante contraseñas de un solo uso, potencialmente en múltiples pasos del proceso de inicio de sesión (p. ej., verificación de cuenta, recuperación de cuenta, desafíos de integridad).</li><li>`MARKETING`: Incluyen promociones u ofertas, actualizaciones informativas o invitaciones para que los clientes respondan o interactúen. Toda conversación que no califique como de utilidad o de autenticación es una conversación de marketing.</li><li>`UTILITY`: Facilitan una solicitud o transacción específica acordada, o actualizaciones a un cliente sobre una transacción en curso, incluidas las notificaciones posteriores a la compra y las facturas recurrentes.</li></ul> |
| `status` | string | No | El estado de una plantilla de WhatsApp.<ul><li>`PENDING`: La plantilla aún está en revisión. La revisión puede demorar hasta 24 horas.</li><li>`REJECTED`: La plantilla ha sido rechazada durante el proceso de revisión.</li><li>`APPROVED`: La plantilla está aprobada y puedes comenzar a enviarla a los clientes.</li><li>`PAUSED`: La plantilla se ha pausado debido a comentarios negativos recurrentes de los clientes. Las plantillas de mensaje con este estado no se pueden enviar a los clientes. Consulta [Pausa de plantillas](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines#template-pausing).</li><li>`DISABLED`: La plantilla se ha desactivado debido a comentarios negativos recurrentes de los clientes o por infringir una o más de nuestras políticas. Las plantillas de mensaje con este estado no se pueden enviar a los clientes. Es posible que puedas editar una plantilla de mensaje desactivada y solicitar una apelación. Consulta [Apelaciones](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines#appeals).</li><li>`ARCHIVED`: La plantilla se ha archivado. Las plantillas archivadas no se pueden enviar ni editar.</li><li>`IN_APPEAL`: La plantilla está en apelación. Consulta también [Apelaciones de plantillas](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines#appeals).</li><li>`DELETED`: La plantilla se ha eliminado.</li></ul> |
| `reason` | string | No | El motivo por el cual la plantilla fue rechazada. |
| `createTime` | string (date-time) | No | La fecha y hora en la que se creó este objeto, con formato [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). Por ejemplo, `2022-06-01T12:00:00.000Z`. |
| `updateTime` | string (date-time) | No | La fecha y hora en la que se actualizó este objeto, con formato [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). Por ejemplo, `2022-06-01T12:00:00.000Z`. |
| `statusUpdateEvent` | string | No | El evento de actualización del estado de la plantilla de WhatsApp que causó este webhook. Para `ARCHIVED`, el campo `status` de la plantilla es `ARCHIVED`. Para `UNARCHIVED`, el campo `status` de la plantilla es el estado actual devuelto por Meta, por ejemplo `APPROVED`; no representa una nueva revisión de aprobación.Valores: `PENDING`, `APPROVED`, `REJECTED`, `IN_APPEAL`, `PAUSED`, `FLAGGED`, `DISABLED`, `ARCHIVED`, `UNARCHIVED`, `REINSTATED`, `PENDING_DELETION`. |
| `disableDate` | string | No | La fecha en la que se desactivará la plantilla. Cuando se recibe un evento `FLAGGED` de plantilla de WhatsApp, se establece este campo. |
| `whatsappApiError` | object | No | El objeto de error original devuelto por WhatsApp. Consulta [Manejo de errores](https://developers.facebook.com/docs/graph-api/guides/error-handling), [Códigos de error de Cloud API](https://developers.facebook.com/docs/whatsapp/cloud-api/support/error-codes). |

> [accordion] whatsappTemplate.whatsappApiError
>
> | Parámetro | Tipo | Obligatorio | Descripción |
> | - | - | - | - |
> | `message` | string | Sí | Una descripción legible para humanos del error. |
> | `code` | string | Sí | Un código de error. |
> | `type` | string | No | Tipo de error. |
> | `error_subcode` | string | No | Código adicional sobre el error. |
> | `error_user_msg` | string | No | El mensaje que se mostrará al usuario. El idioma del mensaje se basa en la configuración regional (locale) de la solicitud a la API. |
> | `error_user_title` | string | No | El título del cuadro de diálogo, si se muestra. El idioma del mensaje se basa en la configuración regional (locale) de la solicitud a la API. |
> | `fbtrace_id` | string | No | Identificador de soporte interno. Al informar un error relacionado con una llamada a Graph API, incluye fbtrace\_id para ayudarnos a encontrar datos de registro para la depuración. |
> | `error_data` | string or object | No | Datos adicionales sobre el error. Una cadena o mapa.<ul><li>Para las API de plantillas, este campo es una cadena que describe el motivo del error.</li><li>Para las API de mensajes, este campo es un mapa con la propiedad `details` que describe el motivo del error.</li></ul> |

## Ejemplo

El siguiente JSON es el cuerpo entregado a tu receptor. Los ID, los números de teléfono y otros valores de la cuenta son ilustrativos.

> [accordion] Evento de plantilla de WhatsApp archivada
>
> Ejemplo de payload cuando se archiva una plantilla de WhatsApp
>
> ```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
> {
>   "id": "evt_template_archived_123",
>   "type": "whatsapp.template.reviewed",
>   "apiVersion": "v2",
>   "createTime": "2024-01-01T12:00:00.000Z",
>   "whatsappTemplate": {
>     "officialTemplateId": "official-template-id",
>     "wabaId": "whatsapp-business-account-id",
>     "name": "sample_whatsapp_template",
>     "language": "en",
>     "category": "MARKETING",
>     "status": "ARCHIVED",
>     "statusUpdateEvent": "ARCHIVED",
>     "createTime": "2024-01-01T12:00:00.000Z",
>     "updateTime": "2024-01-01T12:00:00.000Z"
>   }
> }
> ```

> [accordion] Evento de plantilla de WhatsApp desarchivada
>
> Ejemplo de payload cuando se desarchiva una plantilla de WhatsApp. El estado de la plantilla es el estado actual devuelto por Meta y no representa una nueva revisión de aprobación.
>
> ```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
> {
>   "id": "evt_template_unarchived_123",
>   "type": "whatsapp.template.reviewed",
>   "apiVersion": "v2",
>   "createTime": "2024-01-01T12:00:00.000Z",
>   "whatsappTemplate": {
>     "officialTemplateId": "official-template-id",
>     "wabaId": "whatsapp-business-account-id",
>     "name": "sample_whatsapp_template",
>     "language": "en",
>     "category": "MARKETING",
>     "status": "APPROVED",
>     "statusUpdateEvent": "UNARCHIVED",
>     "createTime": "2024-01-01T12:00:00.000Z",
>     "updateTime": "2024-01-01T12:00:00.000Z"
>   }
> }
> ```

> [accordion] Plantilla aprobada
>
> ```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
> {
>   "id": "evt_eEMtA0PkkyACiS5o",
>   "type": "whatsapp.template.reviewed",
>   "apiVersion": "v2",
>   "createTime": "2023-02-20T12:00:00.000Z",
>   "whatsappTemplate": {
>     "wabaId": "WABA-ID",
>     "name": "template_name",
>     "language": "en",
>     "category": "MARKETING",
>     "status": "APPROVED",
>     "reason": "NONE",
>     "statusUpdateEvent": "APPROVED"
>   }
> }
> ```

> [accordion] Plantilla rechazada
>
> ```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
> {
>   "id": "evt_eEMtA0PkkyACiS5o",
>   "type": "whatsapp.template.reviewed",
>   "apiVersion": "v2",
>   "createTime": "2023-02-20T12:00:00.000Z",
>   "whatsappTemplate": {
>     "wabaId": "WABA-ID",
>     "name": "template_name",
>     "language": "en",
>     "category": "MARKETING",
>     "status": "REJECTED",
>     "reason": "SCAM",
>     "statusUpdateEvent": "REJECTED"
>   }
> }
> ```

> [accordion] Plantilla pausada
>
> ```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
> {
>   "id": "evt_eEMtA0PkkyACiS5o",
>   "type": "whatsapp.template.reviewed",
>   "apiVersion": "v2",
>   "createTime": "2023-02-20T12:00:00.000Z",
>   "whatsappTemplate": {
>     "wabaId": "WABA-ID",
>     "name": "template_name",
>     "language": "en",
>     "category": "MARKETING",
>     "status": "PAUSED",
>     "reason": "NONE",
>     "statusUpdateEvent": "PAUSED"
>   }
> }
> ```

> [accordion] Plantilla marcada
>
> ```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
> {
>   "id": "evt_eEMtA0PkkyACiS5o",
>   "type": "whatsapp.template.reviewed",
>   "apiVersion": "v2",
>   "createTime": "2023-02-20T12:00:00.000Z",
>   "whatsappTemplate": {
>     "wabaId": "WABA-ID",
>     "name": "template_name",
>     "language": "en",
>     "category": "MARKETING",
>     "status": "APPROVED",
>     "reason": "Your WhatsApp message template has been paused for 3 hours until Feb 23 at 5:28 AM UTC because it had issues.",
>     "statusUpdateEvent": "FLAGGED",
>     "disableDate": "February 28, 2023"
>   }
> }
> ```

> [accordion] Plantilla inhabilitada
>
> ```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
> {
>   "id": "evt_eEMtA0PkkyACiS5o",
>   "type": "whatsapp.template.reviewed",
>   "apiVersion": "v2",
>   "createTime": "2023-02-20T12:00:00.000Z",
>   "whatsappTemplate": {
>     "wabaId": "WABA-ID",
>     "name": "template_name",
>     "language": "en",
>     "category": "MARKETING",
>     "status": "DISABLED",
>     "reason": "NONE",
>     "statusUpdateEvent": "DISABLED"
>   }
> }
> ```

> [accordion] Plantilla pendiente de eliminación
>
> ```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
> {
>   "id": "evt_eEMtA0PkkyACiS5o",
>   "type": "whatsapp.template.reviewed",
>   "apiVersion": "v2",
>   "createTime": "2023-02-20T12:00:00.000Z",
>   "whatsappTemplate": {
>     "wabaId": "WABA-ID",
>     "name": "template_name",
>     "language": "en",
>     "category": "MARKETING",
>     "status": "DELETED",
>     "reason": "NONE",
>     "statusUpdateEvent": "PENDING_DELETION"
>   }
> }
> ```

> [accordion] Plantilla archivada
>
> ```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
> {
>   "id": "evt_eEMtA0PkkyACiS5o",
>   "type": "whatsapp.template.reviewed",
>   "apiVersion": "v2",
>   "createTime": "2024-01-01T12:00:00.000Z",
>   "whatsappTemplate": {
>     "wabaId": "WABA-ID",
>     "name": "template_name",
>     "language": "en",
>     "category": "MARKETING",
>     "status": "ARCHIVED",
>     "reason": "NONE",
>     "statusUpdateEvent": "ARCHIVED"
>   }
> }
> ```

> [accordion] Plantilla desarchivada
>
> ```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
> {
>   "id": "evt_eEMtA0PkkyACiS5o",
>   "type": "whatsapp.template.reviewed",
>   "apiVersion": "v2",
>   "createTime": "2024-01-01T12:00:00.000Z",
>   "whatsappTemplate": {
>     "wabaId": "WABA-ID",
>     "name": "template_name",
>     "language": "en",
>     "category": "MARKETING",
>     "status": "APPROVED",
>     "reason": "NONE",
>     "statusUpdateEvent": "UNARCHIVED"
>   }
> }
> ```

Después de verificar la firma y aceptar el evento de forma duradera, devuelve una respuesta `2xx`. Procesa el trabajo lento de forma asíncrona.

```http theme={"theme":{"light":"github-light","dark":"github-dark"}}
HTTP/1.1 200 OK
```

Para ver guías detalladas de escenarios, consulta los [ejemplos comentados](https://docs.ycloud.com/es/api-reference/guides/examples/webhook-examples/whatsapp-template-reviewed-webhook-examples).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.