Pular para o conteúdo

Atualizar

POST https://api.pushwoosh.com/messaging/v2/update

Substitui uma mensagem criada anteriormente, identificada pelo seu message_code, por uma nova definição. A substituição é uma substituição completa, não uma correção (patch): a nova definição é aplicada exatamente como enviada, e o message_code não muda.

A atualização está disponível apenas enquanto a mensagem ainda estiver pendente — agendada para um envio futuro e ainda não selecionada para processamento ou entrega.

Para verificar se uma mensagem ainda está em um estado atualizável, consulte Verificando o status da mensagem.

Solicitação

Anchor link to

Autentique com seu token de API do Servidor no cabeçalho Authorization: Token <API_TOKEN>.

CampoTipoObrigatórioDescrição
message_codestringSimCódigo da mensagem da mensagem a ser atualizada, conforme retornado por Notify em result.message_code.
requestobjectSimA nova definição completa da mensagem. Mesma estrutura do corpo da solicitação Notify — um objeto segment ou transactional. Validado exatamente como Notify.

Exemplo de solicitação

Anchor link to

Reagende uma mensagem de segmento e altere seu conteúdo:

Terminal window
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"
}
}
}'

Em caso de sucesso, retorna HTTP 200 com o resultado da mensagem atualizada. O message_code permanece inalterado.

{
"result": {
"message_code": "XXXX-XXXXXXXX-XXXXXXXX",
"unknown_identifiers": []
}
}
  • message_code (string): o mesmo código que foi passado na solicitação.
  • unknown_identifiers (array de string): identificadores na nova definição que não foram encontrados, quando aplicável (consulte Notify).

Os erros usam o envelope de erro padrão do gRPC-Gateway: { "code": ..., "message": ..., "details": [...] }.

Status HTTPCondição
400message_code está ausente.
400A nova definição de request está ausente ou é inválida (é validada exatamente como Notify).
400A mensagem não está em um estado atualizável (não está mais pending).
403A mensagem pertence a outra conta.
404Nenhuma mensagem existe para o message_code fornecido.
500Ocorreu um erro interno ao carregar a mensagem ou aplicar a atualização. Tente a solicitação novamente.

Exemplo

Atualizar uma mensagem que não existe mais retorna HTTP 404:

{
"code": 5,
"message": "message not found",
"details": []
}

Verificando o status da mensagem

Anchor link to

Antes de atualizar, você pode verificar se uma mensagem ainda está em um estado atualizável. Além de ler a coluna Status na tabela de mensagens no Painel de Controle (Campanhas → Mensagens únicas), você pode consultar o status programaticamente com messages:list:

  • Passe o message_code no array filters.messages_codes (juntamente com o filters.application obrigatório).
  • Leia o campo status da entrada correspondente em items[].

Relacionado

Anchor link to