Chegada de um visitante (público, com token)
POST/api/attendance/kiosk/check-in
- Auth
- Requires a token
Endpoint descriptions come straight from the API specification and are in Portuguese for now. The interface around them is translated.
Abre a visita do visitante (método `KIOSK`). `guestName` é obrigatório; `guestCompany` e `guestPhone` valem conforme `guestFields` da sessão (`required` exige, `off` ignora). `hostProfileId` precisa ser um membro da comunidade **do token** com acesso ao space (senão 404). O corpo nunca aceita `communityId` nem `spaceId`. **Idempotente** por nome normalizado + anfitrião + space: o segundo pedido devolve a visita aberta (`200`, `alreadyCheckedIn: true`). Cria: `201`. Se o space tem `notifyHost`, o e-mail ao anfitrião vai para a fila (nunca na requisição), com teto de 10 por hora por anfitrião; passando do teto a visita é registrada e o e-mail não sai. Limite: 10 por minuto por token.
Headers
| Name | Type | Description |
|---|---|---|
X-Kiosk-Tokenrequired | string | Token do quiosque. A comunidade e o space saem dele; nunca vão no corpo nem no caminho. |
Request body application/json
| Name | Type | Description |
|---|---|---|
guestNamerequired | string | max 100 |
guestCompanyoptional | string | max 100 |
guestPhoneoptional | string | max 30 |
hostProfileIdrequired | string (uuid) |
Responses
| Status | Description |
|---|---|
200 | Já havia visita aberta deste visitante com este anfitrião. |
201 | Visita aberta. |
400 | Requisição inválida — falha de validação. |
401 | Token ausente, inválido ou revogado, ou space apagado. |
403 | Autenticado, mas sem permissão para esta operação. |
404 | Recurso não encontrado. |
429 | Limite de taxa (por token e por IP). Traz `Retry-After` (segundos) e `errors`. |
500 | Erro interno do servidor. |
curl example
curl -X POST "https://api.memberfy.net/api/attendance/kiosk/check-in" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"guestName":"Maria Souza","hostProfileId":"00000000-0000-0000-0000-000000000000"}'