Cancelar
POST https://api.pushwoosh.com/messaging/v2/cancel
Cancela un mensaje creado previamente, identificado por su message_code. La cancelación solo está disponible mientras el mensaje se encuentre en uno de estos estados:
- pending: creado pero aún no recogido para su envío.
- waiting: programado para una hora de envío futura.
- processing: actualmente en preparación para su entrega.
Para comprobar si un mensaje todavía está en un estado cancelable, consulta Comprobando el estado del mensaje.
Solicitud
Anchor link toAutentícate con tu token de API del servidor en el encabezado Authorization: Token <API_TOKEN>.
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
message_code | string | Sí | Código de mensaje del mensaje a cancelar, tal como lo devuelve Notify en result.message_code. |
Solicitud de ejemplo
Anchor link tocurl -X POST https://api.pushwoosh.com/messaging/v2/cancel \ -H "Authorization: Token YOUR_API_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "message_code": "XXXX-XXXXXXXX-XXXXXXXX" }'Respuesta
Anchor link toEn caso de éxito, devuelve un HTTP 200 con un cuerpo JSON vacío.
{}Errores
Anchor link toLos errores utilizan el sobre de error estándar de gRPC-Gateway: { "code": ..., "message": ..., "details": [...] }.
| Estado HTTP | Condición |
|---|---|
400 | Falta el message_code. |
400 | El mensaje no está en un estado cancelable (ya no está pending, waiting o processing). |
403 | El mensaje pertenece a otra cuenta. |
404 | No existe ningún mensaje para el message_code proporcionado. |
500 | Ocurrió un error interno al cargar el mensaje o publicar la cancelación. Reintenta la solicitud. |
Ejemplo
Cancelar un mensaje que ya no existe devuelve un HTTP 404:
{ "code": 5, "message": "message not found", "details": []}Comprobando el estado del mensaje
Anchor link toAntes de cancelar, puedes verificar si un mensaje todavía está en un estado cancelable. Además de leer la columna Estado en la tabla de mensajes en el Panel de Control (Campañas → Mensajes únicos), puedes consultar el estado programáticamente con messages:list:
- Pasa el
message_codeen el arrayfilters.messages_codes(junto con elfilters.applicationrequerido). - Lee el campo
statusde la entrada correspondiente enitems[].