API REST
Cada acción en la interfaz de Celerp es un endpoint REST: la misma API que usa la interfaz internamente. Automatiza flujos de trabajo, conecta otros sistemas o construye tus propias herramientas. La API se ejecuta localmente con tus datos; nada se envía a la nube.
🔗 URL base
http://localhost:8000 en una instalación con pip. La aplicación de escritorio elige su propio puerto: consulta celerp-data/api-port.
🔑 Autenticación
Bearer JWT desde /auth/login
📦 Formato
JSON de entrada, JSON de salida
📖 Especificación
GET /openapi.json (OpenAPI 3.1)
¿Qué puerto? Con pip install celerp, el servidor de la API se ejecuta en localhost:8000 (cámbialo con --api-port) y el puerto 8080 es la interfaz web para personas, no la API. La aplicación de escritorio elige puertos libres cada vez que se inicia y guarda el puerto de la API en el archivo api-port de su carpeta celerp-data. Para fijar el puerto, define CELERP_API_PORT antes de abrirla.
Autenticación
Celerp usa JSON Web Tokens de corta duración. Inicia sesión con tu correo y contraseña de Celerp para obtener un token de acceso y envíalo después como cabecera Bearer en cada solicitud.
1. Iniciar sesión
curl -X POST http://localhost:8000/auth/login \
-H "Content-Type: application/json" \
-d '{"email": "[email protected]", "password": "your-password"}'
La respuesta contiene dos tokens:
{
"access_token": "eyJhbGciOiJI...",
"refresh_token": "eyJhbGciOiJI..."
}
2. Llamar a la API con el token
curl http://localhost:8000/items \
-H "Authorization: Bearer eyJhbGciOiJI..."
- El token identifica tu usuario, rol y empresa, por lo que las solicitudes se acotan automáticamente a esa empresa, sin cabeceras adicionales.
- Los tokens de acceso duran hasta 24 horas. Cuando uno expira, obtén un par nuevo enviando tu
refresh_tokenpor POST a/auth/token/refresh. - ¿Perteneces a más de una empresa? Lístalas con
GET /auth/my-companiesy obtén un token para otra conPOST /auth/switch-company/{company_id}.
Los tokens llevan tus permisos. Un token de viewer puede leer pero no escribir; las cifras de coste requieren el rol manager o superior. Trata los tokens como contraseñas: quien tenga uno puede actuar en tu nombre.
Hacer solicitudes
Todos los endpoints están bajo la dirección de tu servidor de la API (http://localhost:8000 en una instalación con pip, como en los ejemplos de abajo) y devuelven JSON. Los endpoints de listado devuelven un array items y un recuento 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
}
Paginación: pasa ?limit= (50 por defecto) y ?offset=. La mayoría de los endpoints de listado admiten además un término de búsqueda q= y filtros por columna (p. ej. ?status=available).
Crear datos
Envía JSON por POST para crear registros. Las escrituras devuelven el id de la nueva entidad (y el event_id subyacente; cada cambio en Celerp es un evento).
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"
}'
Idempotencia: incluye una idempotency_key en cualquier escritura. Una solicitud reintentada con la misma clave no creará un duplicado: es seguro para redes inestables y trabajos en lote.
Convenciones
- Errores las respuestas no 2xx devuelven
{"detail": "..."}con un código de estado HTTP estándar. - Límites de frecuencia 60 solicitudes/minuto por IP por defecto; el inicio de sesión está limitado a 10/minuto. Superar un límite devuelve
429. - Permisos los endpoints están controlados por tu rol:
viewer → operator → manager → admin → owner. - Ámbito de empresa cada solicitud actúa sobre la empresa de tu token; cambia de empresa para actuar sobre otra.
Endpoints comunes
Una pequeña muestra para empezar. Cada módulo añade los suyos; la lista completa está en el esquema OpenAPI de más abajo.
| Método | Ruta | Descripción |
|---|---|---|
POST | /auth/login | Obtener un token de acceso (no requiere autenticación) |
GET | /health | Estado del servicio (no requiere autenticación) |
GET | /items | Listar artículos de inventario |
POST | /items | Crear un artículo |
GET | /docs | Listar documentos (facturas, OC, facturas recibidas, …) |
POST | /docs | Crear un documento |
GET | /crm/contacts | Listar clientes y proveedores |
POST | /crm/contacts | Crear un contacto |
GET | /dashboard/kpis | KPI de negocio |
Referencia completa por área
Todos los endpoints que expone la API en ejecución, agrupados por área. Cada página enumera el método, la ruta, los parámetros, las estructuras de solicitud y respuesta y una llamada de ejemplo.
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 la API completa
La referencia completa y siempre actualizada es el esquema OpenAPI 3.1 que genera tu propia instancia:
GET http://localhost:8000/openapi.json
Cárgalo en cualquier herramienta OpenAPI (Postman, Insomnia, Swagger UI o un generador de clientes) para explorar todos los endpoints y modelos, probar solicitudes y generar un cliente tipado en tu lenguaje. Celerp entrega el propio esquema en lugar de una página de documentación alojada, así que la superficie de tu API queda privada en tu instancia.
¿Prefieres lenguaje natural? El asistente de IA (Connect) llama a esta misma API por ti: pídele que genere un informe o cree un documento en lenguaje natural. Y recuerda: todo lo que la API puede hacer, lo hace sin acceso especial, exactamente igual que un usuario autenticado.