Skip to content

Marcar uma sessão com um anfitrião

POST/api/networking/sessions

Auth
Requires a token
API key:
networking:write
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.

Quem marca só precisa abrir o espaço (sem passo de entrada, desde 2026-10-29); o anfitrião precisa estar `ACTIVE` no lado anfitrião (ou simétrico). A sessão é sempre gratuita e passa pelo motor do Agendamento, na agenda do anfitrião no espaço (mesmo `.ics`, lembrete, cancelamento). `reason` (motivo) é obrigatório. Com `sessionTypeId`, a duração é a do tipo; sem ele, `durationMinutes` precisa ser uma das `durations` do espaço (padrão: `defaultDuration`). Com `requestApproval = ALWAYS` (ou `HOST_CHOOSES` e o tipo com `requiresApproval`) nasce `PENDING_APPROVAL`: o horário fica segurado, o anfitrião recebe o pedido por e-mail (categoria Networking) e aceita ou recusa; sem aceite, os dois recebem a confirmação com `.ics`. Recusas: 403 `spaceAccessDenied` (quem marca não abre o espaço); 403 `notParticipant` (a equipe removeu quem marca do programa); 409 `hostUnavailable`, 409 `hostBusy`/`conflict` (horário ocupado, com `data.nextSlots`), 409 `personBusy` (quem marca ou o anfitrião já tem sessão ativa, de Networking ou de Agendamento, como anfitrião ou participante, que se sobrepõe); 422 `weeklyLimit`, `pairLimit`, `minNotice`, `horizon`, `durationNotAllowed`, `sessionTypeDuration`. Sobreposição e limites são checados sob a trava por perfil do motor: duas marcações ao mesmo tempo não furam o limite.

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
spaceIdrequiredstring (uuid)
hostMemberIdrequiredstring (uuid)
sessionTypeIdoptionalstring (uuid)
startsAtrequiredstringISO 8601; sem fuso, vale o da comunidade.
durationMinutesoptionalinteger
reasonrequiredstringmax 1000

Responses

StatusDescription
201Sessão marcada (ou pedido 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.
409Conflito com o estado atual do recurso.
422Regra do programa (limite, antecedência, horizonte, duração) ou valor que não serve.
500Erro interno do servidor.

curl example

curl -X POST "https://api.memberfy.net/api/networking/sessions" \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID" \
  -H "Content-Type: application/json" \
  -d '{"spaceId":"00000000-0000-0000-0000-000000000000","hostMemberId":"00000000-0000-0000-0000-000000000000","startsAt":"2026-11-04T15:00","reason":"string"}'