REST API
Cada ação na interface do Celerp é um endpoint REST – a mesma API que a interface usa internamente. Automatize fluxos de trabalho, ligue outros sistemas ou crie as suas próprias ferramentas. A API corre localmente com os seus dados; nada é enviado para a cloud.
🔗 URL base
http://localhost:8000 numa instalação com pip. A aplicação para computador escolhe a sua própria porta: consulte celerp-data/api-port.
🔑 Autenticação
Bearer JWT de /auth/login
📦 Formato
JSON de entrada, JSON de saída
📖 Especificação
GET /openapi.json (OpenAPI 3.1)
Que porta? Com pip install celerp, o servidor de API é executado em localhost:8000 (altere com --api-port) e a porta 8080 é a interface web para utilizadores, não a API. A aplicação para computador escolhe portas livres sempre que arranca e grava a porta da API no ficheiro api-port da sua pasta celerp-data. Para fixar a porta, defina CELERP_API_PORT antes de a iniciar.
Autenticação
O Celerp usa JSON Web Tokens de curta duração. Inicie sessão com o seu e-mail e palavra-passe do Celerp para obter um token de acesso, depois envie-o como cabeçalho Bearer em cada pedido.
1. Iniciar sessão
curl -X POST http://localhost:8000/auth/login \
-H "Content-Type: application/json" \
-d '{"email": "[email protected]", "password": "your-password"}'
A resposta contém dois tokens:
{
"access_token": "eyJhbGciOiJI...",
"refresh_token": "eyJhbGciOiJI..."
}
2. Chamar a API com o token
curl http://localhost:8000/items \
-H "Authorization: Bearer eyJhbGciOiJI..."
- O token identifica o seu utilizador, a sua função e a sua empresa, pelo que os pedidos são automaticamente limitados a essa empresa – sem necessidade de cabeçalhos adicionais.
- Os tokens de acesso duram até 24 horas. Quando um expira, obtenha um par novo enviando por POST o seu
refresh_tokenpara/auth/token/refresh. - Pertence a mais de uma empresa? Liste-as com
GET /auth/my-companies, depois obtenha um token para outra comPOST /auth/switch-company/{company_id}.
Os tokens transportam as suas permissões Um token de viewer pode ler mas não escrever; os dados de custo exigem a função manager ou superior. Trate os tokens como palavras-passe – quem tiver um pode agir em seu nome.
Fazer pedidos
Todos os endpoints estão no endereço do seu servidor de API (http://localhost:8000 numa instalação com pip, como nos exemplos abaixo) e devolvem JSON. Os endpoints de listagem devolvem um array items e uma contagem total:
curl "http://localhost:8000/items?limit=20&offset=0" \
-H "Authorization: Bearer $TOKEN"
{
"items": [
{ "id": "item:...", "sku": "WIDGET-001", "name": "Widget", "quantity": 42 }
],
"total": 142
}
Paginação: passe ?limit= (predefinição: 50) e ?offset=. A maioria dos endpoints de listagem aceita também um termo de pesquisa q= e filtros por coluna (por exemplo, ?status=available).
Criar dados
Envie JSON por POST para criar registos. As escritas devolvem o id da nova entidade (e o event_id subjacente – todas as alterações no Celerp são eventos).
curl -X POST http://localhost:8000/crm/contacts \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Acme Corp",
"email": "[email protected]",
"contact_type": "customer",
"idempotency_key": "acme-2026-06-21"
}'
Idempotência: inclua uma idempotency_key em qualquer escrita. Um pedido repetido com a mesma chave não cria um duplicado – seguro para redes instáveis e tarefas em lote.
Convenções
- Erros as respostas não 2xx devolvem
{"detail": "..."}com um código de estado HTTP padrão. - Limites de pedidos 60 pedidos/minuto por IP por predefinição; o início de sessão está limitado a 10/minuto. Exceder um limite devolve
429. - Permissões os endpoints são controlados pela sua função:
viewer → operator → manager → admin → owner. - Âmbito da empresa cada pedido atua sobre a empresa indicada no seu token; mude de empresa para atuar sobre outra.
Endpoints comuns
Uma pequena amostra para começar. Cada módulo adiciona os seus – a lista completa está no esquema OpenAPI abaixo.
| Método | Caminho | Descrição |
|---|---|---|
POST | /auth/login | Obter um token de acesso (não requer autenticação) |
GET | /health | Estado do serviço (não requer autenticação) |
GET | /items | Listar itens de stock |
POST | /items | Criar um item |
GET | /docs | Listar documentos (faturas, notas de encomenda, faturas de compra, …) |
POST | /docs | Criar um documento |
GET | /crm/contacts | Listar clientes e fornecedores |
POST | /crm/contacts | Criar um contacto |
GET | /dashboard/kpis | KPIs de negócio |
Referência completa por área
Todos os endpoints disponibilizados pela API em execução, agrupados por área. Cada página indica o método, o caminho, os parâmetros, os formatos do pedido e da resposta e um exemplo de chamada.
Auth
Authentication API for Celerp users, login, logout, password recovery, company switching, and API access. (13 endpoints)
Companies
Company settings and administration API for users, roles, locations, taxes, payment terms, price lists, modules, and company preferences. (70 endpoints)
Items
Inventory API for products and stock items, quantities, pricing, locations, barcodes, valuation, imports, reservations, transfers, transformations, and stock status. (39 endpoints)
Docs
Business document API for invoices, bills, purchase orders, quotations, credit notes, shipping documents, payments, fulfillment, PDF output, and document lifecycle operations. (52 endpoints)
Lists
Inventory list API for stock audits, transfers, write-offs, manifests, scans, reservations, notes, exports, and list lifecycle operations. (38 endpoints)
Accounting
Celerp accounting REST API for the chart of accounts, journal entries, general ledger, bank reconciliation, financial statements, transfers, and fiscal period controls. (59 endpoints)
Ledger
Event ledger API for reading Celerp business events and rebuilding derived application data. (3 endpoints)
Reports
ERP reporting API for accounts receivable and payable aging, sales, purchases, and expiring inventory. (5 endpoints)
Manufacturing
Manufacturing API for production orders, recipes, work centers, workflows, material requirements, costing, scheduling, component issue, and finished-goods receipt. (32 endpoints)
Labels
Inventory label and barcode API for label templates, single-item labels, bulk label sheets, and printable PDFs. (7 endpoints)
Crm
CRM REST API for customers, suppliers, contacts, addresses, people, notes, tags, files, imports, exports, and contact management. (25 endpoints)
Subscriptions
Recurring document and subscription API for invoice and purchase-order templates, scheduling, activation, pausing, resuming, cancellation, and on-demand generation. (6 endpoints)
Connectors
Integration API for connecting Celerp ERP to external commerce and business platforms, managing connector credentials, and running data synchronization. (9 endpoints)
Payments
Payment integration API for connecting payment processing, checking payment availability, and reading connection status. (7 endpoints)
Backup
Backup and restore API for exporting, importing, listing, creating, and restoring Celerp ERP backups. (8 endpoints)
Notifications
User notification API for listing notifications and marking individual or all notifications as read. (3 endpoints)
Events
Real-time server-sent events API for Celerp notifications and live application events. (1 endpoint)
System
System health, readiness, restart, and factory reset endpoints for a Celerp ERP installation. (10 endpoints)
Admin
Administrative diagnostics and system status endpoints for maintaining a Celerp ERP installation. (2 endpoints)
Ai
Celerp AI API for ERP assistant conversations, document extraction, batch jobs, memory, usage, and user-confirmed business actions. (22 endpoints)
Attachments
Inventory attachment API for uploading, downloading, tagging, previewing, and deleting item files and product images. (12 endpoints)
Dashboard
Dashboard API for ERP KPIs, recent business activity, and searchable activity history. (3 endpoints)
Payments Public
Public payment endpoints for customer payment links and payment-provider return handling. (2 endpoints)
Received
Received documents API for documents other Celerp users shared with you: list and review them, book one as your own draft, and bring a booked draft up to date with the sender's latest revision. (5 endpoints)
Search
Global Celerp ERP search API for finding permitted records across modules from a single query. (1 endpoint)
Settings
System settings and Celerp Connect API for account setup, cloud connection state, billing, backups, connectors, and partner configuration. (17 endpoints)
Share
Document sharing API for creating, inspecting, updating, and revoking public share links for Celerp documents and lists. (4 endpoints)
Share Public
Public document sharing and import endpoints for viewing shared Celerp documents and downloading or importing portable document bundles. (4 endpoints)
Stars
Supporter badge and Celerp community recognition API for badge verification, display, opt-out, and prompts. (6 endpoints)
Verticals
Industry preset and category schema API for configuring Celerp ERP fields and defaults by business vertical. (5 endpoints)
Company Backups
16 endpoints
Migrations
22 endpoints
Explorar a API completa
A referência completa e sempre atualizada é o esquema OpenAPI 3.1 gerado pela sua própria instância:
GET http://localhost:8000/openapi.json
Carregue-o em qualquer ferramenta OpenAPI – Postman, Insomnia, Swagger UI ou um gerador de clientes – para navegar por todos os endpoints e modelos, testar pedidos e gerar um cliente tipado na sua linguagem. O Celerp distribui o próprio esquema em vez de uma página de documentação alojada, pelo que a sua superfície de API permanece privada à sua instância.
Prefere linguagem natural? O assistente de IA (Connect) chama esta mesma API por si – peça-lhe que gere um relatório ou crie um documento em linguagem natural. E lembre-se: tudo o que a API faz, fá-lo sem acesso especial – exatamente o que um utilizador com sessão iniciada poderia fazer.