META_API_SPEC.md

🔌 META API SPEC — A Meta Interface

Public Markdown Document

🔌 META API SPEC — A Meta Interface

Este documento é a referência oficial das rotas de gestão do Fastapp Engine. Estas rotas permitem gerir a estrutura das aplicações e acompanhar a evolução do ecossistema.

270 palavras12 headingsrepository root

🔌 META API SPEC — A Meta-Interface

Este documento é a referência oficial das rotas de gestão do Fastapp Engine. Estas rotas permitem gerir a estrutura das aplicações e acompanhar a evolução do ecossistema.


🛠️ Gerenciamento de Aplicações (/api/app)

🚩 Listar/Criar Apps

  • GET /api/app: Lista todos os apps cadastrados.
  • POST /api/app: Cria uma nova aplicação baseada no AppSchema.

✏️ Atualizar App (Metadata Patch)

  • PATCH /api/app/:id: Atualiza a definição do app (objetos, módulos).
  • Parâmetro autoSnapshot: Se true, dispara o snapshot automático após o patch.

📸 Sistema de Snapshot (/api/system)

🧊 Gerar Snapshot

  • POST /api/system/snapshot: Lê o banco de dados e gera o arquivo físico app/fastapp/static-manifest.ts.
  • Importante: Garante performance e versionamento via Git.

🗃️ Sincronização de Storage (/api/data)

⚙️ Adaptar Storage (DDL Adapt)

  • POST /api/data/:object/storage: Alinha o banco de dados físico com os metadados.
  • Segurança: Operação deliberadamente manual para revisão de alterações SQL.

📊 Endpoints de Dados (v1) (/api/v1/data)

O motor provê acesso universal aos dados através de uma interface de consulta soberana.

🔍 Filtragem (Formatos Aceitos)

O sistema suporta dois formatos de filtros. O formato Flat é o padrão soberano para novas implementações.

Operador Flat (Recomendado) Legacy Exemplo Flat
Eq field=val filters[field][=]=val ?status=NOVO
Ne field[ne]=val filters[field][$ne]=val ?status[ne]=FIXED
Gt/Gte field[gt/gte]=v filters[field][$gt/gte]=v ?val[gt]=100
Lt/Lte field[lt/lte]=v filters[field][$lt/lte]=v ?val[lt]=50
Like field[like]=str filters[field][$like]=str ?name[like]=mario
Between field[between]=a,b filters[field][between]=a,b ?date[between]=2023-01-01,2023-12-31
In field[in]=a,b,c filters[field][in]=a,b,c ?id[in]=1,2,3

📑 Paginação e Ordenação

Parâmetros reservados para controle de fluxo:

Parâmetro Tipo Descrição Exemplo
$limit number Limite de registros por página (default: 50). ?$limit=10
$skip number Quantidade de registros a ignorar. ?$skip=20
$sort object Dicionário {campo: 1/-1}. ?$sort[created_at]=-1
granularity string Define a resolução temporal para métricas BI. ?granularity=month

🚀 Exemplo de Requisição Completa

GET /api/v1/data/lead?status=NOVO&$limit=10&$sort[nome]=1



"A Meta-API é a ponte entre a inteligência do motor e a operação do sistema."