API Pública
Integra sistemas externos com a tua conta Livegest. Toda a API é REST, aceita e devolve JSON, e é autenticada com uma chave por empresa (Bearer token).
Especificação OpenAPI 3.1
Descarrega o ficheiro OpenAPI para gerar automaticamente clientes (openapi-generator, Kiota, Orval, etc.) ou importa-o diretamente no Postman, Insomnia ou Swagger UI.
OpenAPI v1
Versão estável. Endpoints de clientes, artigos, documentos, recebimentos e séries.
openapi-generator-cli generate -i https://livegest.pt/openapi/v1.json -g typescript-fetch -o ./livegest-client-v1Seguro
Rápido
Simples
Começar em 3 passos
- Entra na tua conta → escolhe a empresa → menu Chaves de API → Gerar chave. Copia e guarda o valor mostrado (só aparece uma vez).
- Guarda a chave numa variável de ambiente do teu sistema (ex.:
LIVEGEST_API_KEY). Nunca a coloques em código front-end. - Envia pedidos com o header
Authorization: Bearer <chave>para o URL base:
https://qsdehmjotjflpcraaihp.supabase.co/functions/v1/public-apiAutenticação
Envia sempre o header:
Authorization: Bearer lg_live_xxxxxxxxxxxxxxxxxxxxxxxx- Chaves inválidas ou revogadas devolvem
401 unauthorized. - Excesso de pedidos (120/min por chave) devolve
429 rate_limited. - Podes gerir e revogar chaves em Chaves de API na área da empresa.
Exemplos
curl -X GET "https://qsdehmjotjflpcraaihp.supabase.co/functions/v1/public-api/v1/customers?limit=20" \
-H "Authorization: Bearer lg_live_xxxxxxxxxxxxxxxxxxxxxxxx"Endpoints
Meta
/v1/meDevolve a empresa associada à chave e scopes.
Clientes
/v1/customers?limit=50&offset=0&search=Lista clientes (paginado).
/v1/customersCria cliente.
{ "name": "Empresa X, Lda.", "tax_id": "500000000", "email": "geral@x.pt" }/v1/customers/:idObtém cliente por id.
/v1/customers/:idAtualiza campos do cliente.
{ "email": "novo@x.pt" }/v1/customers/:idApaga cliente.
Artigos
/v1/products?limit=50&offset=0&search=Lista artigos.
/v1/productsCria artigo.
{ "name": "Consultoria", "unit_price_net": 100, "tax_rate": 23, "unit": "un" }/v1/products/:idObtém artigo por id.
/v1/products/:idAtualiza campos do artigo.
/v1/products/:idApaga artigo.
Documentos
/v1/documents?doc_type=FT&status=issued&from=2026-01-01&to=2026-12-31Lista documentos, com filtros por tipo, estado e data.
/v1/documentsCria documento (rascunho ou emitido se `issue: true`).
{
"doc_type": "FT",
"series_id": "<uuid da série>",
"issue_date": "2026-07-17",
"customer_id": "<uuid do cliente>",
"issue": true,
"lines": [
{ "description": "Consultoria", "qty": 2, "unit_price_net": 100, "tax_rate": 23 }
]
}/v1/documents/:idObtém documento com linhas e pagamentos.
/v1/documents/:id/issueEmite um documento em rascunho (atribui número, ATCUD, hash).
/v1/documents/:id/cancelAnula um documento emitido.
Pagamentos
/v1/payments?document_id=Lista pagamentos (opcionalmente filtrados por documento).
/v1/documents/:id/paymentsRegista um pagamento para o documento.
{ "amount": 123.00, "method_code": "MB", "payment_date": "2026-07-17" }Códigos de erro
{ "error": { "code": "unauthorized", "message": "Invalid API key" } }