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

# Notification Layer

> Acompanhe a entrega de notificações, inspecione cada notificação e as tentativas de entrega dela, configure os perfis de entrega de e-mail, SMS e webhook e altere as configurações de entrega no Lerian Console.

A Notification Layer é a área do Console para as notificações que a plataforma envia por e-mail, SMS e webhook. Use-a para:

* Acompanhar os números de entrega na tela **Visão Geral**.
* Encontrar uma notificação, ler as tentativas de entrega dela e tentar de novo ou cancelar a notificação.
* Configurar os perfis de entrega que enviam cada canal.
* Alterar as configurações de runtime do serviço de entrega.

## Abra a Notification Layer

***

Clique no ícone de engrenagem (<Icon icon="gear" />) na barra de navegação superior e selecione **Notification Layer**. A mesma entrada também fica na barra lateral de Configurações. A área tem a própria barra lateral, com quatro telas: **Visão Geral**, **Notificações**, **Perfis de Entrega** e **Configurações**.

Com o Access Manager, a entrada precisa da permissão de leitura em notificações. Sem essa permissão, **Notification Layer** não aparece no menu de engrenagem nem na barra lateral de Configurações.

Cada tela e cada ação precisa da própria permissão:

| Tela ou ação | Permissão com o Access Manager |
| - | - |
| **Visão Geral**, **Notificações** e o detalhe de uma notificação | Leitura em notificações |
| **Reenviar entrega** e **Cancelar notificação** | Criação em notificações |
| **Perfis de Entrega** e o detalhe de um perfil | Leitura em perfis de entrega |
| **Novo perfil de entrega** | Criação em perfis de entrega |
| **Salvar alterações** e **Editar credenciais** em um perfil | Atualização em perfis de entrega |
| **Excluir** um perfil | Exclusão em perfis de entrega |
| **Configurações** | Leitura em systemplane, o recurso que guarda as configurações de runtime |
| Salvar uma alteração em **Configurações** | Atualização em systemplane |

## Visão Geral

***

A tela **Visão Geral** resume a entrega de notificações em todos os canais. Seis cards ficam no topo:

| Card | O que mostra |
| - | - |
| **Total** | O número de notificações. |
| **Entregues** | As notificações com o status **Entregue**. |
| **Taxa de entrega** | As notificações entregues como porcentagem das entregues e das que falharam juntas. |
| **Falhas** | As notificações com o status **Falhou** ou **Esgotado**. |
| **Pendentes** | As notificações com o status **Pendente** ou **Processando**. |
| **Latência p95** | O percentil 95 da latência das tentativas de entrega. O percentil 99 aparece abaixo dele. |

Abaixo dos cards:

* **Total de tentativas** e **Tentativas médias por notificação** contam as tentativas de entrega.
* **Principais motivos de falha** mostra as falhas por motivo, por exemplo **Destinatário inválido** ou **Rejeitada por Twilio**. Um motivo sem rótulo mostra o código de falha dele.
* **Volume por canal** mostra o número de notificações em cada canal.
* **Notificações recentes** lista as notificações mais recentes com **Status**, **Canal**, **Destinatário**, **Assunto**, **Prioridade** e a data em **Criada**.

Se o Console não consegue ler os números, a tela mostra **Não foi possível carregar a visão geral de notificações** no lugar de todos eles. Clique em **Tentar novamente** para lê-los de novo.

## Notificações

***

A tela **Notificações** lista as notificações da plataforma. A tabela tem as colunas **Status**, **Canal**, **Assunto**, **Destinatário**, **Prioridade** e **Criada**. Para abrir uma notificação, abra o menu na coluna **Ações** e selecione **Ver**.

### Status das notificações

| Status | Significado |
| - | - |
| **Pendente** | A notificação espera a próxima tentativa de entrega. |
| **Processando** | Uma tentativa de entrega está em andamento. |
| **Entregue** | O provedor aceitou a mensagem. Este status é final. |
| **Falhou** | A última tentativa falhou. |
| **Esgotado** | O serviço não faz mais tentativas, porque as tentativas acabaram ou a falha é permanente. |
| **Cancelada** | Alguém cancelou a notificação. Este status é final. |

### Filtre a lista

Abra o painel **Filtros** para restringir a lista:

* **Status**: clique em um ou mais chips de status.
* **Canal**: **E-mail**, **SMS** ou **Webhook**.
* **Destinatário**: o destinatário exato.
* **ID de correlação**: o identificador de correlação da notificação.
* **Código de falha**: os códigos de falha da visão geral, os mais frequentes primeiro.
* **Criado de** e **Criado até**: o intervalo de datas de criação.

Um campo com valor mostra **Limpar** ao lado do rótulo dele. **Limpar filtros** esvazia todos os campos. **Itens por página** define o tamanho da página.

### Detalhe da notificação

A tela **Detalhe da notificação** mostra uma notificação em cards:

* O primeiro card mostra o status, o canal, **ID**, **Assunto**, **Destinatário**, **Destino**, **Prioridade** e **ID de correlação**.
* **Entrega** mostra **Tentativas** (usadas e máximo), **Agendada para**, **Próxima tentativa**, **Entregue em**, **Falhou em**, **Cancelada em**, **Cancelada por**, **ID da mensagem do provedor**, **Código da falha**, **Criada em** e **Atualizada em**.
* **Metadata** e **Detalhe da falha** aparecem como JSON quando a notificação os tem.

**Voltar para notificações** volta para a lista.

### Tentativas de entrega

O card **Tentativas de entrega** lista as tentativas, a mais antiga primeiro, como **Tentativa 1**, **Tentativa 2** e assim por diante. Cada tentativa mostra:

* O resultado e a hora da tentativa.
* **Provider**: o perfil de entrega que fez a tentativa.
* **Resposta**: o código de resposta, quando existe um.
* **Latência**: a duração da tentativa, em milissegundos.
* A mensagem de erro, quando a tentativa falhou.
* **Corpo da resposta**: clique nele para expandir o corpo que o provedor retornou.

Quando a notificação ainda não tem tentativa, o card mostra **Nenhuma tentativa de entrega registrada ainda.**

### Tente de novo ou cancele uma notificação

**Reenviar entrega** fica disponível quando o status é **Falhou** ou **Esgotado**. Confirme na caixa de diálogo **Reenviar entrega?**. A notificação volta para **Pendente** e o serviço tenta a entrega de novo.

**Cancelar notificação** fica disponível quando o status é **Pendente**, **Processando** ou **Falhou**. Confirme na caixa de diálogo **Cancelar notificação?**. Você não pode desfazer um cancelamento. O serviço não faz nenhuma nova tentativa de entrega.

## Perfis de Entrega

***

Um perfil de entrega liga um canal a um provedor e guarda as credenciais desse provedor. A tela **Perfis de Entrega** lista os perfis com as colunas **Nome**, **Canal**, **Provider**, **Status**, **Prioridade**, **Padrão** e **Atualizado**. O menu da linha em **Ações** tem **Ver** e **Excluir**.

Quando um canal tem mais de um perfil ativo, o serviço usa primeiro o perfil com a maior prioridade. Um empate vai para o perfil padrão e depois para o perfil mais antigo. O serviço ignora os perfis inativos.

### Crie um perfil de entrega

<Steps>
  <Step title="Abra o formulário">
    Clique em **Novo perfil de entrega**.
  </Step>

  <Step title="Dê um nome ao perfil">
    Digite um **Nome**.
  </Step>

  <Step title="Escolha o canal e o provedor">
    Selecione o **Canal** e depois o **Provider**. Você não pode alterar nenhum dos dois depois de criar o perfil.
  </Step>

  <Step title="Defina os campos de seleção">
    Defina o **Status**, a **Prioridade** e a chave **Padrão para este canal**.
  </Step>

  <Step title="Defina os limites">
    Se quiser, digite um **Limite de taxa (por segundo)** e um **Limite diário**. Um limite vazio significa sem limite.
  </Step>

  <Step title="Preencha a configuração do provedor">
    Preencha os campos da seção **Configuração do provedor**. Os campos mudam com o provedor, como as próximas seções mostram.
  </Step>

  <Step title="Salve">
    Clique em **Salvar**. O Console volta para a lista.
  </Step>
</Steps>

### Provedores de e-mail e SMS

Cada canal tem os próprios provedores. Um asterisco (\*) marca um campo obrigatório.

| Canal | Provider | Campos de configuração |
| - | - | - |
| **E-mail** | **SMTP** | **Host**\*, **Porta**\*, **Remetente**\*, **Nome de Usuário**, **Senha** |
| **E-mail** | **AWS\_SES** | **Região AWS**\*, **ID da chave de acesso**\*, **Chave de acesso secreta**\*, **Token de sessão**, **Remetente**\* |
| **E-mail** | **SENDGRID** | **Chave de API**\*, **Remetente**\*, **Nome do remetente** |
| **SMS** | **TWILIO** | **SID da conta**\*, **Token de autenticação**\*, **Remetente**\* |
| **SMS** | **ZENVIA** | **Token de API**\*, **Remetente**\* |
| **SMS** | **INFOBIP** | **Chave de API**\*, **URL base**\*, **Remetente**\* |

**Remetente** é o remetente que os destinatários veem, como um endereço de e-mail ou um ID de remetente de SMS aprovado. A **Porta** do SMTP aceita um valor de 1 a 65535.

### Provedor de webhook

O canal **Webhook** tem um provedor, **HTTP\_WEBHOOK**. O perfil não guarda o endereço do endpoint: cada notificação de webhook leva o próprio endereço em **Destino**.

O perfil de webhook tem estes campos:

* **Segredo de assinatura (HMAC)**: opcional. O serviço assina o corpo da requisição com esse segredo, para que o destino possa verificar o remetente.
* **Autenticação do destino**: como o serviço se autentica no destino. Selecione **none** para nenhuma autenticação.
* **Cabeçalhos personalizados**: pares opcionais de nome e valor que o serviço envia em cada requisição.

O valor de **Autenticação do destino** adiciona os próprios campos:

| Autenticação do destino | Campos |
| - | - |
| **basic** | **Nome de Usuário**\*, **Senha**\* |
| **bearer\_static** | **Token**\* |
| **oauth2\_client\_credentials** | **URL de autenticação**\*, **Client ID**\*, **Client secret**\*, **Escopo**, **Audience** |
| **jwt\_exchange** | **URL de autenticação**\*, **Caminho do token**\*, **Caminho do expires-in**\*, **Método HTTP**, **Cabeçalhos personalizados**, **Corpo da requisição (JSON)** |

Para **oauth2\_client\_credentials** e **jwt\_exchange**, **URL de autenticação** é o endpoint de token que o serviço chama antes de entregar o webhook. Para **jwt\_exchange**, **Caminho do token** e **Caminho do expires-in** são os caminhos JSON do token de acesso e do tempo de vida dele na resposta.

### Detalhe do perfil de entrega

A tela **Perfil de Entrega** mostra o status, o canal e o provedor do perfil no topo. Você pode alterar estes campos:

* **Nome**
* **Status**
* **Prioridade**
* **Limite por taxa**
* **Limite diário**
* **Perfil padrão para este canal**

Clique em **Salvar alterações** para salvá-los. Depois que a prioridade ou um limite tem um valor, você pode alterar esse valor, mas não pode limpá-lo.

A seção **Ciclo de vida** mostra **ID**, **Canal**, **Tipo de provedor**, **Falhas consecutivas**, **Último sucesso**, **Última falha**, **Criado em** e **Atualizado em**. **Falhas consecutivas** volta a zero depois da próxima entrega com sucesso.

### Substitua as credenciais

A seção **Configuração e credenciais do provedor** não mostra as credenciais guardadas. Para substituí-las:

<Steps>
  <Step title="Abra o editor">
    Clique em **Editar credenciais**.
  </Step>

  <Step title="Preencha cada campo">
    Preencha todos os campos que você quer manter. Os campos secretos, como senhas, chaves de API e tokens, abrem vazios.
  </Step>

  <Step title="Salve">
    Clique em **Salvar credenciais**. Os novos valores substituem a configuração inteira do provedor. Para parar, clique em **Cancelar**.
  </Step>
</Steps>

### Exclua um perfil de entrega

Clique em **Excluir** na tela do perfil ou selecione **Excluir** no menu da linha da lista. Depois clique em **Confirmar** na caixa de diálogo.

<h2 id="settings">
  Configurações
</h2>

***

A tela **Configurações** mostra as configurações de runtime do serviço de entrega, por grupo. As alterações valem sem reinício. Cada linha mostra a configuração, a chave dela, uma descrição e os valores permitidos.

| Grupo | Configuração | Valores permitidos |
| - | - | - |
| **Entrega e retentativa** | **Máx. de tentativas de entrega** | 1 a 20 |
| **Entrega e retentativa** | **Atraso base de retentativa (s)** | 5 a 300 |
| **Entrega e retentativa** | **Atraso máx. de retentativa (s)** | 60 a 86400 |
| **Entrega e retentativa** | **Concorrência de e-mail** | 1 a 100 |
| **Entrega e retentativa** | **Concorrência de SMS** | 1 a 50 |
| **Entrega e retentativa** | **Concorrência de webhook** | 1 a 100 |
| **Entrega e retentativa** | **Timeout de webhook (s)** | 5 a 120 |
| **Circuit Breaker** | **Limite de falhas** | 1 a 50 |
| **Circuit Breaker** | **Timeout de recuperação (s)** | 10 a 600 |
| **Limitação de taxa** | **Máx. de requisições (padrão)**, **Máx. de requisições (agressivo)**, **Máx. de requisições (relaxado)** | 1 a 100000 |
| **Limitação de taxa** | **Janela padrão (s)**, **Janela agressiva (s)**, **Janela relaxada (s)** | 1 a 3600 |
| **Cache de credenciais M2M** | **TTL do cache de credenciais (s)** | 30 a 86400 |
| **Logs** | **Nível de log** | debug, info, warn, error |

Para alterar configurações:

<Steps>
  <Step title="Encontre a configuração">
    Digite na caixa de busca ou selecione um grupo na lista ao lado dela. **Todos os grupos** mostra todos os grupos.
  </Step>

  <Step title="Altere o valor">
    Altere o valor. A tela marca cada linha alterada.
  </Step>

  <Step title="Salve">
    Clique em **Salvar** com o número de alterações, por exemplo **Salvar 2 alterações**.
  </Step>
</Steps>

Se um valor está fora do intervalo, a tela não salva nada e pede que você corrija os campos marcados. Se algumas alterações falham, a tela as mantém marcadas, para que você possa salvá-las de novo.

Quando a configuração de runtime está desligada no serviço de entrega, a tela mostra **O plano de configuração de runtime está desativado** e você não pode alterar as configurações.


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