Skip to content

Pede conexão com uma pessoa

POST/api/chat/connections

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.

Qualquer papel. Pedir conexão é como iniciar conversa: segue `whoCanStart` (403 `teamOnly` / `paidOnly`), a outra pessoa precisa estar disponível e não pode haver bloqueio de nenhum lado (403, a mesma mensagem "não é possível enviar mensagens para esta pessoa"). A pessoa pedida recebe uma notificação no app (`chat.connectionRequested`), o evento `connection.requested` e, se a categoria de e-mail "Mensagens" estiver ligada, um e-mail (no máximo um por par a cada 24 h; nunca para quem está indisponível). Já existe pedido meu ou conexão: 200 com o que já existe (`created: false`). A outra pessoa já tinha me pedido: o pedido dela é aceito (200, `connection: connected`). A si mesmo: 400. Perfil de outra comunidade: 404. Pedido recusado: por 30 dias, pedir de novo devolve o mesmo pedido como pendente, sem notificação nem e-mail (a recusa continua silenciosa). Quem cancelou um pedido ou desfez a conexão espera 24 h para pedir de novo à mesma pessoa (429, `errors[0].param = profileId`). Nunca há mais de uma notificação de pedido ativa por par.

Headers

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

Request body application/json

NameTypeDescription
profileIdrequiredstring (uuid)O perfil da outra pessoa nesta comunidade.

Responses

StatusDescription
200O pedido ou a conexão que já existia (ou o pedido da outra pessoa, aceito agora).
201Pedido 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.
404Recurso não encontrado.
429Pedido cancelado ou conexão desfeita há menos de 24 h por quem pede (`errors[0].code = requestCooldown`), ou um limite anti-spam (`limitConnectionsDaily`, `limitConnectionsWeekly`, `limitPendingRequests`; ver a resposta `ChatRateLimited`). O header `Retry-After` traz os segundos que faltam e `errors[0].retryAt` a data em que pode pedir de novo.
500Erro interno do servidor.

curl example

curl -X POST "https://api.memberfy.net/api/chat/connections" \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID" \
  -H "Content-Type: application/json" \
  -d '{"profileId":"00000000-0000-0000-0000-000000000000"}'