Developers

API SMGC v1

REST JSON. Use esta API para construir um app mobile (ou outras integrações) sobre os mesmos dados da área de sócios.

Autenticação

Autentique seu cliente no Lovable Cloud (Supabase Auth) usando a URL e a chave pública abaixo. Em cada chamada, envie o access token:

Authorization: Bearer <access_token>
SUPABASE_URL: import.meta.env.VITE_SUPABASE_URL (disponível também em /env do app)
PUBLISHABLE_KEY: idem (VITE_SUPABASE_PUBLISHABLE_KEY)

Endpoints

MétodoCaminhoAcessoDescrição
POST/api/v1/contatopúblicoEnvia mensagem de contato. Body: {nome, email, assunto, mensagem}
POST/api/v1/inscricao-sociopúblicoSolicita inscrição. Body: {nome, email, telefone, data_nascimento?, mensagem?}
GET/api/v1/professorespúblicoLista professores ativos.
GET/api/v1/clube/infopúblicoInformações institucionais do clube.
GET/api/v1/mesócioPerfil + handicap + papéis do usuário autenticado.
GET/api/v1/handicapsócioHandicap atual + últimas 20 voltas.
POST/api/v1/handicapsócioRegistra volta. Body: {data_volta, campo, score, course_rating, slope_rating, par?}
GET/api/v1/aulas/slotssócioLista slots disponíveis. Query: ?from=ISO&to=ISO
GET/api/v1/aulas/agendamentossócioMeus agendamentos.
POST/api/v1/aulas/agendamentossócioAgenda um slot. Body: {slot_id}
DELETE/api/v1/aulas/agendamentos/:idsócioCancela um agendamento.

Resposta padrão

// Sucesso
{ "data": { ... }, "error": null }

// Erro
{ "data": null, "error": { "message": "...", "code": "validation" } }

Exemplo cURL

curl https://smgolfe.lovable.app/api/v1/me \
  -H "Authorization: Bearer $ACCESS_TOKEN"