Actualizar
POST https://api.pushwoosh.com/messaging/v2/update
Reemplaza un mensaje creado previamente, identificado por su message_code, con una nueva definición. El reemplazo es un reemplazo completo, no un parche: la nueva definición se aplica exactamente como se envía, y el message_code no cambia.
La actualización está disponible solo mientras el mensaje todavía está pendiente — programado para un envío futuro y aún no ha sido recogido para su procesamiento o entrega.
Para verificar si un mensaje todavía está en un estado actualizable, consulte Comprobación del estado del mensaje.
Solicitud
Anchor link toAutentíquese con su 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 actualizar, como lo devuelve Notify en result.message_code. |
request | object | Sí | La nueva definición completa del mensaje. Misma forma que el cuerpo de la solicitud de Notify — un objeto segment o transactional. Validado exactamente como Notify. |
Ejemplo de solicitud
Anchor link toReprogramar un mensaje de segmento y cambiar su contenido:
curl -X POST https://api.pushwoosh.com/messaging/v2/update \ -H "Authorization: Token YOUR_API_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "message_code": "XXXX-XXXXXXXX-XXXXXXXX", "request": { "segment": { "application": "XXXXX-XXXXX", "platforms": ["IOS", "ANDROID"], "code": "active_users", "payload": { "content": { "localized_content": { "en": { "ios": { "body": "Updated message" }, "android": { "body": "Updated message" } } } } }, "schedule": { "at": "2026-05-02T12:00:00Z" }, "message_type": "MESSAGE_TYPE_MARKETING" } } }'Respuesta
Anchor link toEn caso de éxito, devuelve HTTP 200 con el resultado del mensaje actualizado. El message_code no cambia.
{ "result": { "message_code": "XXXX-XXXXXXXX-XXXXXXXX", "unknown_identifiers": [] }}message_code(string): el mismo código que se pasó en la solicitud.unknown_identifiers(array de string): identificadores en la nueva definición que no se encontraron, cuando corresponda (verNotify).
Errores
Anchor link toLos errores utilizan el sobre de error estándar de gRPC-Gateway: { "code": ..., "message": ..., "details": [...] }.
| Estado HTTP | Condición |
|---|---|
400 | Falta message_code. |
400 | La nueva definición de request falta o no es válida (se valida exactamente como Notify). |
400 | El mensaje no está en un estado actualizable (ya no está pending). |
403 | El mensaje pertenece a otra cuenta. |
404 | No existe ningún mensaje para el message_code dado. |
500 | Ocurrió un error interno al cargar el mensaje o aplicar la actualización. Reintente la solicitud. |
Ejemplo
Actualizar un mensaje que ya no existe devuelve HTTP 404:
{ "code": 5, "message": "message not found", "details": []}Comprobación del estado del mensaje
Anchor link toAntes de actualizar, puede verificar si un mensaje todavía está en un estado actualizable. Además de leer la columna Estado en la tabla de mensajes en el Panel de Control (Campañas → Mensajes únicos), puede consultar el estado programáticamente con messages:list:
- Pase el
message_codeen el arrayfilters.messages_codes(junto con elfilters.applicationrequerido). - Lea el campo
statusde la entrada coincidente enitems[].