Pular para o conteúdo principal

kobana dunning notifications

Comandos de kobana dunning notifications. Toda opção global (Opções globais) vale aqui.

ComandoHTTPDescrição
notifications listGET /v1/notificationsListar notificações
notifications createPOST /v1/notificationsCriar notificação
notifications getGET /v1/notifications/{id}Consultar notificação
notifications updatePUT /v1/notifications/{id}Atualizar notificação
notifications deleteDELETE /v1/notifications/{id}Excluir notificação
notifications resendPOST /v1/notifications/{id}/resendReenviar notificação

notifications list​

Listar notificações

kobana dunning notifications list [OPÇÕES]

GET /v1/notifications

Lista as notificações da organização com paginação e filtros. Ordenável via sort_by (created_at | updated_at | sent_at | delivered_at | channel | status).

Parâmetros de consulta

NomeTipoObrigatórioDescrição
pageintegernãoPágina (a partir de 1).
per_pageintegernãoItens por página (máx. 100).
sort_bystringnãoCampo de ordenação (nome público em snake_case, ex.: due_date).
sort_orderstringnãoDireção da ordenação (asc | desc). Valores: asc, desc.
channelstringnãoFiltra por canal; aceita valor único ou lista separada por vírgula (email | sms | whatsapp | voice | manual).
statusstringnãoFiltra por status; aceita valor único ou lista separada por vírgula (pending | queued | sent | delivered | read | failed | bounced).
person_idstringnãoFiltra pelo cliente (UUID).
charge_idstringnãoFiltra pela cobrança (UUID).
includestringnãoRelações a incluir, separadas por vírgula (person, charge, step; template equivale a step).

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Workspace-IdstringnãoWorkspace em que a chamada age (id ou public_id, listados em GET /v1/workspaces). Opcional enquanto a organização tem um só workspace; com dois ou mais, sem ele a resposta é 400 WORKSPACE_REQUIRED. Um workspace de outra organização é 403 UNKNOWN_WORKSPACE.

Respostas

HTTPDescrição
200Lista paginada de notificações.
404Recurso inexistente ou fora da sua organização.
413Corpo da requisição acima de 2 MB.

notifications create​

Criar notificação

kobana dunning notifications create [OPÇÕES]

POST /v1/notifications

Cria uma notificação manual para um cliente, opcionalmente vinculada a uma cobrança e a um passo da régua. O destinatário é validado conforme o canal.

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Workspace-IdstringnãoWorkspace em que a chamada age (id ou public_id, listados em GET /v1/workspaces). Opcional enquanto a organização tem um só workspace; com dois ou mais, sem ele a resposta é 400 WORKSPACE_REQUIRED. Um workspace de outra organização é 403 UNKNOWN_WORKSPACE.

Corpo da requisição

NomeTipoObrigatórioDescrição
person_idstring (uuid)simCliente destinatário.
channelstringsimCanal (email | sms | whatsapp | voice | manual). Valores: email, sms, whatsapp, voice, manual.
recipientstringsimDestinatário; validado conforme o canal (e-mail para email, telefone para sms/whatsapp/voice).
bodystringsimCorpo da mensagem.
charge_idstring (uuid)nãoCobrança relacionada à notificação.
collection_rule_step_idstring (uuid)nãoPasso da régua de cobrança que originou a notificação.
subjectstringnãoAssunto (canais que suportam, ex.: e-mail).
external_idstringnãoIdentificador no SEU sistema ou no provedor de envio.
custom_dataobjectnãoMetadados personalizáveis pelo cliente da API. Limites: 64 KB serializado e 16 níveis de aninhamento.
tagsarray<string>nãoTags livres.

Outros campos e objetos aninhados: kobana schema dunning.notifications.create.

Respostas

HTTPDescrição
201Notificação criada com status pending.
400Requisição inválida (erro de validação).
404Recurso inexistente ou fora da sua organização.
413Corpo da requisição acima de 2 MB.

notifications get​

Consultar notificação

kobana dunning notifications get [ID] [OPÇÕES]

GET /v1/notifications/{id}

Retorna uma notificação pelo ID; use include para anexar relações.

Argumentos do caminho: id

Parâmetros de consulta

NomeTipoObrigatórioDescrição
includestringnãoRelações a incluir, separadas por vírgula (person, charge, step; template equivale a step).

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Workspace-IdstringnãoWorkspace em que a chamada age (id ou public_id, listados em GET /v1/workspaces). Opcional enquanto a organização tem um só workspace; com dois ou mais, sem ele a resposta é 400 WORKSPACE_REQUIRED. Um workspace de outra organização é 403 UNKNOWN_WORKSPACE.

Respostas

HTTPDescrição
200Notificação encontrada.
404Recurso inexistente ou fora da sua organização.
413Corpo da requisição acima de 2 MB.

notifications update​

Atualizar notificação

kobana dunning notifications update [ID] [OPÇÕES]

PUT /v1/notifications/{id}

Atualiza status, timestamps de entrega e metadados de uma notificação (parcial). Útil para integrações que confirmam envio/entrega.

Argumentos do caminho: id

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Workspace-IdstringnãoWorkspace em que a chamada age (id ou public_id, listados em GET /v1/workspaces). Opcional enquanto a organização tem um só workspace; com dois ou mais, sem ele a resposta é 400 WORKSPACE_REQUIRED. Um workspace de outra organização é 403 UNKNOWN_WORKSPACE.

Corpo da requisição

NomeTipoObrigatórioDescrição
statusstringnãoNovo status; preenche o timestamp correspondente (sentAt/deliveredAt/readAt/failedAt) quando não informado. Valores: pending, queued, sent, delivered, read, failed, bounced.
sent_atstringnãoTimestamp ISO 8601 ou data YYYY-MM-DD; null limpa o campo.
delivered_atstringnãoTimestamp ISO 8601 ou data YYYY-MM-DD; null limpa o campo.
read_atstringnãoTimestamp ISO 8601 ou data YYYY-MM-DD; null limpa o campo.
failed_atstringnãoTimestamp ISO 8601 ou data YYYY-MM-DD; null limpa o campo.
failure_reasonstringnãoMotivo da falha reportado pelo provedor.
external_idstringnãoIdentificador no SEU sistema ou no provedor de envio.
custom_dataobjectnãoMetadados personalizáveis pelo cliente da API. Limites: 64 KB serializado e 16 níveis de aninhamento.
tagsarray<string>nãoTags livres.
costnumbernãoCusto do envio (número, mínimo 0).

Outros campos e objetos aninhados: kobana schema dunning.notifications.update.

Respostas

HTTPDescrição
200Notificação atualizada.
400Requisição inválida (erro de validação).
404Recurso inexistente ou fora da sua organização.
413Corpo da requisição acima de 2 MB.

notifications delete​

Excluir notificação

kobana dunning notifications delete [ID] [OPÇÕES]

DELETE /v1/notifications/{id}

Exclui uma notificação DEFINITIVAMENTE (hard delete — o modelo não tem soft delete). Só a notificação ainda não entregue: a entregue é evidência probatória e responde 409.

Argumentos do caminho: id

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Workspace-IdstringnãoWorkspace em que a chamada age (id ou public_id, listados em GET /v1/workspaces). Opcional enquanto a organização tem um só workspace; com dois ou mais, sem ele a resposta é 400 WORKSPACE_REQUIRED. Um workspace de outra organização é 403 UNKNOWN_WORKSPACE.

Respostas

HTTPDescrição
204Notificação excluída.
404Recurso inexistente ou fora da sua organização.
409A notificação já foi entregue — é evidência probatória e não pode ser excluída.
413Corpo da requisição acima de 2 MB.

notifications resend​

Reenviar notificação

kobana dunning notifications resend [ID] [OPÇÕES]

POST /v1/notifications/{id}/resend

Cria uma NOVA notificação pending copiando a original (o metadata da nova referencia a original em resend_of). Só é permitido quando a original está failed ou bounced; caso contrário retorna 400. Suporta Idempotency-Key.

Argumentos do caminho: id

Cabeçalhos

NomeTipoObrigatórioDescrição
X-Workspace-IdstringnãoWorkspace em que a chamada age (id ou public_id, listados em GET /v1/workspaces). Opcional enquanto a organização tem um só workspace; com dois ou mais, sem ele a resposta é 400 WORKSPACE_REQUIRED. Um workspace de outra organização é 403 UNKNOWN_WORKSPACE.

Respostas

HTTPDescrição
201Nova notificação criada a partir da original.
400Requisição inválida (erro de validação).
404Recurso inexistente ou fora da sua organização.
413Corpo da requisição acima de 2 MB.