Aller au contenu

Desafio ALTCHA para entrar com um e-mail

POST/api/auth/challenge

Auth
Public
Clé d’API:
Clé d’API non acceptée
X-CommunityId
X-CommunityId Envoyez le X-CommunityId de la communauté où l’opération a lieu.
Les descriptions des endpoints viennent directement de la spécification de l’API et sont en portugais pour l’instant. L’interface autour est traduite.

Sem login. Igual a `GET /api/auth/challenge`, mas com o trabalho que o login deste e-mail exige agora nesta comunidade (`X-CommunityId`). Use antes de cada `POST /api/auth/login`. Até 5 tentativas que falharam em 15 minutos, o trabalho é o normal (cerca de 1 s num celular médio); a partir daí, cada falha multiplica o trabalho (2, 4, 6, 8 e no máximo 10 vezes, cerca de 10 s), e `parameters.data.level` traz o multiplicador. A conta **nunca é bloqueada** por tentativas erradas: a senha certa entra, com o desafio do nível atual, e zera a contagem. O e-mail vai no corpo para ficar fora de URLs e logs; e-mail sem conta sobe do mesmo jeito. Cadastro e recuperação de senha seguem com `GET`. Mesmo limite de 300 desafios por IP em 15 minutos (429).

En-têtes

NomTypeDescription
X-CommunityIdobligatoirestring (uuid)A comunidade do login (a mesma que vai no `POST /api/auth/login`).

Corps de la requête application/json

NomTypeDescription
emailobligatoirestring (email)max 320

Réponses

StatutDescription
200O desafio, no formato que o widget `altcha` aceita (`parameters` e `signature`).
400E-mail ausente ou longo demais.
429Tentativas demais. O header `Retry-After` diz em quantos segundos tentar de novo.
503A API não consegue verificar o ALTCHA agora (chave não configurada em produção). `param = altcha`.

Exemple curl

curl -X POST "https://api.memberfy.net/api/auth/challenge" \
  -H "X-CommunityId: $COMMUNITY_ID" \
  -H "Content-Type: application/json" \
  -d '{"email":"[email protected]"}'