Pular para o conteúdo
use-cases / api-endpoints-on-demand / hero
EXEC · HTTP NATIVO DE IA

Endpoints de API que se materializam sob demanda

Acesse uma URL que não existe. Um script exec wildcard captura a chamada, pede a uma IA para escrever o handler, executa em uma sandbox V8 e responde. A próxima chamada é nativa — a rota agora existe.

use-cases / api-endpoints-on-demand / mechanism

Como uma URL vira um endpoint

Hoody Exec permite que um único arquivo TypeScript sirva qualquer rota HTTP, inclusive um catch-all. Com ai true, o script também tem um modelo injetado. Combine os dois e a requisição em si se torna o gatilho para escrever o handler.

Catch-all wildcard5 PASSOS · UM ARQUIVO EXEC
01

Requisição chega

GET /api/...

Qualquer caminho sob o catch-all bate em um script.

02

Catch-all acorda

[...slug].ts

metadata.parameters.slug carrega os segmentos de caminho.

03

IA escreve um handler

generateText([ model ])

ai true injeta o modelo. O padrão é gemini-2.5-flash-lite.

04

Roda em uma sandbox V8

isolate.eval

Cada script roda em seu próprio isolate V8, projetado para código confiável.

05

Salva a rota

fs.write to scripts/N

A próxima chamada bate no arquivo salvo diretamente. Sem IA, velocidade nativa.

scripts/1/api/[...slug].ts
// @mode serverless
// @ai true
// @ai-model anthropic/claude-sonnet-4.5

const path = '/' + (metadata.parameters.slug ?? []).join('/');
const body = req.body ?? []'';

// Already saved? Hand off to the cached route.
const saved = await fs.exists('scripts/1/api' + path + '.ts');
if (saved) return fetch(path, [ method: metadata.method, body ]);

// Otherwise: ask for a handler, sandbox it, save it.
const [ text: handler ] = await generateText([
  model,
  system: 'Return a JS handler body. No imports. Return JSON.',
  prompt: `URL $[metadata.method] $[path]\nQuery $[JSON.stringify(metadata.query)]\nBody $[JSON.stringify(body)]`,
]);

const result = await isolate.eval(handler, [ req, res, fetch ]);
await fs.write('scripts/1/api' + path + '.ts', '// @mode serverless\n' + handler);
return result;

Dois comentários mágicos e um fetch de volta para a rota. O wildcard fica em scripts/1/api/[...slug].ts. O arquivo salvo cai um diretório acima. Ambos falam HTTP, então o script pode chamar seus próprios vizinhos durante a geração.

use-cases / api-endpoints-on-demand / angles

Três leitores, um padrão

O mecanismo se lê de três maneiras diferentes dependendo de quem você é. Elas se entrançam no mesmo argumento.

PARA O ENGENHEIRO SÊNIOR PREGUIÇOSO

Pare de escrever o endpoint que você usa duas vezes por ano

A ferramenta de admin, o script de integração, o relatório que você quer conectar. Acesse a URL quando precisar. O handler aparece. Salvo no momento que você recarrega.

PARA O COLABORADOR DE AGENTES

O agente não programa a API, ele a chama

Seu agente precisa de uma rota que não existe. Em qualquer outro lugar, ele escreveria código, faria deploy, esperaria e depois chamaria. Aqui, ele chama. A API chega no momento que a resposta.

PARA O FUTURO RADICAL

APIs não são mais projetadas, elas são descobertas

E se todo endpoint que você já lançou fosse apenas o rastro de URLs que você realmente chamou? Documentação se colapsa no access log. Especificações se colapsam em tráfego.

use-cases / api-endpoints-on-demand / punchline

Documentação vira o access log.

chamada segunda-feiradocumentada terça-feira
access.logagora um endpoint
  • 09:14GET/api/analytics/dashboardlive
  • 11:02POST/api/exports/users.csvlive
  • 13:48GET/api/admin/seats/auditlive
  • 16:22POST/api/agent/tools/refundlive
use-cases / api-endpoints-on-demand / replaces

O que isto substitui

Os padrões que desenvolvedores alcançam quando precisam adicionar um endpoint rapidamente. Cada um cobra overhead de scaffold por rota. O wildcard paga uma vez.

  • AWS Lambda + API GatewayScaffold por endpoint, cold starts
  • Hasura / PostgREST autogenSchema-first, retorna dados não comportamento
  • Vercel / Cloudflare functionsUm endpoint one-off, ciclo de deploy completo
  • Express / Fastify scaffoldsBoilerplate por rota, runtime para cuidar
  • Kong / Tyk pluginsGateway pesado para uma regra customizada
  • BFF microservicesServiço para manter para cada UI quirk
use-cases / api-endpoints-on-demand / cta

Documentação deixa de ser um plano. É o rastro de URLs que você chamou.

use-cases / api-endpoints-on-demand / related

Leia os outros