E-mail bonito, pronto
Template HTML moderno com modo escuro e fallback em texto. Você só informa o nome do seu app.
pygmy envia e valida códigos OTP por e-mail para todos os seus projetos. Uma API enxuta, segura e pronta para usar em minutos.
Feito para ser plugado em qualquer projeto pessoal ou profissional.
Template HTML moderno com modo escuro e fallback em texto. Você só informa o nome do seu app.
Código guardado apenas como hash, uso único, expira em minutos e bloqueia após tentativas erradas.
Uma credencial por projeto, com espaço isolado: o mesmo e-mail em dois apps nunca se mistura.
POST para pedir, POST para validar. Sem SDK, sem dependências: funciona com qualquer linguagem.
Intervalo entre reenvios e limite de pedidos por hora, por e-mail e por IP do usuário final.
Crie, desative, gire e revogue chaves em segundos, com métricas de uso dos últimos 14 dias.
Seu backend chama POST /v1/otp/request com o e-mail do usuário.
Um e-mail elegante chega com o código de 6 dígitos, válido por 5 minutos.
Seu backend chama POST /v1/otp/verify e recebe {"verified": true}.
Autentique com Authorization: Bearer <chave>. Chame sempre do seu backend — nunca exponha a chave no navegador.
# 1) pedir o código
curl -X POST https://pygmy.gabrielbarbosadev.com.br/v1/otp/request \
-H "Authorization: Bearer $PYGMY_KEY" \
-H "Content-Type: application/json" \
-d '{"email":"user@exemplo.com","app_name":"Minha Loja"}'
# 2) validar o código digitado
curl -X POST https://pygmy.gabrielbarbosadev.com.br/v1/otp/verify \
-H "Authorization: Bearer $PYGMY_KEY" \
-H "Content-Type: application/json" \
-d '{"email":"user@exemplo.com","code":"482916"}'/v1/otp/requestEnvia o código. Body: email, opcional app_name.
/v1/otp/verifyValida o código. Body: email, code.
X-End-User-IPOpcional. IP do seu usuário final, para ativar o limite por IP.
Documentação interativa em/docs