Saltar al contenido

Pede para entrar numa comunidade com cadastro com aprovação

POST/api/auth/signup-request

Auth
Pública
Quién puede:
owner
admin
Clave de API:
No acepta clave de API
X-CommunityId
X-CommunityId Envía el X-CommunityId de la comunidad en la que ocurre la operación.
Las descripciones de los endpoints vienen de la especificación de la API y, por ahora, están en portugués. La interfaz alrededor está traducida.

Numa comunidade com **cadastro com aprovação** (`signupEnabled` e `signupRequiresApproval`), o candidato pede para entrar com nome, e-mail, idioma, telefone opcional e os campos do cadastro (`fields`, como em `POST /api/auth/register`), **sem senha**. O pedido vai para a fila da equipe (`GET /api/signup-requests`); nada vira membro até owner ou admin aprovar, e a aprovação manda o e-mail com o link para criar a senha.

A resposta é **sempre a mesma** (202, "Pedido enviado"), crie o pedido ou não: e-mail que já é membro, que já tem pedido vivo, que foi recusado ou expirou nos últimos 30 dias, ou que passou do próprio limite (3 pedidos por dia) recebe a mesma resposta e nada é criado. O login nunca revela que existe um pedido.

Comunidade com cadastro fechado: 403. Cadastro aberto sem aprovação: 409 (use `POST /api/auth/register`). Comunidade suspensa pela Memberfy: 403 com a mensagem genérica (`code = COMMUNITY_SUSPENDED`). Campo do cadastro faltando ou inválido: 422, um erro por campo. Exige `altcha`. Limites: 30 cadastros e pedidos por IP em 15 minutos e 10 pedidos por IP por hora (429 com `Retry-After`).

Headers

NombreTipoDescripción
X-CommunityIdopcionalstring (uuid)ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade.

Cuerpo de la solicitud application/json

NombreTipoDescripción
altchaobligatoriostringO payload do widget ALTCHA sobre um desafio de `GET /api/auth/challenge`. Uso único. · max 8192
fullNameobligatoriostringmax 200
emailobligatoriostring (email)
languageopcionalstringIdioma do candidato (pt-BR, pt-PT, en-US, es-ES, es-MX, es-AR, it-IT, de-DE, de-AT, de-CH). Sem ele, o `Accept-Language`, depois o da comunidade. Os e-mails do pedido saem nesse idioma.
phoneopcionalstringOpcional, sem confirmação (vai para a conta se o pedido for aprovado). Inválido: 400 com param = phone.
phoneCountryopcionalstring
fieldsopcionalobjectOs campos do cadastro da comunidade, `{ key: valor }` (`GET /api/member-fields/signup`). Aparecem para a equipe na fila e vão para a conta na aprovação.

Respuestas

CódigoDescripción
202Pedido recebido (resposta genérica; não diz se o pedido foi criado).
400Requisição inválida — falha de validação.
403Autenticado, mas sem permissão para esta operação.
404Recurso não encontrado.
409O cadastro desta comunidade é aberto, sem aprovação (use `POST /api/auth/register`).
422Campo do cadastro obrigatório faltando, fora da lista ou inválido; ou `altcha` ausente, inválido, vencido ou já usado.
429Tentativas demais. O header `Retry-After` diz em quantos segundos tentar de novo.
500Erro interno do servidor.
503A API não consegue verificar o ALTCHA agora (chave não configurada em produção). `param = altcha`.

Ejemplo con curl

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