Desiste da exclusão sem sessão (link do e-mail ou login)
POST/api/privacy/erasure/cancel
- Auth
- Exige token
- X-CommunityId
X-CommunityIdEnvie o X-CommunityId da comunidade em que a operação acontece.
Sem login: com o `token` do link "Desistir" do e-mail, ou com `email` e `password` da conta (a tela de login, quando ela responde `ERASURE_SCHEDULED`). Mesmo efeito do `DELETE /api/privacy/erasure`; depois a pessoa entra normalmente. Token ou senha que não batem: 404 (não diz se a conta existe). Limite de tentativas do login (429).
**Com `email` e `password`, as mesmas proteções do login** (é a mesma senha): `altcha` obrigatório, sobre um desafio de `POST /api/auth/challenge` com o mesmo `email` (o trabalho cresce a cada senha errada nessa conta, venha de que IP vier; o contador é o mesmo do login), e o dono da conta recebe o aviso de tentativas. Desafio ausente, inválido ou mais leve do que o exigido: **422**. Com `token` (o link do e-mail), sem desafio. Sem `token` e sem `email` não há senha a conferir: nada de desafio, a resposta é **400** (`erasure.cancelNeedsTokenOrLogin`).
Headers
| Nome | Tipo | Descrição |
|---|---|---|
X-CommunityIdopcional | string (uuid) | ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade. |
Corpo da requisição application/json
| Nome | Tipo | Descrição |
|---|---|---|
tokenopcional | string | |
emailopcional | string (email) | |
passwordopcional | string | |
altchaopcional | string | Com `email` e `password`: o payload do widget ALTCHA sobre um desafio de `POST /api/auth/challenge` com o mesmo `email`. Uso único. · max 8192 |
Respostas
| Código | Descrição |
|---|---|
200 | Desistência registrada. |
400 | Requisição inválida — falha de validação. |
404 | Recurso não encontrado. |
409 | Pedido da equipe, sem desistência. |
410 | A conta já foi excluída. |
422 | Verificação ALTCHA ausente, inválida, vencida, já usada ou (no login) mais fácil do que o e-mail exige agora (`errors[0].param = altcha`). Peça um desafio novo (no login, `POST /api/auth/challenge` com o e-mail), resolva e reenvie. |
429 | Tentativas demais. O header `Retry-After` diz em quantos segundos tentar de novo. |
503 | A API não consegue verificar o ALTCHA agora (chave não configurada em produção). `param = altcha`. |
Exemplo com curl
curl -X POST "https://api.memberfy.net/api/privacy/erasure/cancel" \
-H "Authorization: Bearer $TOKEN" \
-H "X-CommunityId: $COMMUNITY_ID" \
-H "Content-Type: application/json" \
-d '{}'