Começar
Participantes e token
Como o clube sabe quem é o usuário sem receber dados pessoais.
O participante é o seu ID. O seu servidor, com a chave secreta, pede um token curto e entrega ao navegador/app. O clube nunca aceita um ID vindo do navegador sem esse token.
curl -X POST https://api.iclubing.com/v1/participants/user_123/token \
-H "Authorization: Bearer $ICLUBING_KEY" \
-H "Content-Type: application/json" \
-d '{ "ttl_seconds": 900 }'{
"token": "eyJhbGciOiJIUzI1NiIs…",
"expires_at": "2026-10-01T15:15:00.000Z",
"participant_id": "part_…",
"level": { "number": 3, "name": "Bronze III", "badge_url": null, "color": null },
"xp": { "current": 320, "required": 1000, "total": 2320, "progress": 0.32 }
}ttl_seconds: de 60 a 86400 (padrão 900 = 15 min).- Cria o participante se ele ainda não existir.
- O clube guarda o token na sessão e tira da URL. Quando ele vence dentro do embed, o clube avisa o seu site (
auth.expired) e você chamaclube.identify(novoToken)— veja Instalação.
Nome, avatar e contato (opcional)
Para mostrar um nome no ranking ou mandar e-mail/SMS pelo CRM do clube, envie os dados com POST /v1/participants. Nada disso é obrigatório.
curl -X POST https://api.iclubing.com/v1/participants \
-H "Authorization: Bearer $ICLUBING_KEY" \
-H "Content-Type: application/json" \
-d '{ "external_id": "user_123", "display_name": "Ana", "email": "ana@exemplo.com", "tags": ["vip"] }'GET /v1/participants/{external_id} devolve o perfil: XP, nível, elo, próximo elo, benefícios e saldos (currencies). Para vários de uma vez (ex.: mostrar o nível numa lista), use POST /v1/participants/progress com até 200 external_ids.