Skip to content

Liga a verificação em duas etapas (ou troca o telefone dela) — envia o código

POST/api/auth/two-factor/setup

Auth
Requires a token
API key:
No API key accepted
X-CommunityId
X-CommunityId Send the X-CommunityId of the community the operation happens in.
Endpoint descriptions come straight from the API specification and are in Portuguese for now. The interface around them is translated.

Manda um código ao `phone` (ou ao telefone da conta) por WhatsApp, ou SMS com `channel: sms`. O código é da plataforma: não depende do canal nem da cota da comunidade e vale em qualquer comunidade. País sem WhatsApp nem SMS suportado: **422** com o motivo. Limites da verificação de telefone (429). Confirme com `POST /api/auth/two-factor/setup/confirm`. Com o 2FA já ligado, troca o telefone dele e pede o passo extra (`X-Step-Up-Token`; sem ele **403** `STEP_UP_REQUIRED`). Rota aberta a qualquer sessão: é o caminho de quem a equipe obriga a ligar.

Headers

NameTypeDescription
X-CommunityIdoptionalstring (uuid)ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade.
X-Step-Up-TokenoptionalstringSó com o 2FA já ligado (troca de telefone).

Request body application/json

NameTypeDescription
phoneoptionalstring
phoneCountryoptionalstring
channeloptionalwhatsapp | sms

Responses

StatusDescription
200Código enviado.
400Requisição inválida — falha de validação.
401Token ausente, inválido ou expirado; token de outra comunidade (o `X-CommunityId` ou o `communityId` do corpo não é o do token); token antigo ou de uma sessão encerrada (troca de senha, convite aceito). Nesses casos a mensagem pede para entrar de novo (`auth.signInAgain`).
403Autenticado, mas sem permissão para esta operação.
422País não suportado ou caro demais.
429Limite de códigos (um por minuto; por telefone, conta e IP). Código de ativação: no máximo 3 por conta e 3 por telefone em 24 h, e um teto diário por comunidade; os códigos de ativação nunca usam a parte do teto da plataforma reservada ao login e ao passo extra.

curl example

curl -X POST "https://api.memberfy.net/api/auth/two-factor/setup" \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID" \
  -H "Content-Type: application/json" \
  -d '{}'