Emite um ou mais certificados, vinculados a um evento e a uma badge, para um ou vários destinatários.
O certificado é criado com status PENDING e se torna ACCEPTED após o destinatário aceitar.
Toda emissão está vinculada a um evento e a uma badge.
- Use
GET /api/v1.0/events para localizar o event_id
- Use
GET /api/v1.0/badges para localizar o badge_id
Parâmetros do corpo (body)
ID do evento vinculado à emissão.
ID do badge utilizado na emissão.
Destinatário único ou array de destinatários. Quando informado, recipient_name e recipient_email no nível raiz não são obrigatórios.Cada item pode conter: recipient_name (obrigatório), recipient_email (obrigatório), recipient_number (opcional, E.164), reason (opcional).
Nome completo do destinatário. Obrigatório quando recipient não for informado.
E-mail do destinatário que receberá o convite. Obrigatório quando recipient não for informado.
Número do destinatário para notificações por SMS ou WhatsApp (formato E.164).
Exemplo: +5531987654321.
Motivo pelo qual o destinatário está recebendo o certificado. Opcional. Quando usado com recipient, pode ser definido por destinatário dentro de cada item.
É obrigatório informar recipient (objeto ou array) ou o par recipient_name e recipient_email. A emissão de múltiplos certificados consome créditos por destinatário.
Resposta
Emissão de um único destinatário (sem erros):
Identificador único do certificado/convite criado.
Mensagem de confirmação da emissão.
Data e hora da emissão (ISO 8601).
Emissão de múltiplos destinatários ou com erros parciais:
Lista dos certificados emitidos com sucesso. Cada item contém invitation_id e created_at.
Mensagem de confirmação (inclui quantidade de sucessos e, se houver, de falhas).
Quantidade de certificados emitidos com sucesso.
Quantidade de certificados emitidos com sucesso.
Quando há falhas por destinatário: lista com recipient_email e error por item.
Quantidade de destinatários que falharam (presente quando errors existe).
Por privacidade, a resposta não retorna dados pessoais do destinatário.
O acompanhamento do aceite deve ser feito via GET /api/v1.0/invitations.
Exemplo de resposta (um destinatário)
{
"invitation_id": "invite_123",
"message": "Certificado emitido com sucesso",
"created_at": "2024-02-01T10:30:00Z"
}
Exemplo de resposta (múltiplos destinatários)
{
"invitations": [
{ "invitation_id": "invite_123", "created_at": "2024-02-01T10:30:00Z" },
{ "invitation_id": "invite_456", "created_at": "2024-02-01T10:31:00Z" }
],
"message": "2 certificado(s) emitido(s) com sucesso",
"total": 2,
"success_count": 2
}
Exemplo de resposta (sucesso parcial)
{
"invitations": [
{ "invitation_id": "invite_123", "created_at": "2024-02-01T10:30:00Z" }
],
"message": "1 certificado(s) emitido(s) com sucesso. 1 destinatário(s) falharam.",
"total": 1,
"success_count": 1,
"errors": [
{ "recipient_email": "duplicado@email.com", "error": "Já existe uma emissão para este destinatário neste evento com esta badge e motivo." }
],
"error_count": 1
}
Erros comuns
Evento inexistente, finalizado ou não pertencente ao emissor
{
"error": "EVENT_NOT_FOUND",
"message": "Evento não encontrado, finalizado ou não pertence ao emissor autenticado."
}
Badge inexistente ou não pertencente ao emissor
{
"error": "BADGE_NOT_FOUND",
"message": "Badge não encontrado ou não pertence ao emissor autenticado."
}
Certificado já emitido para o mesmo destinatário
{
"error": "INVITATION_ALREADY_EXISTS",
"message": "Já existe uma emissão para este destinatário neste evento com esta badge e motivo."
}
Dados inválidos ou ausentes
{
"error": "VALIDATION_ERROR",
"message": "Campos obrigatórios ausentes: recipient ou recipient_name/recipient_email são obrigatórios."
}
Erro ao processar todos os destinatários
{
"error": "PROCESSING_ERROR",
"message": "Erro ao processar todos os destinatários",
"errors": [
{ "recipient_email": "email@exemplo.com", "error": "Mensagem do erro" }
]
}
Saldo insuficiente para emissão
{
"error": "INSUFFICIENT_BALANCE",
"message": "Saldo insuficiente para realizar a emissão de N certificado(s)."
}
A emissão consome créditos no momento da criação do certificado.
Caso o saldo seja insuficiente, a emissão não é realizada.