Pular para o conteúdo principal
POST
curl

Exiba o nome da sua marca no SMS

Os códigos por SMS levam o nome de remetente de SMS da sua aplicação, definido no Business Console, sem custo adicional:
123456 é o seu código de verificação da Acme Bank
Para assinar um código específico com outro nome, envie options.sms_sender_name (de 1 a 30 caracteres: apenas letras, dígitos, espaços e ’ & - !, e não apenas dígitos):
Um nome fora dessas regras retorna 400 e nenhum código é enviado. Os códigos por WhatsApp usam uma mensagem fixa e não levam a sua marca; conecte o seu próprio número do WhatsApp Business no Business Console para enviá-los com o nome da sua empresa. Consulte Envie códigos por WhatsApp a partir do seu próprio número. Consulte Mensagens de verificação com a sua marca para saber qual nome um código leva e qual é o limite diário de novos nomes.

Lide com indisponibilidades do provedor

Se o provedor de telefonia estiver temporariamente indisponível, este endpoint retorna 502 com um código estável e legível por máquina:
Considere que esta resposta permite uma nova tentativa. Use um backoff curto e mostre ao usuário uma mensagem informando que o serviço está temporariamente indisponível, em vez de pedir que ele altere um número de telefone ou código válido.

Autorizações

x-api-key
string
header
obrigatório

Chave de API da sua aplicação, em Developers -> API keys no Business Console. A chave principal tem acesso total. Uma chave nomeada pode ter escopo restrito: nenhum acesso, leitura ou escrita por recurso, limitada a alguns fluxos ou a sessões aprovadas, a uma lista de endereços IP e a uma data de validade. 401 significa que a chave está errada, revogada ou expirada; 403 significa que nenhuma chave foi enviada, que a chave não tem acesso a este recurso ou ação, ou que a requisição veio de um endereço fora da sua lista de IPs; 404 em uma rota de sessão significa que a sessão está fora dos fluxos ou status da chave. Uma chave sem acesso a mídia recebe URLs de imagem, vídeo e PDF como null, e uma chave sem permissão de escrita em sessões recebe links e tokens de sessão como null. Consulte https://docs.didit.me/console/api-keys.

Corpo

application/json
phone_number
string
obrigatório

Número de telefone do destinatário no formato E.164, com + inicial e código do país (por exemplo, +14155552671). Os números são validados e normalizados para E.164; números que não podem ser interpretados ou inválidos retornam 400 com um erro no campo phone_number.

Maximum string length: 20
Exemplo:

"+14155552671"

options
object

Opções de entrega do OTP. Todos os campos são opcionais.

signals
object

Sinais opcionais de dispositivo e rede sobre o usuário final, encaminhados à camada antifraude para melhorar a detecção de tráfego abusivo ou automatizado. Todos os campos são opcionais.

vendor_data
string

Identificador opcional controlado por quem faz a chamada (seu id interno de usuário, um e-mail, um UUID etc.), persistido na sessão e devolvido na resposta do envio, na resposta da verificação correspondente, nos webhooks e no Business Console. Use-o para correlacionar o request_id da Didit com o registro do seu usuário.

metadata
object | null

Objeto JSON livre e opcional, persistido na sessão e devolvido na resposta de envio, na resposta da verificação correspondente, nos webhooks e no Business Console.

Resposta

Envio confirmado. Verifique status: Success e Retry significam que um código está a caminho; Blocked significa que a camada antifraude recusou o envio e a verificação já foi finalizada como Declined. request_id é o id da sessão persistida (o mesmo id em um Retry).

request_id
string<uuid>

ID da sessão da verificação. Um envio Retry retorna o mesmo request_id do envio original. Este ID aparece no Business Console, é retornado novamente por um POST /v3/phone/check/ finalizado e pode ser passado para GET /v3/session/{sessionId}/decision/.

status
enum<string>

Success: OTP enviado para uma nova verificação. Retry: OTP reenviado para a verificação pendente criada por um envio anterior. Blocked: a camada antifraude recusou o envio; a verificação é finalizada imediatamente como Declined e nada é cobrado.

Opções disponíveis:
Success,
Retry,
Blocked
reason
string | null

Motivo pelo qual um envio ficou Blocked (por exemplo, repeated_attempts, suspicious, spam). null em Success e Retry.

vendor_data
string | null

Eco do vendor_data armazenado na sessão (do primeiro envio).

metadata
object | null

Eco do metadata armazenado na sessão (do primeiro envio).

Última modificação em 1 de novembro de 2026