API: detalhes e limites atuais

Referência das rotas internas autenticadas por sessão.

API interna do aplicativo

Ainda não há sistema público de chaves, contrato OpenAPI publicado nem garantia de API externa estável. Estas rotas atendem o painel e podem mudar. A documentação não concede acesso.

Autenticação e origem

Requisições protegidas exigem conta verificada, login e o cookie de sessão HTTP-only. As rotas ficam restritas ao endereço do aplicativo. Escritas verificam origem, permissões e entrada; rotas administrativas também exigem administrador.

Rotas existentes

MétodoCaminhoUso
GET/api/healthVerificação do banco, sem login.
GET/api/overviewLinks, domínios, métricas e paginação.
POST/api/linksCriar um redirecionamento ou página.
GET / PATCH/api/links/:idLer ou atualizar um link da conta.
PUT/api/links/:id/pageSalvar rascunho ou publicar.
GET/api/links/:id/qrGerar QR code PNG ou SVG.
GET/api/links/exportExportar CSV com filtros.
GET/api/analyticsEstatísticas agregadas da conta.
GET/api/account/exportExportar dados privados da conta.

Exemplo somente de leitura

No endereço do aplicativo, com login ativo, uma requisição da mesma origem lê o painel. Não copie cookies de sessão para scripts ou serviços de terceiros.

const response = await fetch('/api/overview?page=1', {
  credentials: 'same-origin'
});
if (!response.ok) throw new Error('Falha na requisição');
const { links, pagination } = await response.json();

Erros e paginação

Sem login, as rotas protegidas retornam 401. Permissões podem retornar 403, recursos ausentes 404, conflitos 409, entrada inválida 400 e limite de requisições 429. O painel aceita page, q e domain e retorna page, page_size e total em pagination.

Automação externa

Use exportações para transportar dados hoje. Integrações estáveis com API versionada e tokens precisam de um lançamento específico; não dependem de cookies privados ou escritas não documentadas.