Logotipo Hedhog

Receba novidades do Hedhog no seu e-mail

Novos lançamentos, receitas e breaking changes — sem spam.

Submódulo Campaign

messages

Acesso de leitura aos registros individuais de entrega por destinatário (campaign_message) de uma campanha.

Caminho de origem: libraries/campaign/src/services/campaign-message.service.ts

Arquivo do módulo: campaign.module.ts

Introdução

O submódulo Messages é o mais enxuto do pacote: expõe acesso de leitura a `campaign_message`, a linha criada uma vez por destinatário quando uma campanha começa a enviar. Cada mensagem rastreia seu próprio ciclo de vida de entrega de forma independente da campanha pai — `pending` → `queued` → `sending` → `sent` | `failed` | `skipped` | `unsubscribed` — junto com `attempts`, `last_error` e timestamps (`queued_at`, `sent_at`, `failed_at`, `skipped_at`). Essa granularidade por mensagem é o que permite que uma campanha pausada e depois retomada saiba exatamente quais destinatários ainda precisam de um envio e quais já estão concluídos, e é o que o CampaignDashboardService agrupa por status para montar os detalhamentos de entrega.

O endpoint de listagem no escopo da campanha na verdade reside na superfície do controller de Campaigns (`GET /campaign/:id/messages`) e é implementado por `CampaignMessageService.listByCampaign`, que — além da simples paginação/busca/filtragem por status — junta as contagens de abertura/clique por mensagem de `campaign_tracking` e as contagens de descadastramento/complaint de `campaign_event`, de modo que uma única chamada de listagem mostra sinais de engajamento junto com o status de entrega sem round-trips separados.

O endpoint dedicado deste submódulo, `GET /campaign/messages/:id`, retorna o registro completo de uma mensagem pelo seu próprio ID — incluindo seus detalhes de bounce e a string de erro — independentemente de a qual campanha ela pertence, o que é conveniente para fluxos de suporte como a lista de "erros recentes" do dashboard.

Endpoints HTTP

1 endpoint

Obtém o registro completo de entrega de uma única mensagem, incluindo status, timestamps, attempts e last_error.

Params
id (int)