Referencia de la API
Endpoints de la API externa, autenticación y ejemplos de uso
Referencia de la API externa de Uproc
Autenticación
Todas las peticiones autenticadas a la API externa requieren un token bearer de API key de usuario:
| Header | Descripción | Ejemplo |
|---|---|---|
Authorization | Token bearer de API key de usuario | Bearer xxx-xxx-xxx |
El token resuelve el usuario autenticado, el ámbito de customer y el rol.
Valores por defecto del entorno
Usa estas variables de entorno en las peticiones:
UPROC_PROCESSES_API_URL: VALUEUSER_API_KEY: VALUE
URL base
https://api.uproc.io
Headers comunes
Authorization: Bearer your_user_api_key
Índice
- GET /api/v1/external/modules
- GET /api/v1/external/install
- GET /api/v1/external/modules/{module_slug}
- GET /api/v1/external/modules/{module_slug}/kpis
- GET /api/v1/external/modules/{module_slug}/collections
- GET /api/v1/external/modules/{module_slug}/collections/{collection_name}
- GET /api/v1/external/modules/{module_slug}/data/{collection_name}
- POST /api/v1/external/modules/{module_slug}/data/{collection_name}
- GET /api/v1/external/modules/{module_slug}/data/{collection_name}/contract
- GET /api/v1/external/modules/{module_slug}/actions
- POST /api/v1/external/modules/{module_slug}/actions/{action}
- PUT /api/v1/external/modules/{module_slug}/data/{collection_name}/{item_id}/status
- GET /api/v1/external/modules/{module_slug}/data_domains
- GET /api/v1/external/modules/{module_slug}/settings/tabs
- GET /api/v1/external/modules/{module_slug}/settings/tab/{tab_key}
- POST /api/v1/external/modules/{module_slug}/collections/{collection_name}/inputs/file
- POST /api/v1/external/modules/{module_slug}/collections/{collection_name}/inputs/webhook
- GET /api/v1/external/data-management/transfer
- POST /api/v1/external/data-management/transfer/import
- GET /api/v1/external/public/modules/form-generator/forms/{customer_domain}/{form_slug}
- POST /api/v1/external/public/modules/form-generator/forms/{customer_domain}/{form_slug}/submit
- GET /api/v1/my-data/invoices
- GET /api/v1/my-data/my-invoices
- GET /api/v1/my-data/processes
- GET /api/v1/my-data/tickets
- GET /api/v1/my-data/contracts
- GET /api/v1/my-data/debts
- GET /api/v1/my-data/orders
- GET /api/v1/my-data/signing-requests
- GET /api/v1/my-data/cases
- GET /api/v1/my-data/candidates
- GET /api/v1/my-data/approvals
Endpoints
GET /api/v1/external/data-management/transfer
Exporta entidades, columnas, filas y relaciones Data Management del customer admin autenticado como ZIP portable en base64. Lo usa uproc applications data-management export-transfer.
POST /api/v1/external/data-management/transfer/import
Previsualiza o reemplaza los datos Data Management del customer admin autenticado. Envia {"zip_base64":"...","confirm":false} para preview; usa confirm: true para reemplazar esquema y filas. Lo usa uproc applications data-management import-transfer.
GET /api/v1/external/modules
Lista todos los módulos disponibles.
Respuesta
{
"success": true,
"message": "",
"data": [
{"slug": "purchase-invoices", "title": "Invoice Ingest"}
]
}
Curl
curl -s \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
"$UPROC_PROCESSES_API_URL/api/v1/external/modules"
GET /api/v1/external/install
Obtiene el plan de instalación combinado para el customer autenticado.
Este endpoint devuelve:
customer_config(el mismo contrato de configuración que/api/v1/external/config)release(latest+history) desdedocs/releases.jsoninstall(mode,required_services,minimum_requirements,requirements_checkystepsordenados)
Parámetros de query
dry_run(opcional, por defectotrue)
Respuesta
{
"success": true,
"message": "get.success",
"data": {
"customer_config": {
"modules": ["purchase-invoices", "order-track"],
"white_label": {"id": 10, "name": "Acme", "domain": "acme"},
"users": []
},
"release": {
"source": "docs/releases.json",
"latest": {
"release_id": "2026.03.21-1",
"back_version": "0.1.72",
"front_version": "0.1.63"
},
"history": []
},
"install": {
"mode": "dry-run",
"required_services": ["docker", "dokploy", "uproc-back", "uproc-front"],
"minimum_requirements": {
"vcpu_min": 4,
"ram_gb_min": 16,
"disk_gb_min": 200,
"disk_type_required": "nvme"
},
"requirements_check": {
"status": "unknown",
"mode": "recommended",
"checks": []
},
"steps": []
}
}
}
Curl
curl -s \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
"$UPROC_PROCESSES_API_URL/api/v1/external/install?dry_run=true"
GET /api/v1/external/modules/{module_slug}
Obtiene los detalles de un módulo por slug.
Respuesta
{
"success": true,
"message": "",
"data": {"slug": "purchase-invoices", "title": "Invoice Ingest"}
}
Curl
curl -s \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
"$UPROC_PROCESSES_API_URL/api/v1/external/modules/purchase-invoices"
GET /api/v1/external/modules/{module_slug}/kpis
Obtiene los KPIs de un módulo.
Respuesta
{
"success": true,
"message": "",
"data": {"series": [], "kpis": {}, "meta": {}}
}
Curl
curl -s \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
"$UPROC_PROCESSES_API_URL/api/v1/external/modules/purchase-invoices/kpis"
GET /api/v1/external/modules/{module_slug}/collections
Obtiene las colecciones disponibles de un módulo.
Respuesta
{
"success": true,
"message": "",
"data": {"collections": ["invoices", "uploads"]}
}
Curl
curl -s \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
"$UPROC_PROCESSES_API_URL/api/v1/external/modules/purchase-invoices/collections"
GET /api/v1/external/modules/{module_slug}/collections/{collection_name}
Obtiene los datos de una colección de un módulo.
Respuesta
{
"success": true,
"message": "",
"data": {
"columns": [],
"rows": [],
"total_items": 0,
"current_page": 1,
"max_pages": 0
}
}
Curl
curl -s \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
"$UPROC_PROCESSES_API_URL/api/v1/external/modules/purchase-invoices/collections/invoices?page=1"
GET /api/v1/external/modules/{module_slug}/data/{collection_name}
Obtiene los datos del módulo desde el endpoint /data.
Parámetros de query
page(opcional, por defecto1)sort_field(opcional)sort_order(opcional:ascodesc)filter_field(opcional)filter_value(opcional)
Nota de Data Management (solo lectura mediante endpoints genéricos)
- Para
module_slug=data-management, usa únicamente endpoints externos genéricos:GET /api/v1/external/modules/data-management/collectionsGET /api/v1/external/modules/data-management/data/{collection_name}
- Las pestañas de configuración de solo lectura se exponen en la API externa:
GET /api/v1/external/modules/data-management/settings/tabsGET /api/v1/external/modules/data-management/settings/tab/{tab_key}
filter_valuedebe incluirentity_idcomo JSON, por ejemplo:{"entity_id":123}
Respuesta
{
"success": true,
"message": "",
"data": {
"columns": [],
"rows": [],
"total_items": 0,
"current_page": 1,
"max_pages": 0
}
}
POST /api/v1/external/modules/{module_slug}/data/{collection_name}
Crea un elemento en una colección de módulo usando el endpoint genérico de datos externo.
Lista permitida actual:
lead-management/leads
Payload (lead-management/leads)
{
"company": "Cliente X",
"contact": "Laura Navarro",
"email": "[email protected]",
"phone": "+34 611 234 567",
"industry": "Tecnologia",
"status": "comercial",
"estimated_value": 4200,
"probability": 72,
"source": "web",
"notes": "Cliente interesado en instalar VPS + VPN."
}
Respuesta
{
"success": true,
"message": "common.messages.create.success",
"data": {
"id": 123
}
}
GET /api/v1/external/modules/{module_slug}/data/{collection_name}/contract
Obtiene los metadatos del contrato de creación de una colección.
Parámetros de query
operation(opcional, por defectocreate)
Respuesta (lead-management/leads)
{
"success": true,
"message": "",
"data": {
"module_slug": "lead-management",
"collection_name": "leads",
"operation": "create",
"required_fields": ["company"],
"recommended_fields": ["email", "contact", "notes"],
"optional_fields": ["phone", "industry", "status", "estimated_value", "probability", "source", "assigned_to", "interactions"],
"notes": [
"status accepts aliases and is normalized",
"assigned_to accepts user id or email from same customer"
],
"example": {
"company": "Cliente X",
"contact": "Laura Navarro"
}
}
}
GET /api/v1/external/modules/{module_slug}/actions
Lista las acciones genéricas disponibles de un módulo junto con sus campos obligatorios.
Respuesta (lead-management)
{
"success": true,
"message": "",
"data": {
"module_slug": "lead-management",
"actions": [
{"key": "generate_lead_proposal", "required_fields": ["lead_id"], "optional_fields": ["template_id", "title", "description", "output_format"]},
{"key": "send_lead_proposal", "required_fields": ["lead_id", "mailbox_id", "to_email", "subject", "body"], "optional_fields": ["proposal_url"]},
{"key": "rerun_lead_intelligence", "required_fields": ["lead_id"], "optional_fields": []}
]
}
}
POST /api/v1/external/modules/{module_slug}/actions/{action}
Ejecuta una acción genérica.
Ejemplo de payload (generate_lead_proposal)
{
"lead_id": 123,
"title": "Propuesta tecnica: VPS + VPN",
"description": "Instalacion, hardening y puesta en marcha.",
"output_format": "pdf"
}
Respuesta
{
"success": true,
"message": "lead_management.proposal.generate.success",
"data": {
"lead_id": 123,
"proposal_url": "https://.../proposal.pdf"
}
}
acciones de data-process (consumidas por la CLI uproc applications data-process execute|batch):
execute — en línea, sin límite diario de llamadas en línea (se aplican el saldo y el presupuesto diario):
{ "processor": "check-creditcard-checksum", "params": { "credit_card": "4024007151839544" } }
batch — encola una ejecución en segundo plano sobre una entidad de data-management:
{ "tool": "check-creditcard-checksum", "source_entity_id": 5, "output_name": "Results" }
Las tools de data-process migradas se sirven con la implementación nativa en Python; las no migradas vuelven automáticamente a la plataforma legacy (DATA_PROCESS_TOOLS_MODE=auto). Las respuestas de catálogo y ejecución incluyen execution_mode (native o legacy_bypass).
GET /api/v1/external/profile
Obtiene el perfil del usuario conectado (identificado mediante x-user-email). Consumido por la CLI uproc me get.
Respuesta
{
"success": true,
"message": "User data loaded OK",
"data": { "id": 7, "first_name": "Jane", "last_name": "Doe", "email": "[email protected]", "language": "es", "default_app": "data-process" }
}
PUT /api/v1/external/profile
Actualiza el perfil del usuario conectado (consumido por la CLI uproc me update).
Ejemplo de payload
{ "first_name": "Jane", "language": "en", "default_app": "data-process" }
Respuesta
{ "success": true, "message": "update.success" }
GET /api/v1/external/modules/{module_slug}/tools
Busca en el catálogo de tools de data-process (solo lectura, sin coste). Consumido por la CLI uproc applications data-process search [query].
Respuesta
{
"success": true,
"data": {
"rows": [ { "key": "get-company-by-name", "name": "by-name", "description": "Company by name", "params": [ { "name": "name", "required": true } ] } ],
"total": 1
}
}
GET /api/v1/external/modules/{module_slug}/tools/{tool_key}
Obtiene la especificación completa de una tool de data-process (params con accepted/format, output, cost, extended_description). Consumido por la CLI uproc applications data-process tool <key> y el MCP data-process.tool.
Respuesta
{
"success": true,
"data": {
"key": "get-company-by-name",
"name": "by-name",
"description": "Company by name",
"cost": 80,
"params": [ { "name": "name", "required": true, "ok_sample": "Cyberclick S.L." }, { "name": "country", "required": false, "accepted": ["Afghanistan", "Albania", "..."] } ],
"output": [ { "name": "name" }, { "name": "email" } ]
}
}
PUT /api/v1/external/modules/{module_slug}/data/{collection_name}/{item_id}/status
Cambia el estado de un elemento de una colección de módulo. La transición la valida la facade del módulo (para purchase-invoices: received -> validated -> paid). Consumido por los comandos de CLI purchase-invoices validate|pay.
Ejemplo de payload (purchase-invoices)
{
"status": "paid",
"reason": "bank transfer"
}
Respuesta
{
"success": true,
"message": "common.messages.status.update.success",
"data": {}
}
GET /api/v1/external/modules/{module_slug}/data_domains
Lista los data domains (canales) de un módulo con sus preguntas de ejemplo, localizadas al idioma del usuario. Consumido por el comando de CLI data-chatbot domains.
Respuesta
{
"success": true,
"message": "",
"data": {
"data_domains": [
{
"id": 1,
"name": "Sales",
"sample_queries": [
{"category": "Leads", "type": "count", "text": "How many leads this week?"}
]
}
]
}
}
GET /api/v1/external/modules/{module_slug}/settings/tabs
Lista las pestañas de configuración disponibles de un módulo (solo lectura).
Respuesta
{
"success": true,
"message": "",
"data": {
"tabs": [
{"key": "mailboxes", "source_key": "mailboxes_rows", "items_count": 2}
]
}
}
Curl
curl -s \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
"$UPROC_PROCESSES_API_URL/api/v1/external/modules/data-management/settings/tabs"
GET /api/v1/external/modules/{module_slug}/settings/tab/{tab_key}
Obtiene los valores de una pestaña de configuración (solo lectura).
Respuesta
{
"success": true,
"message": "",
"data": {
"key": "mailboxes",
"source_key": "mailboxes_rows",
"columns": [],
"items": [],
"items_count": 0
}
}
Curl
curl -s \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
"$UPROC_PROCESSES_API_URL/api/v1/external/modules/data-management/settings/tab/mailboxes"
Curl
curl -s \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
"$UPROC_PROCESSES_API_URL/api/v1/external/modules/purchase-invoices/data/invoices?page=1"
POST /api/v1/external/modules/{module_slug}/collections/{collection_name}/inputs/file
Sube un archivo (contenido en Base64) a una colección de módulo.
Payload
{
"file_name": "invoice.pdf",
"content": "JVBERi0xLjQKJ..."
}
Respuesta
{
"success": true,
"message": "",
"data": {}
}
Curl
curl -s -X POST \
-H "Content-Type: application/json" \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
-d '{"file_name":"invoice.pdf","content":"JVBERi0xLjQKJ..."}' \
"$UPROC_PROCESSES_API_URL/api/v1/external/modules/purchase-invoices/collections/invoices/inputs/file"
POST /api/v1/external/modules/{module_slug}/collections/{collection_name}/inputs/webhook
Envía un webhook a una colección de módulo.
Payload
{
"name": "Process Invoice",
"message": "New invoice to process",
"reply_callback": "https://example.com/callback",
"raw": {"invoice_id": "INV-001"}
}
Respuesta
{
"success": true,
"message": "",
"data": {"job_id": 123}
}
Curl
curl -s -X POST \
-H "Content-Type: application/json" \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
-d '{"name":"Process Invoice","message":"New invoice to process","reply_callback":"https://example.com/callback","raw":{"invoice_id":"INV-001"}}' \
"$UPROC_PROCESSES_API_URL/api/v1/external/modules/purchase-invoices/collections/invoices/inputs/webhook"
POST /api/v1/external/public/modules/form-generator/forms/{customer_domain}/{form_slug}/submit
Envía el payload de un formulario público de Form Generator.
Este endpoint lo consume el comando de CLI:
uproc applications module submit-public-form <customer_domain> <form_slug> <payload_json>
Parámetros de ruta
customer_domain: identificador de slug/dominio del customer (por ejemplodemo)form_slug: slug del formulario (por ejemplocontact-form)
Payload
{
"payload": {
"email": "[email protected]",
"country": "ES"
}
}
Respuesta (éxito)
{
"success": true,
"message": "common.messages.create.success",
"data": {
"submission_id": 99,
"job_id": 321
}
}
Respuesta (fallo de validación)
{
"success": false,
"message": "validation.failed",
"data": {
"errors": [
{"field": "email", "reason": "required"},
{"field": "country", "reason": "invalid_value"}
]
}
}
Respuesta (límite de peticiones superado)
{
"success": false,
"message": "rate.limit.exceeded",
"data": {
"limit": 30,
"window": "minute"
}
}
El límite de peticiones se aplica por formulario y por IP del solicitante.
El límite por defecto por IP es de 10 envíos por minuto (clave de configuración: rules.public_rate_limit_per_minute_per_ip).
Los motivos de validación devueltos en data.errors[*].reason pueden incluir:
requiredinvalid_typeinvalid_formatinvalid_valueunknown_fieldmax_length_exceededtoo_many_fieldspayload_too_large
Curl
curl -s -X POST \
-H "Content-Type: application/json" \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
-d '{"payload":{"email":"[email protected]","country":"ES"}}' \
"$UPROC_PROCESSES_API_URL/api/v1/external/public/modules/form-generator/forms/demo/contact-form/submit"
GET /api/v1/external/public/modules/form-generator/forms/{customer_domain}/{form_slug}
Obtiene el esquema del formulario público para renderizado externo.
Parámetros de ruta
customer_domain: identificador de slug/dominio del customer (por ejemplodemo)form_slug: slug del formulario (por ejemplocontact-form)
Respuesta (éxito)
{
"success": true,
"message": "common.messages.item.found",
"data": {
"form": {
"name": "Contact Form",
"slug": "contact-form",
"description": "Collect leads"
},
"fields": [
{
"key": "email",
"label": "Email",
"type": "email",
"required": true,
"position": 1,
"placeholder": "[email protected]",
"help_text": "",
"config": {}
},
{
"key": "country",
"label": "Country",
"type": "select",
"required": false,
"position": 2,
"placeholder": "Select country",
"help_text": "Choose your country",
"config": {
"allowed_values": ["ES", "FR", "IT"],
"max_length": 20
}
}
]
}
}
Flujo de integración externo (renderizado + envío)
async function loadPublicForm(baseUrl, customerDomain, formSlug, headers) {
const response = await fetch(
`${baseUrl}/api/v1/external/public/modules/form-generator/forms/${customerDomain}/${formSlug}`,
{ headers },
)
const data = await response.json()
if (!data.success) throw new Error(data.message)
return data.data
}
async function submitPublicForm(baseUrl, customerDomain, formSlug, payload, headers) {
const response = await fetch(
`${baseUrl}/api/v1/external/public/modules/form-generator/forms/${customerDomain}/${formSlug}/submit`,
{
method: 'POST',
headers: { 'Content-Type': 'application/json', ...headers },
body: JSON.stringify({ payload }),
},
)
const data = await response.json()
if (!data.success && data.message === 'validation.failed') {
return { ok: false, fieldErrors: data.data?.errors || [] }
}
return { ok: data.success, data: data.data, message: data.message }
}
Respuesta (formulario no disponible)
{
"success": false,
"message": "form.public.disabled",
"data": {}
}
Curl
curl -s \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
"$UPROC_PROCESSES_API_URL/api/v1/external/public/modules/form-generator/forms/demo/contact-form"
My Data API
Endpoints para que usuarios externos (proveedores, clientes, candidatos) consulten sus propios datos.
La autenticación es mediante API key de usuario (x-user-api-key), no la key de cliente.
Autenticación
| Header | Descripción | Ejemplo |
|---|---|---|
x-user-api-key | API key del usuario (generada por el admin) | abc-123-def |
Cada usuario ve solo los registros que el admin ha configurado en users.filters.
Sin configuración de filtros, el endpoint devuelve resultados vacíos.
GET /api/v1/my-data/invoices
Consulta facturas de proveedor de purchase-invoices. Filtradas por el NIF del usuario cuando users.filters está configurado con reglas de purchase-invoices.
Curl
curl -s \
-H "x-user-api-key: $USER_API_KEY" \
"$UPROC_PROCESSES_API_URL/api/v1/my-data/invoices"
GET /api/v1/my-data/my-invoices
Consulta facturas de cliente de sales-invoices. Filtradas por el NIF del usuario cuando users.filters está configurado con reglas de sales-invoices.
Curl
curl -s \
-H "x-user-api-key: $USER_API_KEY" \
"$UPROC_PROCESSES_API_URL/api/v1/my-data/my-invoices"
GET /api/v1/my-data/processes
Consulta registros de process-visibility. Filtrados por el NIF del usuario cuando users.filters está configurado con reglas de process-visibility.
Curl
curl -s \
-H "x-user-api-key: $USER_API_KEY" \
"$UPROC_PROCESSES_API_URL/api/v1/my-data/processes"
GET /api/v1/my-data/tickets
Consulta tickets de customer-care. Filtrados por el email del usuario cuando users.filters está configurado con reglas de customer-care.
Curl
curl -s \
-H "x-user-api-key: $USER_API_KEY" \
"$UPROC_PROCESSES_API_URL/api/v1/my-data/tickets"
GET /api/v1/my-data/contracts
Consulta contratos de contract-lifecycle. Filtrados por el NIF del usuario cuando users.filters está configurado con reglas de contract-lifecycle.
Curl
curl -s \
-H "x-user-api-key: $USER_API_KEY" \
"$UPROC_PROCESSES_API_URL/api/v1/my-data/contracts"
GET /api/v1/my-data/debts
Consulta deudas de debt-track. Filtradas por el NIF del usuario cuando users.filters está configurado con reglas de debt-track.
Curl
curl -s \
-H "x-user-api-key: $USER_API_KEY" \
"$UPROC_PROCESSES_API_URL/api/v1/my-data/debts"
GET /api/v1/my-data/orders
Consulta pedidos de order-track. Filtrados por el NIF del usuario cuando users.filters está configurado con reglas de order-track.
Curl
curl -s \
-H "x-user-api-key: $USER_API_KEY" \
"$UPROC_PROCESSES_API_URL/api/v1/my-data/orders"
GET /api/v1/my-data/signing-requests
Consulta solicitudes de firma de document-signing. Filtradas por el email del usuario cuando users.filters está configurado con reglas de document-signing.
Curl
curl -s \
-H "x-user-api-key: $USER_API_KEY" \
"$UPROC_PROCESSES_API_URL/api/v1/my-data/signing-requests"
GET /api/v1/my-data/cases
Consulta casos de case-lifecycle. Filtrados por el NIF del usuario cuando users.filters está configurado con reglas de case-lifecycle.
Curl
curl -s \
-H "x-user-api-key: $USER_API_KEY" \
"$UPROC_PROCESSES_API_URL/api/v1/my-data/cases"
GET /api/v1/my-data/candidates
Consulta candidaturas de candidate-evaluation. Filtradas por el email del usuario cuando users.filters está configurado con reglas de candidate-evaluation.
Curl
curl -s \
-H "x-user-api-key: $USER_API_KEY" \
"$UPROC_PROCESSES_API_URL/api/v1/my-data/candidates"
GET /api/v1/my-data/approvals
Consulta solicitudes de approval-management. Filtradas por el email del usuario cuando users.filters está configurado con reglas de approval-management.
Curl
curl -s \
-H "x-user-api-key: $USER_API_KEY" \
"$UPROC_PROCESSES_API_URL/api/v1/my-data/approvals"
ERP sync y VeriFactu (external)
POST /api/v1/external/modules/data-sync/actions/push_to_erp
Escribe un registro en un ERP usando una credencial ERP almacenada. Consumido por uproc applications sync push-to-erp.
curl -X POST "$UPROC_PROCESSES_API_URL/api/v1/external/modules/data-sync/actions/push_to_erp" \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
-H "Content-Type: application/json" \
-d '{"credential_id":3,"resource":"invoices","operation":"create","item":{"number":"H-1","total":121}}'
POST /api/v1/external/modules/sales-invoices/actions/resubmit_verifactu
Reintenta el registro VeriFactu de una factura. Consumido por uproc applications sales-invoices verifactu resubmit.
POST /api/v1/external/modules/sales-invoices/actions/backfill_verifactu
Registra facturas ya emitidas en la cadena VeriFactu. Consumido por uproc applications sales-invoices verifactu backfill.
GET /api/v1/external/modules/sales-invoices/data/invoices/{invoice_id}/verifactu_xml
Descarga el XML AEAT SF v1.1 generado para una factura. Consumido por uproc applications sales-invoices verifactu xml.
Sesiones de data chatbot
GET /api/v1/external/modules/data-chatbot/sessions
Lista las sesiones del usuario conectado (filtro por source web/cli/mcp y/o channel). Consumido por uproc applications data-chatbot sessions.
curl "$UPROC_PROCESSES_API_URL/api/v1/external/modules/data-chatbot/sessions?source=cli" \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL"
Ejecutar workflow de VeriFactu
POST /api/v1/external/modules/sales-invoices/actions/run_verifactu
Ejecuta ahora el workflow de VeriFactu AEAT. Consumido por uproc applications sales-invoices verifactu run.
curl -X POST "$UPROC_PROCESSES_API_URL/api/v1/external/modules/sales-invoices/actions/run_verifactu" \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
-H "Content-Type: application/json" \
-d '{}'
FileSync
POST /api/v1/external/modules/file-sync/actions/run_transfer
Ejecuta una transferencia FileSync ahora (copia ficheros con sobrescritura). Consumido por uproc applications file-sync run.
curl -X POST "$UPROC_PROCESSES_API_URL/api/v1/external/modules/file-sync/actions/run_transfer" \
-H "x-api-key: $CUSTOMER_API_KEY" \
-H "x-customer-domain: $CUSTOMER_DOMAIN" \
-H "x-user-email: $CUSTOMER_USER_EMAIL" \
-H "Content-Type: application/json" \
-d '{"transfer_id":1}'