Integração da Academia

Check-in por CPF, elegibilidade, planos e webhooks.

Integração da Academia

Para academias e redes conectarem seu sistema (catraca, ERP, recepção, app) ao
PriPass. O contrato segue o padrão de mercado: quem já integra com outra
plataforma de benefícios troca só a base URL e usa suas credenciais PriPass.

  • Base URL: https://api.pripass.com

Credenciais

ChaveIdentificaEscopo
place_api_keyA academia (unidade)Única por unidade
partner_api_keyA rede/integradorCompartilhada na rede

Autenticação

Token (rotas /partner/*):

POST /partner/auth
{ "place_api_key": "place_xxxx", "partner_api_key": "partner_xxxx" }

201 { partner, place, token }. Use Authorization: Bearer <token> (24h).

Header de chave (check-in): rotas /v1/track_usages* e /partner_app/v1/validate
usam x-api-key: place_xxxx.

Check-in

# Validar (não consome)
POST /v1/track_usages/validate
x-api-key: place_xxxx
{ "type": "cpf", "identifier": "12345678900", "service_provider_code": "ACADEMIA_CENTRO" }

# Registrar (consome) -> 204
POST /v1/track_usages
x-api-key: place_xxxx
{ "data": { "type": "track_usage", "attributes": {
    "type": "cpf", "identifier": "12345678900", "service_provider_code": "ACADEMIA_CENTRO" } } }

# Código do beneficiário
POST /v1/track_usages/beneficiaries/code
x-api-key: place_xxxx
{ "type": "cpf", "identifier": "12345678900" }

service_provider_plan_code é obrigatório só quando a academia tem mais de um plano.

Planos e app

  • GET /partner/plans (Bearer) → { name, identifier, placeApiKey, Plans: [...] }
  • POST /partner_app/v1/validate (x-api-key) → { employee_data, app_data }

Erros

{ "errors": [ { "status": "422", "title": "Validation Error",
  "source": [{ "label": "not_exists", "message": "Beneficiary not found" }] } ] }
labelsignificado
not_existsCPF inexistente ou sem plano ativo
already_usedcheck-in recente na mesma academia
already_used_other_gymcheck-in recente em outra academia
gym_with_more_than_one_planinforme service_provider_plan_code
inactive_employeebeneficiário inativo
gym_inactiveacademia descredenciada / inativa
plan_not_allowedplano não dá acesso a essa categoria de academia
usage_limit_reachedlimite mensal de visitas do plano atingido

Webhooks

POST /partner/webhook/create (Bearer) — registra URL por tipo de evento.


Did this page help you?