API Pública

Crie, publique e meça LPs programaticamente (Claude Design, n8n, CRM…).

1. Autenticação

Gere uma API key em Configurações Globais → Chaves de API (copie o token, só aparece uma vez). Envie em todas as chamadas:

Authorization: Bearer lpk_sua_chave_aqui

Cada chave tem escopos — a chamada só funciona se a chave tiver o escopo do endpoint.

2. Endpoints (base https://lp-aws.podiumeducacao.com.br)

GET/api/pub/v1/landing-pageslp:readLista as LPs
GET/api/pub/v1/landing-pages/:idlp:readDetalha uma LP
POST/api/pub/v1/landing-pageslp:writeCria LP (rascunho) a partir de HTML
PUT/api/pub/v1/landing-pages/:idlp:writeAtualiza conteúdo/mapeamentos/tracking/domínio
POST/api/pub/v1/landing-pages/:id/publishlp:publishPublica/despublica (body {enable})
GET/api/pub/v1/landing-pages/:id/embedlp:readURL + snippet de embed
GET/api/pub/v1/metrics/overviewmetrics:readTotais (leads, eventos, valor)
GET/api/pub/v1/metrics/by-lpmetrics:readMétricas por LP
POST/api/pub/v1/events/ingestevents:writeDispara evento externo p/ Meta (CAPI)

3. Exemplo: criar e publicar uma LP

# 1) cria (rascunho) — domain define o site (multi-domínio)
curl -X POST https://lp-aws.podiumeducacao.com.br/api/pub/v1/landing-pages \
  -H "Authorization: Bearer lpk_..." -H "Content-Type: application/json" \
  -d '{
    "title": "Minha LP",
    "slug": "minha-lp",
    "domain": "podiumeducacao.com.br",
    "rawHtml": "<!doctype html>...HTML do Claude Design..."
  }'
# resposta: { "id": "uuid", "status": "draft", ... }

# 2) publica ao vivo
curl -X POST https://lp-aws.podiumeducacao.com.br/api/pub/v1/landing-pages/<id>/publish \
  -H "Authorization: Bearer lpk_..." -H "Content-Type: application/json" \
  -d '{ "enable": true }'
# fica em https://podiumeducacao.com.br/minha-lp

4. Dúvidas comuns

  • Multi-domínio: o campo domain escolhe o site (ex.: lp.sistemacashbarber.com.br). O slug é único por domínio.
  • Mapear formulário: envie fieldMappings no PUT (htmlField → leadField; chave custom vira variável dinâmica em extra).
  • 401 = chave ausente/inválida · 403 = chave sem o escopo necessário.