Documentação da API

Guia completo para integração via API REST

Autenticação

Todas as requisições à API devem incluir autenticação. Você pode usar uma das seguintes formas:

Header Authorization

Recomendado para chamadas server-side

Authorization: Bearer YOUR_API_KEY

Query Parameter

Para links e embeds

?token=YOUR_TOKEN

Base URL

https://your-domain.com/api/v1

Endpoints

GET/api/v1/collections

Lista todas as coleções disponíveis para o cliente

Resposta

{
  "success": true,
  "data": [
    {
      "id": "col-1",
      "title": "Eletrotécnica Básica",
      "description": "Fundamentos de eletrotécnica...",
      "tags": ["eletricidade", "circuitos"]
    }
  ]
}
GET/api/v1/units

Lista todas as unidades disponíveis. Aceita filtros por coleção.

Parâmetros

NomeTipoDescrição
collectionIdstringFiltrar por ID da coleção

Resposta

{
  "success": true,
  "data": [
    {
      "id": "unit-1",
      "slug": "lei-de-ohm",
      "title": "Lei de Ohm",
      "summary": "Entenda a relação fundamental...",
      "tags": ["ohm", "resistência"]
    }
  ]
}
GET/api/v1/units/:slug

Retorna os detalhes completos de uma unidade, incluindo todos os blocos de conteúdo.

Resposta

{
  "success": true,
  "data": {
    "id": "unit-1",
    "slug": "lei-de-ohm",
    "title": "Lei de Ohm",
    "summary": "...",
    "blocks": [
      {
        "id": "block-1",
        "type": "richText",
        "content": "<h2>Introdução</h2>..."
      }
    ]
  }
}
GET/api/v1/render/:slug

Retorna o HTML completo renderizado da unidade.

Resposta

{
  "success": true,
  "data": {
    "html": "<!DOCTYPE html>...",
    "title": "Lei de Ohm"
  }
}
GET/api/v1/snippet/:slug

Retorna apenas o HTML do conteúdo (sem estrutura de página).

Resposta

{
  "success": true,
  "data": {
    "html": "<div class='content'>...</div>",
    "title": "Lei de Ohm"
  }
}

Tipos de Blocos

Os blocos de conteúdo podem ser dos seguintes tipos:

TipoDescriçãoCampos
richTextTexto formatado HTMLcontent (string)
videoVídeo incorporadourl, title
pdfDocumento PDFurl, title
imageImagem com legendaurl, caption, alt
calloutDestaque informativocalloutType, content
tableTabela de dadosheaders[], rows[][]

Limites de Requisição

A API possui os seguintes limites de requisição:

  • 1000 requisições por minuto
  • 100.000 requisições por dia
  • • Headers de rate limit incluídos em todas as respostas