Mcp Freematica

io.github.nubiia-devPublished by GitHub account nubiia-devv0.11.2Updated Oct 30, 2026

Freemática ERP: invoicing, receivables, suppliers, accounting and HR through 300+ MCP tools

Overview

AI-generated overview

Read-mostly MCP bridge to the Freemática ERP API, letting an assistant query clients, invoices, contracts, suppliers, receivables and HR data.

What you can do
  • Browse and read customers, contacts, suppliers, business opportunities and master data catalogs
  • Query sales and purchase invoices with their lines, VAT breakdowns and due dates
  • Inspect receivables, payment and delivery locations, and contract headers, services and optionals
  • List articles, prices, assigned materials, employees, calendars and health-surveillance records
  • Optionally create and update contracts, clients, contacts and locations when writes are enabled
When to use it
Useful when an assistant needs to answer questions over a company's Freemática ERP data — invoicing, collections, purchasing, CRM opportunities or contract services — without exporting spreadsheets. It is a good fit for Spanish ERP installations where the five x-auth credentials are already provisioned.
Requirements
Runs locally via npx with Node.js 20 or newer. Requires five credentials passed as environment variables: FREEMATICA_AUTH_APP, FREEMATICA_AUTH_COMPANY, FREEMATICA_AUTH_ORGANIZATION, FREEMATICA_AUTH_SESSION and FREEMATICA_AUTH_TOKEN, obtained out of band from Freemática or an integrator. Network access to the Freemática API host is needed; FREEMATICA_BASE_URL overrides it.
Before you install
The server holds ERP credentials that identify a company, organization and active session; keep them in a secret manager and never commit them. Credentials expire and must be renewed and the process restarted. Writes are off by default; setting FREEMATICA_ENABLE_WRITES=true registers create and update tools that change live business records (no delete tools exist). Business data is sent to the Freemática API host.

Installation

In SourceWeft

  1. Open Mcp Freematica in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

mcp-freematica

[npm version] [license: MIT] [by Nubiia]

MCP server que expone operaciones del API REST de Freemática (ERP: facturación, cartera, proveedores, contabilidad, personal) para ser consumidas por asistentes de IA como Claude.

Built and maintained by Nubiia — automatización e integraciones con IA para negocios (MCP, Holded, Pipedrive y más). ¿Quieres algo así para tu empresa? Escríbenos en nubiia.es.

Stack

  • TypeScript + Node.js ≥20
  • @modelcontextprotocol/sdk (stdio + Streamable HTTP transports)
  • Express + axios + zod
  • pino (logging estructurado)
  • Vitest + nock para tests

Tools expuestas

ToolEndpoint FreemáticaDescripción
freematica_list_articulosGET /part/v1/articulosCatálogo de artículos/materiales/consumibles (referencias, familias, proveedores)
freematica_get_articuloGET /part/v1/articulos/{idreg}Detalle de un artículo
freematica_get_precio_articuloGET /pgrl/v1/precio-articulo/{idreg}Precios de venta de un artículo (PRECIO_VENTA, DESCUENTO, FACTURABLE)
freematica_list_materiales_asignados_serviciosGET /pvss/v2/contratos-servicios-materialLista de material asignado a servicios
freematica_get_master_data(24 endpoints según catalog)Devuelve un catálogo de datos maestros (tipos, geográficos, organizativos, inventario, financiero)
freematica_list_clientesGET /pgrl/v2/clientesLista paginada de clientes
freematica_get_clienteGET /pgrl/v2/clientes/{idReg}Detalle de un cliente
freematica_list_contactos_clientesGET /pgrl/v2/contactos-clientesLista paginada de contactos
freematica_list_oportunidades_negocioGET /pcrm/v2/oportunidades-negocioLista paginada de oportunidades
freematica_get_oportunidad_negocioGET /pcrm/v2/oportunidades-negocio/{idReg}Detalle de oportunidad
freematica_get_oportunidad_negocio_datos_ampliadosGET /pcrm/v2/oportunidades-negocio/{idReg}/datos-ampliadosDatos ampliados (puede 404)
freematica_get_ficha_prev_clienteGET /pprl/v2/ficha-prev-clienteFicha PRL de un cliente
freematica_list_vigilancia_saludGET /pprl/v1/vigilancia-saludLista paginada de registros de Vigilancia de la Salud
freematica_get_vigilancia_saludGET /pprl/v1/vigilancia-salud/{idreg}Detalle de un registro de Vigilancia de la Salud
freematica_list_personalGET /pers/v1/personalLista paginada de personas (RRHH)
freematica_get_personaGET /pers/v2/personal/{idreg}Detalle de una persona
freematica_list_calendariosGET /pgrl/v1/calendariosLista paginada de calendarios laborales
freematica_list_calendario_periodosGET /pgrl/v1/calendarios/{idreg}/periodosPeriodos de un calendario laboral
freematica_list_cartera_clientesGET /pcar/v1/cartera-clientesLista paginada de cartera de clientes (cobros, impagados)
freematica_get_cartera_clienteGET /pcar/v1/cartera-clientes/{idReg}Detalle de un documento de cartera
freematica_list_facturas_cabeceraGET /pven/v1/facturas-cabeceraLista paginada de facturas de ventas (cabecera)
freematica_get_factura_cabeceraGET /pven/v1/facturas-cabecera/{idReg}Detalle de una factura de venta
freematica_list_factura_lineasGET /pven/v1/facturas-cabecera/{idReg}/lineasLíneas de detalle de una factura de venta
freematica_list_factura_ivaGET /pven/v1/facturas-cabecera/{idReg}/ivaLíneas de IVA de una factura de venta
freematica_list_factura_vencimientosGET /pven/v1/facturas-cabecera/{idReg}/vencimientosVencimientos de cobro de una factura de venta
freematica_list_facturas_comprasGET /pcom/v1/facturas-cabeceraLista paginada de facturas de compras
freematica_get_factura_compraGET /pcom/v1/facturas-cabecera/{idReg}Detalle de una factura de compra
freematica_list_proveedoresGET /pgrl/v2/proveedoresLista paginada de proveedores
freematica_get_proveedorGET /pgrl/v2/proveedores/{idReg}Detalle de un proveedor
freematica_list_localizaciones_cobro_clientesGET /pgrl/v2/localizaciones-cobro-clientesLocalizaciones de cobro de clientes (SEPA, domiciliaciones)
freematica_list_localizaciones_pago_proveedoresGET /pgrl/v2/localizaciones-pago-proveedoresLocalizaciones de pago de proveedores
freematica_list_localizaciones_servicio_clientesGET /pgrl/v2/localizaciones-servicio-clientesLocalizaciones de servicio de clientes
freematica_list_cuentas_contablesGET /pcon/v2/cuentasPlan de cuentas contables (COD_CTA, COD_PLAN, etc.)
freematica_list_cuentas_analiticasGET /pcon/v2/cuentas-analiticasCatálogo de cuentas analíticas
freematica_export_asientosGET /pcon/v2/asientosExporta asientos contables de un período (CSV/JSON)
freematica_list_pedidos_compraGET /pcmp/v2/pedidosLista paginada de pedidos de compra (filtros nativos + FIQL + estado enum)
freematica_get_pedido_compraGET /pcmp/v2/pedidos/{idReg}Detalle de un pedido de compra (cabecera + proveedor + líneas)
freematica_list_albaranes_ventasGET /pven/v2/albaranes-ventasLista paginada de albaranes de ventas (filtros todos nativos, empresa requerido)
freematica_get_albaran_ventaGET /pven/v2/albaranes-ventas/{idReg}Detalle de un albarán de venta
freematica_list_albaranes_facturaGET /pven/v2/albaranes-facturasLista paginada de vinculaciones albarán↔factura (idReg nativo + FIQL)
freematica_get_albaran_facturaGET /pven/v2/albaranes-facturas/{idReg}Detalle de una vinculación albarán-factura
freematica_list_resultados_facturacionGET /pvss/v1/facturacion-resultadosResultados del proceso batch de facturación automática de vigilancia (FIQL)
freematica_list_contratosGET /pvss/v1/contratosLista paginada de cabeceras de contratos (solo filtros nativos: el API ignora FIQL aquí)
freematica_get_contratoGET /pvss/v1/contratos (scan)Busca un contrato por empresa + código natural (paginación interna + filtrado en cliente)
freematica_list_servicios_contratoGET /pvss/v1/contratos/{idReg}/serviciosServicios de un contrato
freematica_get_servicio_contratoGET /pvss/v2/contratos-servicios/{idReg}Detalle de un servicio de contrato
freematica_list_contratos_opcionalesGET /ppre/v2/contratos/opcionalesLista paginada de opcionales de contratos
freematica_get_contrato_opcionalesGET /ppre/v2/contratos/opcionales/{idReg}Detalle de un registro de opcionales
freematica_list_localizaciones_envio_clientesGET /pgrl/v2/localizaciones-envio-clientesLocalizaciones de envío de clientes
freematica_list_localizaciones_factura_clientesGET /pgrl/v2/localizaciones-factura-clientesLocalizaciones de factura de clientes

Tools de escritura (requieren FREEMATICA_ENABLE_WRITES=true)

Por defecto el servidor es de solo lectura. Con FREEMATICA_ENABLE_WRITES=true se registran además estas tools de creación y actualización. No existe ninguna tool de borrado. Todas las escrituras dejan log de auditoría (operación + endpoint + campos a nivel info; body completo a nivel debug).

ToolEndpoint FreemáticaDescripción
freematica_create_contratoPOST /pvss/v2/contratosAlta de cabecera de contrato
freematica_update_contratoPUT /pvss/v2/contratos/{idReg}Actualización de cabecera de contrato
freematica_create_servicio_contratoPOST /pvss/v2/contratos/{idReg}/serviciosAlta de servicio (identificación derivada del idReg)
freematica_update_servicio_fechasPUT /pvss/v2/contratos/{id}/servicio/{id}Fechas inicio/fin del servicio (mecanismo de baja)
freematica_create_servicio_historico_preciosPOST /pvss/v2/contratos/{id}/servicios-historico-precios/{id}Alta de revisión de precios del servicio
freematica_update_servicio_historico_preciosPUT /pvss/v2/contratos/{id}/servicios-historico-precios/{id}Actualización de revisión de precios
freematica_create_servicio_facturacion_txtPOST /pvss/v2/contratos/{id}/servicios-facturacion-txt/{id}Alta de línea de texto de facturación
freematica_update_servicio_facturacionPUT /pvss/v2/contratos/{id}/servicios-facturacion/{id}Datos de facturación del servicio (precios hora, forma de pago…)
freematica_create_contrato_opcionalesPOST /ppre/v2/contratos/opcionalesAlta de opcionales de contrato
freematica_update_contrato_opcionalesPUT /ppre/v2/contratos/opcionales/{idReg}Actualización de opcionales de contrato
freematica_create_clientePOST /pgrl/v2/clientesAlta de cliente (idReg derivado de grupo+código)
freematica_update_clientePUT /pgrl/v2/clientes/{idReg}Actualización parcial de cliente (fetch+merge)
freematica_create_contacto_clientePOST /pgrl/v2/contactos-clientesAlta de contacto de cliente
freematica_update_contacto_clientePUT /pgrl/v2/contactos-clientes/{idReg}Actualización parcial de contacto (fetch+merge)
freematica_create_localizacion_clientePOST /pgrl/v2/localizaciones-{tipo}-clientesAlta de localización (tipo: cobro/envio/factura/servicio)
freematica_update_localizacion_clientePUT /pgrl/v2/localizaciones-{tipo}-clientes/{idReg}Actualización parcial de localización (fetch+merge)

Filtros tipados (FIQL interno)

El MCP expone parámetros tipados con zod al consumidor (Claude/LLM). Internamente, el cliente los traduce a sintaxis FIQL antes de llamar al API de Freemática. El consumidor nunca ve ni escribe FIQL.

Ejemplo

typescript
// El LLM llama:freematica_list_cartera_clientes({  empresa: '0001',  fechaDocDesde: '2026-01-01',  estado: 'pendiente',});
// El MCP construye internamente (valores siempre entre comillas simples):// rquery=CARCL_EMP=='0001';CARCL_FECDOC=ge='2026-01-01';CARCL_SITCAR=='1'

Ventajas del patrón

  • El LLM solo necesita conocer los parámetros tipados con nombres semánticos en español.
  • La complejidad de la sintaxis FIQL queda encapsulada en el adapter interno (src/clients/fiql-builder.ts).
  • Los errores de validación son claros: "empresa debe ser string", no "FIQL parse error".
  • Los filtros booleanos (soloImpagados: true) se traducen automáticamente al operador FIQL correcto.

Más ejemplos

typescript
// Facturas pendientes de traspaso a contabilidad:freematica_list_facturas_cabecera({  empresa: '0001',  traspasadoContabilidad: false,});// → rquery=FVC_CODEMP=='0001';FVC_TRASP_CONTAB=='0'
// Proveedor por nombre EXACTO (el API no soporta búsqueda parcial: =lk=// responde 400 y los wildcards % devuelven 0 resultados). El filtro activo// de proveedores post-filtra las bajas en cliente (FIQL no tiene IS NULL):freematica_list_proveedores({  nombre: 'LEJIAS PONS S.A.',  activo: true,});// → rquery=NOMBRE_PRO=='LEJIAS PONS S.A.'

Modos de transporte

El binario soporta dos transportes seleccionables. La selección sigue este orden de precedencia:

  1. CLI flag: --transport=<modo>
  2. Variable de entorno: MCP_TRANSPORT=<modo>
  3. Default: stdio
ModoCuándo usarComando
stdioClaude Desktop, Claude Code, ejecución localmcp-freematica (default) o mcp-freematica --transport=stdio
httpNubiia, deploy como servicio webmcp-freematica --transport=http o MCP_TRANSPORT=http mcp-freematica

Configurar en Claude Desktop (stdio)

Edita ~/Library/Application Support/Claude/claude_desktop_config.json:

json
{  "mcpServers": {    "freematica": {      "command": "npx",      "args": ["-y", "@nubiia/mcp-freematica"],      "env": {        "FREEMATICA_AUTH_TOKEN": "...",        "FREEMATICA_AUTH_COMPANY": "...",        "FREEMATICA_AUTH_ORGANIZATION": "...",        "FREEMATICA_AUTH_APP": "...",        "FREEMATICA_AUTH_SESSION": "..."      }    }  }}

Reinicia Claude Desktop y las tools de freematica_* aparecerán disponibles.

Configurar en Claude Code (stdio)

bash
claude mcp add freematica npx -y @nubiia/mcp-freematica \  -e FREEMATICA_AUTH_TOKEN=... \  -e FREEMATICA_AUTH_COMPANY=... \  -e FREEMATICA_AUTH_ORGANIZATION=... \  -e FREEMATICA_AUTH_APP=... \  -e FREEMATICA_AUTH_SESSION=...

Configurar en Nubiia (HTTP)

Setear MCP_TRANSPORT=http en las variables de entorno del proceso, junto a las 5 FREEMATICA_AUTH_*. Resto de variables (puerto, origins) opcionales — ver tabla en "Configuración avanzada".

Datos maestros disponibles

La tool freematica_get_master_data acepta un parámetro catalog con uno de los 24 valores siguientes. Cada uno mapea a un endpoint específico de Freemática.

catalogEndpoint FreemáticaContenido
Tipos / clasificaciones
tipos-contratoGET /ppre/v2/tipos-contratoTipos de contrato comercial
tipo-instalacionGET /ppre/v1/tipo-instalacionTipos de instalación física
clases-serviciosGET /pvss/v1/clases-serviciosClases de servicio operativas
tipos-casosGET /pcrm/v2/tipos-casosTipos de caso CRM
subtipos-casosGET /pcrm/v2/subtipos-casosSubtipos de caso CRM
tipos-oportunidad-negocioGET /pcrm/v2/tipos-oportunidad-negocioTipos de oportunidad comercial
tipos-impuestosGET /pgrl/v2/tipos-impuestosIVA, IRPF, retenciones
naturalezas-abonoGET /pven/v1/naturalezas-abonoNaturalezas de abono comercial
incidencecodeGET /pvss/v2/incidencecodeCódigos de incidencia en servicios
claves-facturacionGET /pvss/v2/claves-facturacionClaves de facturación de servicios
Geográficos
paisesGET /pgrl/v1/paisesPaíses
nacionalidadesGET /pgrl/v1/nacionalidadesNacionalidades
provinciasGET /pgrl/v1/provinciasProvincias
poblacionesGET /pgrl/v2/poblacionesMunicipios
Organizativos
empresasGET /pgrl/v1/empresasEmpresas
delegacionesGET /pgrl/v1/delegaciones/agrupcodDelegaciones (listado global)
lineas-negocioGET /pgrl/v2/lineas-negocioLíneas de negocio
cargos-clientesGET /pgrl/v2/cargos-clientesCargos de contactos
calendariosGET /pgrl/v1/calendariosCalendarios laborales
seriesGET /pgrl/v2/seriesSeries de numeración de documentos
Inventario
familiasGET /part/v1/familiasFamilias de artículos
subfamiliasGET /part/v1/subfamiliasSubfamilias
lineasGET /part/v1/lineasLíneas de artículos
Financiero
bancosGET /pgrl/v2/bancosEntidades bancarias

Respuesta: { catalog, items, count, total }. Patrón típico de uso: llamar primero al catálogo correspondiente cuando otra tool devuelva IDs crípticos para resolverlos a nombres humanos.

Paginación

Todas las tools freematica_list_* aceptan dos parámetros opcionales:

  • page (int, ≥1, default 1): página a recuperar, 1-indexed.
  • items (int, 1..50, default 20): items por página.

La respuesta incluye siempre total (total de elementos en el dataset) para que el LLM pueda iterar páginas.

El parámetro está bloqueado en page >= 1 porque el API real de Freemática trata page=0 como "devuelve TODO el dataset" (varios MB en endpoints grandes como clientes). Verificado empíricamente.

IDs opacos en endpoints de detalle

Las tools freematica_get_* requieren un id que NO es el código natural (COD_CLI, ID_OPORTUNIDAD) sino el campo idReg que aparece en los items del listado correspondiente. Es un string opaco base64 como MV9fMTAwMA==.

Si pasas un código natural, el API responde not_found.

Patrón típico de uso desde el LLM:

  1. freematica_list_clientes(page=1, items=20) → encontrar el cliente que interesa.
  2. Tomar el campo idReg de ese item.
  3. freematica_get_cliente(id="<idReg>") → detalle completo.

Configuración

El servidor lee toda su configuración de variables de entorno al arrancar. Si falta alguna obligatoria, el proceso muere con un mensaje claro listando qué falta — no acepta requests hasta que la configuración sea válida.

Variables de entorno obligatorias

VariableDescripción
FREEMATICA_AUTH_TOKENHeader x-auth-token para autenticar con la API de Freemática.
FREEMATICA_AUTH_COMPANYHeader x-auth-company. Identifica la empresa dentro del API.
FREEMATICA_AUTH_ORGANIZATIONHeader x-auth-organization. Identifica la organización.
FREEMATICA_AUTH_APPHeader x-auth-app. Identifica la aplicación que consume (p.ej. pvss).
FREEMATICA_AUTH_SESSIONHeader x-auth-session. Identifica la sesión activa.

Configuración avanzada

Variables de entorno opcionales para tuning de comportamiento en producción:

VariableDefaultDescripción
FREEMATICA_BASE_URLhttps://api-p01.clientservicepanel.com/restsat/apiBase URL del API de Freemática. Cambiar solo si Freemática cambia el host o se usa un entorno alternativo.
FREEMATICA_TIMEOUT_MS30000Timeout por petición en milisegundos. Si el upstream no responde en este tiempo, el request se cancela con network_error.
FREEMATICA_MAX_RETRIES3Número máximo de reintentos para errores 5xx y errores de red. Los errores 4xx nunca se reintentan.
FREEMATICA_CIRCUIT_BREAKER_THRESHOLD5Número de operaciones lógicas fallidas consecutivas (post-retry-exhaustion) necesarias para abrir el circuit breaker.
FREEMATICA_CIRCUIT_BREAKER_TIMEOUT_MS30000Tiempo en ms que el circuit breaker permanece abierto antes de pasar a half-open.
FREEMATICA_MAX_RESPONSE_SIZE_MB10Tamaño máximo de respuesta aceptada del upstream en MB. Respuestas mayores se truncan con aviso en el campo truncated.
FREEMATICA_ENABLE_WRITESfalseRegistra las tools de escritura (freematica_create_* / freematica_update_*). Sin ella el servidor es de solo lectura. Valores: true/false/1/0.
MCP_TRANSPORTstdioTransporte: stdio (para Claude Desktop/Code) o http (para Nubiia). Equivale al flag --transport=.
MCP_PORT3000Puerto TCP donde el servidor MCP expone /mcp y /health. Ignorado en modo stdio.
MCP_ALLOWED_ORIGINS*CORS: lista de orígenes permitidos separados por coma, o * para todos. En producción restringir al dominio de Nubiia. Ignorado en modo stdio.
LOG_LEVELinfoNivel de log para pino: fatal, error, warn, info, debug, trace. En producción usar info. En desarrollo usar debug.

De dónde salen las credenciales x-auth-*

Las 5 credenciales x-auth-* son preexistentes — el Postman collection de Freemática no expone un endpoint de login, así que estas credenciales se obtienen fuera de banda (típicamente por el departamento de IT de Freemática o tu integrador).

  • Pide los 5 valores al responsable técnico de Freemática (o recupéralos de tu gestor de secretos si ya están provisionados).
  • NO comitees credenciales reales. El repositorio tiene .env.* en .gitignore (excepto .env.example).
  • Si las credenciales caducan, el MCP devolverá invalid_token en todas las llamadas. Renovarlas implica reiniciar el proceso (no hay refresh automático).

Configuración en Nubiia (producción)

Nubiia despliega el servidor MCP y se encarga de inyectar las variables de entorno. En el panel de Nubiia:

  1. Crea un MCP server apuntando a la URL del contenedor desplegado (por ejemplo https://freematica-mcp.example.com/mcp).
  2. Añade las variables de entorno listadas arriba en la sección de secretos.
  3. Recomendado: setear MCP_ALLOWED_ORIGINS al dominio exacto desde el que Claude/Nubiia conecta, no *.
  4. Verifica con el endpoint GET /health que el servidor está vivo antes de habilitar el MCP en Claude.

Configuración local (desarrollo)

Para desarrollo local crea un .env (o .env.local) en la raíz:

bash
cp .env.example .env# Edita .env y rellena los 5 FREEMATICA_AUTH_*

Luego arranca con:

bash
set -a; source .env; set +anpm run dev

O todo en una línea:

bash
node --env-file=.env --import tsx src/index.ts

Verificación de la configuración

  1. Sin env vars — el proceso debe morir inmediatamente con un mensaje listando las 5 variables que faltan:

    bash
    node dist/index.js# [freematica-mcp] FATAL: Invalid configuration:#   - FREEMATICA_AUTH_TOKEN: Required#   - FREEMATICA_AUTH_COMPANY: Required#   ...
  2. Con env vars válidas (modo HTTP) — arranca con MCP_TRANSPORT=http y el proceso queda escuchando; /health devuelve { "status": "ok", "version": "0.5.0", "sessions": 0 }:

    bash
    MCP_TRANSPORT=http node dist/index.js &curl http://localhost:3000/health

    En modo stdio (default) no hay endpoints HTTP — el server escucha JSON-RPC por stdin/stdout.

Troubleshooting

invalid_token en todas las llamadas

Las credenciales x-auth-* han caducado o son incorrectas. Pasos:

  1. Verificar que las 5 variables FREEMATICA_AUTH_* están seteadas correctamente.
  2. Contactar al responsable técnico de Freemática para renovar el token/sesión.
  3. Reiniciar el proceso del MCP tras actualizar las variables (el cliente no refresca credenciales en caliente).

network_error — upstream Freemática caído

El API de Freemática no está respondiendo. Puede ser:

  • Mantenimiento programado del upstream.
  • Circuit breaker activo tras varios fallos consecutivos (ver logs: Circuit breaker opened).
  • Problema de red entre el servidor y api-p01.clientservicepanel.com.

Pasos:

  1. Verificar en los logs si hay circuitBreaker: "open" — si es así, esperar FREEMATICA_CIRCUIT_BREAKER_TIMEOUT_MS ms (default 30s) para que pase a half-open.
  2. Verificar conectividad al upstream: curl https://api-p01.clientservicepanel.com/.
  3. Aumentar FREEMATICA_TIMEOUT_MS si el upstream es lento (default 30s puede ser insuficiente en algunas redes).

rate_limit_exceeded — throttling de Freemática

Freemática devuelve 429. El MCP reintenta automáticamente honrando el header Retry-After si está presente. Si el problema persiste:

  1. Reducir la frecuencia de llamadas desde Claude.
  2. Aumentar FREEMATICA_MAX_RETRIES (default 3) si los reintentos no son suficientes.
  3. Contactar a Freemática para revisar los límites de rate asignados a la cuenta.

Response truncated en freematica_export_asientos

El endpoint de exportación de asientos devuelve demasiados registros para un rango de fechas amplio. Pasos:

  1. Usar un rango de fechas más corto: en lugar de un trimestre, exportar mes a mes.
  2. Añadir filtros adicionales: filtrar por empresa, delegación o cuenta específica.
  3. Si el volumen esperado es grande por diseño, aumentar FREEMATICA_MAX_RESPONSE_SIZE_MB (default 10 MB).

El pre-commit hook falla al hacer git commit

Lint o formato detectaron errores en los ficheros staged. Pasos:

  1. Revisar el output del hook: indicará qué fichero y qué regla falló.
  2. Ejecutar npm run lint:fix y npm run format para corregir automáticamente.
  3. Hacer git add de los ficheros corregidos antes de volver a intentar el commit.

Desarrollo

bash
npm installnpm run dev           # arranca con tsx (hot reload)npm test              # ejecuta vitest una veznpm run test:watch    # watchernpm run test:coverage # coverage reportnpm run lintnpm run lint:fixnpm run formatnpm run typechecknpm run build         # compila a dist/npm start             # ejecuta dist/index.js

Testing

Tests unitarios e integración

bash
# Ejecutar todos los testsnpm test
# Ejecutar con coverage reportnpm test -- --coverage
# Ejecutar un archivo concretonpm test -- tests/fiql-builder.property.test.ts

Los tests están en tests/ organizados por tipo:

  • tests/clients/ — tests de los clientes HTTP (con nock)
  • tests/schemas/ — tests de los schemas Zod
  • tests/tools/ — tests de los handlers MCP (unit + integration)
  • tests/fiql-builder.*.test.ts — tests unitarios y property-based del FIQL builder
  • tests/pagination-edge-cases.test.ts — edge cases del adapter de paginación
  • tests/coverage-gaps.test.ts — cobertura específica de ramas no cubiertas

Coverage thresholds (configurados en vitest.config.ts):

  • Global statements: ≥85%
  • src/clients/: ≥90%
  • src/schemas/: ≥90%
  • src/tools/: ≥85%

Testing manual con MCP Inspector

Para probar el servidor MCP de forma interactiva, usa MCP Inspector.

Ver instrucciones detalladas en docs/testing-e2e.md.

Endpoints HTTP

MétodoPathDescripción
POST/mcpJSON-RPC del MCP (envía initialize la primera vez)
GET/mcpStream SSE (requiere Mcp-Session-Id)
DELETE/mcpTerminar sesión
GET/healthHealthcheck

Seguridad

[!IMPORTANT] El endpoint /mcp no autentica al cliente. Cualquiera con acceso de red al puerto puede invocar las tools usando las credenciales de Freemática que el servidor tiene configuradas en sus variables de entorno. Como todas las tools son de solo lectura, esto equivale a acceso de lectura a los datos de la empresa (cartera, facturación, clientes, personal…).

Por tanto, al desplegar en modo HTTP:

  • Nunca expongas el puerto directamente a internet. Despliega siempre detrás de un gateway / reverse-proxy que haga la autenticación y autorización del cliente (es el modelo con el que opera Nubiia).
  • Restringe MCP_ALLOWED_ORIGINS al dominio exacto desde el que se conecta, en lugar del valor por defecto *. Si arrancas con *, el servidor emite un warning en el log. Ten en cuenta que CORS solo protege frente a navegadores; no frente a clientes como curl.
  • Trata las 5 credenciales FREEMATICA_AUTH_* como secretos. Inyéctalas vía gestor de secretos, nunca en el repositorio (.env* está en .gitignore).

Buenas prácticas ya incluidas en el servidor:

  • Los headers x-auth-* se eliminan de cualquier log (incluido debug/trace) y los bodies de petición nunca se loguean.
  • Rate limiting (120 req/min por IP) en /mcp y /health, límite de body de 1 MB, y expiración automática de sesiones inactivas.
  • Los valores de los filtros FIQL se escapan para prevenir inyección de operadores de consulta.

Cómo añadir una nueva operación

  1. Tipar la respuesta en src/types/<grupo>.ts.
  2. Añadir método al FreematicaClient (src/clients/freematica-client.ts):
    ts
    getContratosServicios(): Promise<VoContratosServicios[]> {  return this.get<VoContratosServicios[]>('/pvss/v1/contratos-servicios');}
  3. Añadir server.tool(...) en src/tools/<grupo>.ts (o crear el archivo si el grupo es nuevo).
  4. Si el grupo es nuevo: registrar register<Grupo>Tools(server, client) en src/server.ts.
  5. Tests: un test del método del client (con nock) + un test del handler de la tool.

Patrón inspirado en mcp-nevent y mcp-holded.

Despliegue

Pensado para ejecutarse dentro de Nubiia. La plataforma se encarga del deploy y de inyectar las variables de entorno. Tienes 3 opciones:

Opción 1 — Instalar como paquete npm (recomendada)

El paquete se publica como @nubiia/mcp-freematica en el registry público de npm cuando se crea un tag v* en main.

bash
# Instalar y ejecutar (no requiere autenticación)npm install -g @nubiia/mcp-freematicamcp-freematica   # binario instalado, lee env vars y arranca el server

Opción 2 — Docker

bash
docker build -t mcp-freematica .docker run --env-file .env -p 3000:3000 mcp-freematica

Opción 3 — Clone + build

bash
git clone https://github.com/nubiia-dev/mcp-freematica.gitcd mcp-freematicanpm ci && npm run buildnode dist/index.js

Publicar una nueva versión

  1. Bump de versión en package.json (semver).
  2. Commit + merge a main.
  3. Crear y empujar un tag con prefijo v:
    bash
    git tag v0.5.0git push origin v0.5.0
  4. El workflow .github/workflows/publish.yml se dispara, valida (lint + typecheck + test + build) y publica en npm.

Especificaciones y diseño

  • v0.1.0 spec: docs/superpowers/specs/2026-05-18-freematica-mcp-design.md (bootstrap inicial)
  • v0.1.0 plan: docs/superpowers/plans/2026-05-18-freematica-mcp.md
  • v0.2.0 spec: docs/superpowers/specs/2026-05-19-stdio-transport-design.md (stdio support)
  • v0.2.0 plan: docs/superpowers/plans/2026-05-19-stdio-transport.md
  • v0.3.0 spec: docs/superpowers/specs/2026-05-19-master-data-tool-design.md (master data tool)
  • v0.3.0 plan: docs/superpowers/plans/2026-05-19-master-data-tool.md
  • v0.4.0 spec: docs/superpowers/specs/2026-05-20-commercial-tools-design.md (commercial tools + envelope unwrap fix)
  • v0.4.0 plan: docs/superpowers/plans/2026-05-20-commercial-tools.md
  • v0.4.1: hotfix de catálogos delegaciones (endpoint cambiado a /agrupcod) y tipos-marcajes (eliminado — endpoint roto). Ver CHANGELOG.
  • ADRs de arquitectura: docs/adr/ (ver índice en ese directorio)
  • API: apidocs/Freematica API - Complete Collection.postman_collection.json
  • CHANGELOG: CHANGELOG.md

About Nubiia

This MCP server is built and maintained by Nubiia.

Nubiia ayuda a empresas a automatizar procesos e integrar sus herramientas con IA: servidores MCP a medida, integraciones con ERPs y CRMs (Freemática, Holded, Pipedrive…), y agentes que conectan tus datos de negocio con asistentes como Claude. Este @nubiia/mcp-freematica es un ejemplo open source de lo que hacemos.

👉 ¿Quieres una integración o automatización con IA para tu negocio? nubiia.es · ✉️ [email protected]

Author

Built by Nubiia — nubiia.es · [email protected]

Maintainer: Samuel Fraga — GitHub

Links

Licencia

MIT — ver LICENSE.

Source: README.md at commit 04d8883

Tools

200

freematica_list_materiales_asignados_servicios

Devuelve la lista completa de material asignado a servicios. Endpoint: GET /pvss/v2/contratos-servicios-material (Freemática API). Tipo de respuesta: VoContratosServMatAsignado[]. Esta operación no acepta parámetros: siempre devuelve la lista entera para la organización autenticada. La respuesta es un objeto con dos campos: - items: array de objetos VoContratosServMatAsignado - count: número total de elementos

Takes no parameters.

freematica_list_contratos

Devuelve la lista paginada de cabeceras de contratos (módulo Contratos y Servicios). Endpoint: GET /pvss/v1/contratos. Cada item tiene campos CTRT_* (CTRT_EMP, CTRT_DELEG, CTRT_COD, CTRT_DES, CTRT_FECHA, CTRT_COD_CLI, dirección, CTRT_ABIERTO…) más `idReg` opaco (Base64 "EMP__DELEG__COD") que se usa en el resto de tools de contratos. Filtros disponibles: SOLO empresa y delegacion (params nativos del API). AVISO: el API ignora silenciosamente los filtros FIQL en este endpoint; para localizar un contrato concreto usa freematica_get_contrato.

Parameterspageitemsorderempresadelegacion

freematica_get_contrato

Busca una cabecera de contrato por sus códigos naturales (empresa + código de contrato, opcionalmente delegación). No existe endpoint singular en el API y el listado ignora los filtros FIQL, así que esta tool pagina el listado internamente (200 items por página) y filtra en cliente. Puede requerir varias llamadas al API en datasets grandes. Devuelve not_found si no hay coincidencia.

ParametersempresarequireddelegacioncodContratorequired

freematica_list_servicios_contrato

Devuelve la lista paginada de servicios de un contrato. Endpoint: GET /pvss/v1/contratos/{idContrato}/servicios. Cada item tiene campos CTRTS_* (CTRTS_COD, CTRTS_DES, CTRTS_TIPO, CTRTS_FECALTA, CTRTS_FECFIN, CTRTS_CLASE…) más `idReg` opaco (Base64 "EMP__DELEG__CTRT__COD") que se usa en las tools de escritura.

ParameterspageitemsorderidContratorequired

freematica_get_servicio_contrato

Devuelve el detalle de un servicio de contrato. Endpoint: GET /pvss/v2/contratos-servicios/{idreg}. `idReg` es el identificador opaco del servicio (campo "idReg" en los items de freematica_list_servicios_contrato).

ParametersidRegrequired

freematica_list_contratos_opcionales

Devuelve la lista paginada de registros de opcionales de contratos (módulo Presupuestos y Contratos, ppre). Endpoint: GET /ppre/v2/contratos/opcionales. Cada item tiene campos CON2_* (10 numéricos y 10 alfanuméricos de propósito libre, descuentos, garantías, observaciones) más `idReg` opaco para el resto de tools de opcionales.

Parameterspageitemsorder

freematica_get_contrato_opcionales

Devuelve el detalle de un registro de opcionales de contrato. Endpoint: GET /ppre/v2/contratos/opcionales/{idReg}. `idReg` es el identificador opaco (campo "idReg" en los items de freematica_list_contratos_opcionales).

ParametersidRegrequired

freematica_get_master_data

Devuelve un catálogo de datos maestros de Freemática (tipos, geográficos, organizativos, inventario, financiero). Catálogos disponibles (24): tipos-contrato (tipos de contrato comercial), tipo-instalacion (tipos de instalación física), clases-servicios (clases de servicio operativas), tipos-casos (CRM), subtipos-casos (CRM), tipos-oportunidad-negocio (CRM), tipos-impuestos (IVA, IRPF, retenciones), naturalezas-abono, incidencecode (códigos de incidencia en servicios), claves-facturacion (claves de facturación de servicios), paises, nacionalidades, provincias, poblaciones (municipios — dataset grande, paginar con cuidado), empresas, delegaciones (agrupadas por código — listado global), lineas-negocio, cargos-clientes (puestos de contactos), calendarios (calendarios laborales — solo lookup; para detalle y períodos usar freematica_list_calendarios), series (series de numeración de documentos), familias (de artículos), subfamilias, lineas (líneas de artículos), bancos (entidades bancarias). Útil para traducir códigos crípticos en respuestas de otras tools (por ejemplo, los IDs de tipo de contrato o clase de servicio que aparecen en freematica_list_materiales_asignados_servicios). La respuesta es un objeto con tres campos: - catalog: el catálogo solicitado (echo del input) - items: array de objetos con los registros del catálogo - count: número total de elementos

Parameterscatalogrequired

freematica_list_clientes

Devuelve la lista paginada de clientes de Freemática. Cada item tiene ~87 campos (COD_CLI, NOMBRE_CLI, NIF, FECHA_ALTA, etc.) más un campo `idReg` opaco (base64) que se usa para el endpoint singular `freematica_get_cliente`. Paginación 1-indexed: la primera página es page=1. Devuelve también `total` con el total de clientes en el dataset.

Parameterspageitems

freematica_get_cliente

Devuelve el detalle completo de un cliente. El parámetro `id` DEBE ser el campo `idReg` (string opaco base64) que aparece en los items de freematica_list_clientes. NO usar COD_CLI ni otro código natural — el API devuelve not_found.

Parametersidrequired

freematica_list_clientes_v1

Devuelve la lista paginada de clientes usando el endpoint v1 de Freemática. Versión v1 del endpoint. Generalmente preferir freematica_list_clientes (v2) para datos más completos. Paginación 1-indexed.

Parameterspageitems

freematica_get_cliente_v1

Devuelve el detalle de un cliente usando el endpoint v1 de Freemática. Versión v1 del endpoint. Generalmente preferir freematica_get_cliente (v2) para datos más completos.

ParametersidRegrequired

freematica_list_contactos_clientes

Devuelve la lista paginada de contactos de clientes (personas asociadas a clientes corporativos). Cada item incluye un campo `idReg` opaco (base64) que se usa en freematica_update_contacto_cliente. Paginación 1-indexed.

Parameterspageitems

freematica_list_contactos_clientes_v1

Devuelve la lista paginada de contactos de clientes usando el endpoint v1 de Freemática. Paginación 1-indexed.

Parameterspageitems

freematica_get_contacto_cliente

Devuelve el detalle de un contacto de cliente por su `idReg`. El `idReg` sale de freematica_list_contactos_clientes.

ParametersidRegrequired

freematica_list_oportunidades_negocio

Devuelve la lista paginada de oportunidades de negocio (CRM). Cada item tiene ~33 campos: COD_CLI (id del cliente), COD_ESTADO_OPOR, COD_ETAPA_OPOR, NOMBRE, VALOR, ID_OPORTUNIDAD, FECHA, FECHA_CREACION, USU_ASIGNADO, etc. Más `idReg` opaco para el endpoint singular. Paginación 1-indexed.

Parameterspageitems

freematica_get_oportunidad_negocio

Devuelve el detalle de una oportunidad de negocio. El parámetro `id` DEBE ser el `idReg` opaco que aparece en los items de freematica_list_oportunidades_negocio.

Parametersidrequired

freematica_get_oportunidad_negocio_datos_ampliados

Devuelve los datos ampliados de una oportunidad de negocio. NOTA: Este endpoint puede devolver `not_found` si la oportunidad no tiene datos ampliados configurados. Es un caso esperado, no un error de software — explicarle al usuario que esa oportunidad no tiene info adicional. El parámetro `id` DEBE ser el `idReg` opaco (mismo que en get_oportunidad_negocio).

Parametersidrequired

freematica_list_cartera_clientes

Devuelve la lista paginada de documentos de cartera de clientes (cobros, efectos, impagados). Útil para analizar el estado de cobros: deudas pendientes, impagados, vencimientos próximos. Cada item contiene ~40 campos: CARCL_CODAUX (código cliente), CARCL_IMPCOB (importe cobrado), CARCL_IMPPEN (importe pendiente), CARCL_FECDOC (fecha documento), CARCL_FECVCTO (fecha vencimiento), CARCL_SITCAR (estado: 1=pendiente, 2=cancelado, 3=derivado), CARCL_FECIMPAG (fecha impago, null si no hay) más un campo `idReg` opaco (base64) para `freematica_get_cartera_cliente`. Filtros disponibles: - empresa, codCliente, grupoCliente, representante, formaPago, modoPago - fechaDocDesde O fechaDocHasta (excluyentes: el API no soporta ambos a la vez) - fechaVencimientoDesde (no existe fecha fin: el API la ignora) - estado: "pendiente" | "cancelado" | "derivado" - soloImpagados: true → solo documentos con impago registrado (CARCL_FECIMPAG no nulo) - referencia: referencia exacta del documento (CARCL_REFCAR) Paginación 1-indexed. Default: page=1, items=20.

ParameterspageitemsestadoempresamodoPagoformaPagocodClientereferenciagrupoClientefechaDocDesdefechaDocHastarepresentante+2 more

freematica_get_cartera_cliente

Devuelve el detalle completo de un documento de cartera de clientes. El parámetro `id` DEBE ser el campo `idReg` (string opaco base64) que aparece en los items de freematica_list_cartera_clientes. NO usar CARCL_CODAUX ni otro código natural.

Parametersidrequired

freematica_list_facturas_cabecera

Devuelve la lista paginada de cabeceras de facturas de ventas. Cada item contiene ~70 campos: FVC_NUMFRA (número factura), FVC_SERIEFRA (serie), FVC_CODCLI (cliente), FVC_FCHFAC (fecha factura), FVC_BASEIVA_DV (base), FVC_TOTFRA_DV (total factura), FVC_TRASP_CONTAB (traspasado a contabilidad), FVC_DELEG (delegación), más `idReg` opaco para el endpoint singular. Filtros disponibles: - empresa, codCliente, representante - fechaFacturaDesde O fechaFacturaHasta (EXCLUYENTES: el API devuelve 0 filas si se combinan; usa solo uno por consulta) - serie, numFactura (número exacto) - formaPago, delegacion - traspasadoContabilidad: true → solo facturas ya traspasadas a contabilidad Paginación 1-indexed. Default: page=1, items=20.

ParameterspageitemsserieempresaformaPagocodClientedelegacionnumFacturarepresentantefechaFacturaDesdefechaFacturaHastatraspasadoContabilidad

freematica_get_factura_cabecera

Devuelve el detalle completo de una factura de ventas (cabecera). El parámetro `id` DEBE ser el campo `idReg` (string opaco base64) que aparece en los items de freematica_list_facturas_cabecera. NO usar FVC_NUMFRA ni FVC_SERIEFRA.

Parametersidrequired

freematica_list_factura_lineas

Devuelve las líneas de detalle de una factura de ventas. Requiere el `idFactura` (idReg opaco) de la factura cabecera. Cada línea contiene: FVL_CODARTIC (artículo), FVL_DESCRIP (descripción), FVL_IMPORTE (importe línea), FVL_IMP_IVA (IVA), FVL_COD_FAMILIA, FVL_COD_SUBFAM, FVL_DELEG. Filtros disponibles: codArticulo, codFamilia, codSubfamilia, delegacion.

ParameterspageitemsidFacturarequiredcodFamiliadelegacioncodArticulocodSubfamilia

freematica_list_factura_iva

Devuelve las líneas de IVA de una factura de ventas. Requiere el `idFactura` (idReg opaco) de la factura cabecera. Cada línea contiene: FVI_TIPO_IVA (tipo IVA), FVI_POR_IVA_DV (%), FVI_IMPBRUT_DV (base imponible), FVI_IMPDTO_DV (descuento) y demás importes FVI_*. Filtro disponible: tipoIva (FVI_TIPO_IVA exacto).

ParameterspageitemstipoIvaidFacturarequired

freematica_list_factura_vencimientos

Devuelve los vencimientos de cobro de una factura de ventas. Requiere el `idFactura` (idReg opaco) de la factura cabecera. Cada vencimiento contiene: FVV_FCH_VTO (fecha vencimiento), FVV_IMP_VTO (importe a cobrar), FVV_MODOPAGO (modo de pago), FVV_NUM_VTO (número de vencimiento). Filtros disponibles: fechaVencimientoDesde/Hasta, modoPago.

ParameterspageitemsmodoPagoidFacturarequiredfechaVencimientoDesdefechaVencimientoHasta

freematica_list_facturas_compras

Devuelve la lista paginada de facturas de compras de Freemática. Cada item contiene campos como FCC_CODEMP (empresa), FCC_CODPRO (proveedor), FCC_FCHFAC (fecha factura), FCC_SERIEFRA (serie), FCC_NUMFRA (número), FCC_FPAGO (forma de pago), FCC_TRASP_CONTAB (traspasado contabilidad), FCC_DELEG (delegación), FCC_LIN_NEGOCIO (línea negocio), más `idReg` opaco para el endpoint singular. Paginación 1-indexed. Los filtros de fecha aplican sobre la fecha de la factura (FCC_FCHFAC). El parámetro `exportado` acepta exactamente: "all" (todas) | "not_exported" (no exportadas). Se envía como query param nativo, no como FIQL.

ParameterspageitemsserieempresaexportadoformaPagodelegacionfechaDesdefechaHastanumFacturacodProveedorlineaNegocio+1 more

freematica_get_factura_compra

Devuelve el detalle completo de una factura de compra. El parámetro `id` DEBE ser el campo `idReg` (string opaco base64) que aparece en los items de freematica_list_facturas_compras. NO usar FCC_NUMFRA ni otro código natural.

Parametersidrequired

freematica_list_pedidos_compra

Devuelve la lista paginada de pedidos de compra de Freemática. DISEÑO MIXTO: este endpoint tiene 4 filtros como query params nativos (no FIQL) y el resto de filtros vía rQuery (FIQL con campos ALCC_*). Filtros nativos (van directamente como query params): - empresa (4c) → codEmpresa - codProveedor (≤10c) → codProveedor - fechaPedidoDesde (ISO) → desdeFecha - fechaPedidoHasta (ISO) → hastaFecha Filtros FIQL (van en rQuery con campos ALCC_*): - numPedido → ALCC_NUMDOC - codDocumento → ALCC_CODDOC - delegacion → ALCC_DELEG - formaPago → ALCC_FPAGO - tipoIva → ALCC_TIPO_IVA - codCliente → ALCC_COD_CLIENTE - codInstalador → ALCC_COD_INSTALADOR - codMantenedor → ALCC_COD_MANTENEDOR - fechaEntregaDesde / fechaEntregaHasta → ALCC_FCHENTREGA con =ge=/=le= - referencia → ALCC_REFERENCIA (match exacto) - estado → enum: pendiente | bloqueado | recibido Cada item contiene los campos del pedido (ALCC_*) más `idReg` opaco para el endpoint singular. Paginación 1-indexed.

ParameterspageitemsestadoempresatipoIvaformaPagonumPedidocodClientedelegacionreferenciacodDocumentocodProveedor+6 more

freematica_get_pedido_compra

Devuelve el detalle completo de un pedido de compra. El parámetro `id` DEBE ser el campo `idReg` (string opaco base64) que aparece en los items de freematica_list_pedidos_compra. NO usar ALCC_NUMDOC ni otro código natural. La respuesta es un objeto compuesto: { VoPedidosCompraCab, cabecera_proveedor, lineas[] }. Se devuelve sin aplanar para conservar la estructura original del API.

Parametersidrequired

freematica_list_proveedores

Devuelve la lista paginada de proveedores de Freemática. Cada item contiene campos como COD_PRO (código), COD_GRUPO_PRO (grupo), NIF, NOMBRE_PRO (nombre), FECHA_BAJA (baja del proveedor), CMP_TIPO_IDENT (tipo identificador), COD_PROVINCIA, COD_PAIS, más `idReg` opaco para el endpoint singular. Paginación 1-indexed. El filtro `activo` es un booleano: true = FECHA_BAJA nula (proveedores activos, filtrado sobre la página recibida — el total refleja el dataset sin filtrar); false = FECHA_BAJA informada (dados de baja). El filtro `nombre` es de coincidencia EXACTA con el nombre completo (el API no soporta búsqueda parcial en este endpoint).

ParametersnifpageitemsactivonombrecodPaistipoIdentcodProveedorcodProvinciagrupoProveedor

freematica_get_proveedor

Devuelve el detalle completo de un proveedor. El parámetro `id` DEBE ser el campo `idReg` (string opaco base64) que aparece en los items de freematica_list_proveedores. NO usar COD_PRO ni otro código natural.

Parametersidrequired

freematica_list_proveedores_v1

Devuelve la lista paginada de proveedores usando el endpoint v1 de Freemática. Paginación 1-indexed.

Parameterspageitems

freematica_list_localizaciones_cobro_clientes

Devuelve la lista paginada de localizaciones de cobro de clientes. Las localizaciones de cobro definen la domiciliación bancaria o condiciones de pago de un cliente. Cada item contiene campos como COD_CLI (cliente), GRUPO_CLI (grupo), COD_FORMA_COBRO (forma de cobro), más `idReg` opaco. Paginación 1-indexed.

ParameterspageitemsformaPagocodClientegrupoCliente

freematica_list_localizaciones_pago_proveedores

Devuelve la lista paginada de localizaciones de pago de proveedores. Las localizaciones de pago definen las condiciones bancarias o de pago de un proveedor. Cada item contiene campos como COD_PRO (proveedor), COD_GRUPO_PRO (grupo), COD_FORMA_PAGO (forma de pago), más `idReg` opaco. Paginación 1-indexed.

ParameterspageitemsformaPagocodProveedorgrupoProveedor

freematica_list_localizaciones_servicio_clientes

Devuelve la lista paginada de localizaciones de servicio de clientes. Las localizaciones de servicio son las direcciones donde se presta servicio a un cliente. Cada item contiene campos como COD_CLI (cliente), GRUPO_CLI (grupo), COD_PAIS, COD_PROVINCIA, COD_REPRES (representante), más `idReg` opaco. Paginación 1-indexed.

ParameterspageitemscodPaiscodClientecodProvinciagrupoClienterepresentante

freematica_list_localizaciones_envio_clientes

Devuelve la lista paginada de localizaciones de envío de clientes. Direcciones de entrega/envío asociadas a un cliente. Cada item incluye LOC_CLI_ENV (código), NOM_LOC_ENV, dirección, más `idReg` opaco que se usa en freematica_update_localizacion_cliente (tipo=envio). Paginación 1-indexed.

ParameterspageitemscodClientegrupoCliente

freematica_list_localizaciones_factura_clientes

Devuelve la lista paginada de localizaciones de factura de clientes. Direcciones fiscales/de facturación asociadas a un cliente (incluye datos de factura electrónica: oficina contable, órgano gestor, EDI). Cada item incluye LOC_CLI_FAC (código), NOM_LOC_FAC, más `idReg` opaco que se usa en freematica_update_localizacion_cliente (tipo=factura). Paginación 1-indexed.

ParameterspageitemscodClientegrupoCliente

freematica_list_localizaciones_cobro_clientes_v1

Devuelve la lista paginada de localizaciones de cobro de clientes (v1). Paginación 1-indexed.

Parameterspageitems

freematica_get_localizacion_cobro_cliente

Devuelve el detalle de una localización de cobro de cliente (v1) por su `idReg`.

ParametersidRegrequired

freematica_get_localizacion_cobro_cliente_v2

Devuelve el detalle de una localización de cobro de cliente (v2) por su `idReg`.

ParametersidRegrequired

freematica_list_localizaciones_envio_clientes_v1

Devuelve la lista paginada de localizaciones de envío de clientes (v1). Paginación 1-indexed.

Parameterspageitems

freematica_get_localizacion_envio_cliente

Devuelve el detalle de una localización de envío de cliente (v1) por su `idReg`.

ParametersidRegrequired

freematica_get_localizacion_envio_cliente_v2

Devuelve el detalle de una localización de envío de cliente (v2) por su `idReg`.

ParametersidRegrequired

freematica_get_localizacion_factura_cliente

Devuelve el detalle de una localización de factura de cliente (v1) por su `idReg`.

ParametersidRegrequired

freematica_list_localizaciones_servicio_clientes_v1

Devuelve la lista paginada de localizaciones de servicio de clientes (v1). Paginación 1-indexed.

Parameterspageitems

freematica_get_localizacion_servicio_cliente

Devuelve el detalle de una localización de servicio de cliente (v1) por su `idReg`.

ParametersidRegrequired

freematica_get_localizacion_servicio_cliente_v2

Devuelve el detalle de una localización de servicio de cliente (v2) por su `idReg`.

ParametersidRegrequired

freematica_list_localizaciones_pago_proveedores_v1

Devuelve la lista paginada de localizaciones de pago de proveedores (v1). Paginación 1-indexed.

Parameterspageitems

freematica_get_localizacion_pago_proveedor

Devuelve el detalle de una localización de pago de proveedor (v1) por su `idReg`.

ParametersidRegrequired

freematica_get_localizacion_pago_proveedor_v2

Devuelve el detalle de una localización de pago de proveedor (v2) por su `idReg`.

ParametersidRegrequired

freematica_list_cuentas_contables

Devuelve el plan de cuentas contables de Freemática. Endpoint: GET /pcon/v2/cuentas. Devuelve los registros del catálogo de cuentas del Plan Contable (COD_CTA, COD_PLAN, COD_GRUPO_CTA, CTA_ACTIVA, NOMBRE_CTA, etc.). Filtros FIQL disponibles: - codPlan: filtra por código de plan contable (COD_PLAN). - prefijoCuenta: filtra cuentas cuyo COD_CTA comienza por el prefijo indicado (prefijo match). - activa: si true, devuelve solo cuentas activas (CTA_ACTIVA==1); si false, solo inactivas. - grupoCuenta: filtra por código de grupo de cuenta (COD_GRUPO_CTA). Los filtros se combinan con AND. Todos son opcionales.

ParametersactivacodPlangrupoCuentaprefijoCuenta

freematica_list_cuentas_analiticas

Devuelve el catálogo de cuentas analíticas de Freemática. Endpoint: GET /pcon/v2/cuentas-analiticas. Devuelve los registros de cuentas analíticas (COD_CTA_ANL, COD_PLAN, COD_GRUPO_ANL, CTA_ACTIVA_ANL, AREA_ANL, DELEG, etc.). Filtros FIQL disponibles: - codPlan: filtra por código de plan (COD_PLAN). - prefijoCuenta: filtra cuentas cuyo COD_CTA_ANL comienza por el prefijo indicado. - activa: si true, solo cuentas activas (CTA_ACTIVA_ANL==1); si false, solo inactivas. - grupoCuenta: filtra por código de grupo analítico (COD_GRUPO_ANL). - area: filtra por área analítica (AREA_ANL). - delegacion: filtra por delegación (DELEG). Los filtros se combinan con AND. Todos son opcionales.

ParametersareaactivacodPlandelegaciongrupoCuentaprefijoCuenta

freematica_export_asientos

Exporta asientos contables de Freemática en batch. Endpoint: GET /pcon/v2/export-asientos. ⚠️ AVISO: Este endpoint puede devolver volúmenes MUY GRANDES de datos. Acota siempre con `periodo` o con UNA fecha (fechaDesde O fechaHasta — son excluyentes: el API devuelve 0 filas si se combinan ambas). Parámetros obligatorios: - empresa: código de empresa de 4 caracteres exactos (ej. "0001"). - cal: código de calendario/ejercicio contable de 4 caracteres exactos (ej. "2025"). Parámetros opcionales nativos (query param directo, no FIQL): - periodo: número de periodo contable (1-12, puede tener ceros, ej. "01"). Filtros FIQL adicionales (opcionales): - fechaDesde O fechaHasta (excluyentes): límite de fecha sobre ASI_FCHASI, YYYY-MM-DD. - diario: código del diario contable (ASI_DIARIO). - borrador: si true, incluye solo asientos borrador (ASI_BORR no nulo). Protección de tamaño: si la respuesta supera FREEMATICA_MAX_RESPONSE_SIZE_MB (default 10 MB), la tool devuelve los datos truncados con un campo "warning" indicando el truncado. Se recomienda usar rangos de fecha cortos (máx. 1 mes) para evitar truncados.

ParameterscalrequireddiarioempresarequiredperiodoborradorfechaDesdefechaHasta

freematica_get_ficha_prev_cliente

Devuelve la ficha de Prevención de Riesgos Laborales (PRL) de un cliente. Endpoint: GET /pprl/v2/ficha-prev-cliente Los filtros se envían como query params nativos (NO FIQL). Al menos uno de los cuatro identificadores es obligatorio: codCliente, grupoCliente, codLocalizacionServicio o codigoFicha. Si se pasan varios se combinan con AND. IMPORTANTE: si no se pasa ningún identificador, la tool devuelve un error de validación sin llamar al API. Campos de respuesta principales: COD_CLI, NOMBRE_CLI, COD_GRUPO_CLI, COD_LOC_SERV, CODIGO_FICHA, FECHA_ALTA, ESTADO, etc.

ParameterscodClientecodigoFichagrupoClientecodLocalizacionServicio

freematica_list_vigilancia_salud

Devuelve la lista paginada de registros de Vigilancia de la Salud. Endpoint: GET /pprl/v1/vigilancia-salud ÚNICO filtro soportado: `idRegPersona` (el campo `idReg` de la persona en freematica_list_personal). El API ignora cualquier otro filtro en este endpoint, así que para acotar por empresa, tipo de revisión o fechas hay que filtrar sobre los resultados. Campos principales: PERVS_EMP, PERVS_DELEG, PERVS_PERSO, PERVS_TIPO_REVISION, PERVS_RESULTADO, PERVS_FCH_CITA, idReg.

ParameterspageitemsidRegPersona

freematica_get_vigilancia_salud

Devuelve el detalle completo de un registro de Vigilancia de la Salud. Endpoint: GET /pprl/v1/vigilancia-salud/{idreg} El parámetro `id` DEBE ser el campo `idReg` (string opaco base64) que aparece en los items de freematica_list_vigilancia_salud.

Parametersidrequired

freematica_list_personal

Devuelve la lista paginada de personas (empleados / personal) de Freemática. Endpoint: GET /pers/v1/personal Permite filtrar por empresa (VSSPER_EMP), delegación (VSSPER_DELEG), código de persona (VSSPER_COD), nombre (VSSPER_NOM), primer apellido (VSSPER_APELL1), NIF (VSSPER_NIF), situación (VSSPER_SIT), departamento (VSSPER_DPTO) y sección (VSSPER_SECCION). AVISO: todos los filtros son de coincidencia EXACTA (el API no soporta búsqueda parcial en este endpoint). Para localizar a una persona por nombre parcial, lista sin filtros y filtra sobre los resultados. Cada item incluye `idReg` opaco para usar en freematica_get_persona.

ParametersnifpageitemsnombreempresaseccionapellidosituacioncodPersonadelegaciondepartamento

freematica_get_persona

Devuelve el detalle completo de una persona. Endpoint: GET /pers/v1/personal/{idreg} El parámetro `id` DEBE ser el campo `idReg` (string opaco base64) que aparece en los items de freematica_list_personal.

Parametersidrequired

freematica_list_personal_v2

Lista de personas (endpoint de sincronización incremental v2). Endpoint: GET /pers/v2/personal A diferencia de freematica_list_personal (v1), este endpoint acepta el parámetro opcional `fchmodificacion` (YYYY-MM-DD) para recuperar solo los registros modificados desde esa fecha. Útil para sincronización incremental. Cada item incluye `idReg` opaco para usar en freematica_get_persona.

Parameterspageitemsfchmodificacion

freematica_list_personal_identificacion

Lista paginada de datos de identificación de personas. Endpoint: GET /pers/v2/personal-identificacion Devuelve documentos de identificación (DNI, NIE, pasaporte, etc.) asociados a las personas del módulo de personal.

Parameterspageitems

freematica_list_personal_notas

Lista paginada de notas de personal. Endpoint: GET /pers/v2/personal-notas Parámetro opcional `idReg` para filtrar las notas de una persona concreta. Sin `idReg` devuelve todas las notas del sistema. Cada item incluye `idReg` opaco para usar en freematica_get_personal_nota.

ParameterspageidRegitems

freematica_get_personal_nota

Devuelve el detalle de una nota de personal. Endpoint: GET /pers/v2/personal-notas/{idReg} El parámetro `id` debe ser el campo `idReg` de freematica_list_personal_notas.

Parametersidrequired

freematica_list_personal_experiencias

Lista paginada de experiencias profesionales previas de las personas. Endpoint: GET /pers/v1/personal-experiencias Parámetro opcional `idReg` para filtrar las experiencias de una persona. Cada item incluye `idReg` opaco para usar en freematica_get_personal_experiencia.

ParameterspageidRegitems

freematica_get_personal_experiencia

Devuelve el detalle de una experiencia profesional previa. Endpoint: GET /pers/v1/personal-experiencias/{idreg} El parámetro `id` debe ser el campo `idReg` de freematica_list_personal_experiencias.

Parametersidrequired

freematica_list_personal_formaciones

Lista paginada de formaciones académicas/profesionales de las personas. Endpoint: GET /pers/v1/personal-formaciones Parámetro opcional `idReg` para filtrar las formaciones de una persona. Cada item incluye `idReg` opaco para usar en freematica_get_personal_formacion.

ParameterspageidRegitems

freematica_get_personal_formacion

Devuelve el detalle de una formación de personal. Endpoint: GET /pers/v1/personal-formaciones/{idReg} El parámetro `id` debe ser el campo `idReg` de freematica_list_personal_formaciones.

Parametersidrequired

freematica_list_personal_contratos

Lista paginada de contratos laborales de las personas. Endpoint: GET /pers/v1/personal_contratos Incluye tipo de contrato, fechas de inicio/fin, categoría y salario. Cada item incluye `idReg` para usar en freematica_get_personal_contrato.

Parameterspageitems

freematica_get_personal_contrato

Devuelve el detalle de un contrato laboral. Endpoint: GET /pers/v1/personal_contratos/{idreg} El parámetro `id` debe ser el campo `idReg` de freematica_list_personal_contratos.

Parametersidrequired

freematica_list_personal_tramos

Lista paginada de tramos horarios de las personas (v1). Endpoint: GET /pers/v1/personal_tramos Incluye código de horario, jornada, fechas de vigencia. Cada item incluye `idReg` para usar en freematica_get_personal_tramo. Para sincronización incremental usa freematica_list_personal_tramos_sync (v2).

Parameterspageitems

freematica_get_personal_tramo

Devuelve el detalle de un tramo horario (v1). Endpoint: GET /pers/v1/personal_tramos/{idreg} El parámetro `id` debe ser el campo `idReg` de freematica_list_personal_tramos.

Parametersidrequired

freematica_list_personal_tramos_sync

Lista de tramos horarios — endpoint de sincronización incremental (v2). Endpoint: GET /pers/v2/personal/tramos Parámetro opcional `fchmodificacion` (YYYY-MM-DD) para recuperar solo los tramos modificados desde esa fecha. Cada item incluye `idReg` para usar en freematica_get_personal_tramo_v2.

Parameterspageitemsfchmodificacion

freematica_get_personal_tramo_v2

Devuelve el detalle de un tramo horario (v2 — sincronización). Endpoint: GET /pers/v2/personal/tramos/{idreg} El parámetro `id` debe ser el campo `idReg` de freematica_list_personal_tramos_sync.

Parametersidrequired

freematica_list_personal_pago

Lista paginada de datos bancarios/de pago de las personas. Endpoint: GET /pers/v1/personal_pago Incluye IBAN, entidad bancaria, forma de pago. Cada item incluye `idReg` para usar en freematica_get_personal_pago.

Parameterspageitems

freematica_get_personal_pago

Devuelve el detalle de los datos bancarios/de pago de una persona. Endpoint: GET /pers/v1/personal_pago/{idreg} El parámetro `id` debe ser el campo `idReg` de freematica_list_personal_pago.

Parametersidrequired

freematica_list_personal_adicionales

Lista paginada de datos adicionales (campos extra) de las personas. Endpoint: GET /pers/v2/personal-adicionales Los datos adicionales son campos configurables por empresa que no existen en la ficha estándar de personal (VSSPERA_*). Cada item incluye `idReg` para operaciones de escritura.

Parameterspageitems

freematica_list_personal_prorroga

Lista paginada de prórrogas de contratos laborales. Endpoint: GET /pers/v1/personal-prorroga Incluye extensiones y renovaciones de contratos. Cada item incluye `idReg` para usar en freematica_get_personal_prorroga.

Parameterspageitems

freematica_get_personal_prorroga

Devuelve el detalle de una prórroga de contrato laboral. Endpoint: GET /pers/v1/personal-prorroga/{idreg} El parámetro `id` debe ser el campo `idReg` de freematica_list_personal_prorroga.

Parametersidrequired

freematica_list_incidencias_personal

Lista paginada de incidencias de personal. Endpoint: GET /pers/v2/incidencias Incidencias laborales registradas en el módulo de RRHH. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_get_agenda_persona

Devuelve la agenda de una persona (eventos, citas, tareas programadas). Endpoint: GET /pers/v1/agenda-persona Parámetro opcional `idReg` para filtrar la agenda de una persona concreta.

ParameterspageidRegitems

freematica_list_equipamiento_ficha_seguridad

Lista paginada de equipamiento de ficha de seguridad del personal. Endpoint: GET /pers/v2/equipamiento-ficha-seguridad EPIs (Equipos de Protección Individual) y equipamiento de seguridad asignado al personal.

Parameterspageitems

freematica_list_anticipos_personal

Lista paginada de anticipos de nómina del personal. Endpoint: GET /pers/v2/personal/anticipos Anticipos de salario solicitados o concedidos a los empleados. Cada item incluye `idReg` para usar en freematica_get_anticipo_personal.

Parameterspageitems

freematica_get_anticipo_personal

Devuelve el detalle de un anticipo de nómina. Endpoint: GET /pers/v2/personal/anticipos/{idReg} El parámetro `id` debe ser el campo `idReg` de freematica_list_anticipos_personal.

Parametersidrequired

freematica_list_calendario_personal

Lista paginada de entradas del calendario personal de los empleados. Endpoint: GET /pers/v2/personal-cal Vacaciones, permisos, ausencias y días especiales del calendario individual de cada empleado. Cada item incluye `idReg` para usar en freematica_get_calendario_personal.

Parameterspageitems

freematica_get_calendario_personal

Devuelve el detalle de una entrada del calendario personal. Endpoint: GET /pers/v2/personal-cal/{idReg} El parámetro `id` debe ser el campo `idReg` de freematica_list_calendario_personal.

Parametersidrequired

freematica_list_cpd

Lista paginada de documentos del CPD (Cuadro Personal de Documentos). Endpoint: GET /pers/v1/cpd Documentos que los empleados deben firmar o gestionar (contratos, nóminas, comunicaciones, etc.). Cada item incluye `idReg` para usar en freematica_get_cpd.

Parameterspageitems

freematica_get_cpd

Devuelve el detalle de un documento CPD. Endpoint: GET /pers/v1/cpd/{idreg} El parámetro `id` debe ser el campo `idReg` de freematica_list_cpd. NOTA: El endpoint de descarga binaria (GET /pers/v1/cpd/download) no está expuesto porque devuelve un ZIP binario no manejable por herramientas LLM.

Parametersidrequired

freematica_list_cpd_movimientos

Lista los movimientos/historial de un documento CPD. Endpoint: GET /pers/v1/cpd/{idreg}/movimientos El parámetro `id` debe ser el campo `idReg` de freematica_list_cpd. Devuelve el historial de estados y acciones sobre el documento.

Parametersidrequiredpageitems

freematica_list_cpd_firmados_vid

Lista paginada de documentos CPD firmados mediante VID (firma digital). Endpoint: GET /pers/v1/cpd/firmados-vid Documentos que han sido firmados electrónicamente por los empleados.

Parameterspageitems

freematica_list_personal_irpf

Lista paginada de datos de IRPF de las personas. Endpoint: GET /pers/v2/personal_irpf Tipos de retención, situaciones familiares, y demás datos fiscales necesarios para el cálculo del IRPF. Cada item incluye `idReg` para usar en freematica_get_personal_irpf.

Parameterspageitems

freematica_get_personal_irpf

Devuelve el detalle de los datos de IRPF de una persona. Endpoint: GET /pers/v2/personal_irpf/{idreg} El parámetro `id` debe ser el campo `idReg` de freematica_list_personal_irpf.

Parametersidrequired

freematica_list_sesiones_formacion

Lista paginada de sesiones de formación. Endpoint: GET /pers/v1/sesiones-formacion Sesiones formativas impartidas o planificadas para el personal. Cada item incluye `idReg` para usar en freematica_get_sesion_formacion.

Parameterspageitems

freematica_get_sesion_formacion

Devuelve el detalle de una sesión de formación. Endpoint: GET /pers/v1/sesiones-formacion/{idreg} El parámetro `id` debe ser el campo `idReg` de freematica_list_sesiones_formacion.

Parametersidrequired

freematica_list_vss_incidencias

Lista paginada de incidencias de Vigilancia de la Salud (VSS). Endpoint: GET /pers/v2/vss-incidencias Incidencias médico-laborales: accidentes, enfermedades profesionales, bajas por IT, reconocimientos médicos. Cada item incluye `idReg` para usar en freematica_get_vss_incidencia.

Parameterspageitems

freematica_get_vss_incidencia

Devuelve el detalle de una incidencia de Vigilancia de la Salud. Endpoint: GET /pers/v2/vss-incidencias/{idReg} El parámetro `id` debe ser el campo `idReg` de freematica_list_vss_incidencias.

Parametersidrequired

freematica_list_calendarios

Devuelve la lista paginada de calendarios laborales registrados en Freemática. Endpoint: GET /pgrl/v1/calendarios Cada item incluye `idReg` opaco que se usa en freematica_list_calendario_periodos para obtener los periodos de un calendario concreto. Soporta paginación estándar (page, items).

Parameterspageitems

freematica_list_calendario_periodos

Devuelve los periodos de un calendario laboral concreto. Endpoint: GET /pgrl/v1/calendarios/{idreg}/periodos El parámetro `idCalendario` DEBE ser el campo `idReg` (string opaco base64) que aparece en los items de freematica_list_calendarios. Soporta paginación estándar (page, items).

ParameterspageitemsidCalendariorequired

freematica_list_facturas_electronicas

Devuelve la lista paginada de facturas electrónicas (Facturae firmadas / EDICOM / FACe) de Freemática. Diferente de freematica_list_facturas_cabecera: ésta expone las facturas firmadas y enviadas a AAPP/portales. Los campos de respuesta usan el prefijo FACED_* (factura electrónica). Campos clave: FACED_CODEMP (empresa), FACED_FCHFAC (fecha), FACED_SERIEFRA (serie), FACED_NUMFRA (número), FACED_ESTADO / FACED_ESTADO_DESC (estado firma), FACED_LEIDO (flag leído), COD_CLI (código cliente), NIF, NOMBRE_CLI (nombre), TIENE_DOC_PDF / TIENE_DOC_XML (tiene documentos). Todos los filtros son query params nativos (NO FIQL). Paginación 1-indexed.

ParameterspageitemsleidoorderestadoempresacodClientefechaDesdefechaHasta

freematica_get_factura_electronica

Devuelve el detalle completo de una factura electrónica (Facturae/EDICOM/FACe). El parámetro `id` DEBE ser el campo `idReg` (string opaco base64) que aparece en los items de freematica_list_facturas_electronicas. NO usar FACED_NUMFRA ni otro código natural.

Parametersidrequired

freematica_get_factura_documento

Devuelve el documento binario (PDF o XML Facturae firmado) de una factura electrónica. El documento se devuelve como objeto JSON con los campos de VoFacturasDocumento (FACED_DOCUMENTO_PDF, FACED_DOCUMENTO_XML, FACED_DOCUMENTO_XML2, etc.) que contienen el contenido codificado en base64. Si el tamaño del response supera FREEMATICA_MAX_RESPONSE_SIZE_MB, se devuelve `truncated: true` con `warning` y `sizeBytes` pero sin el contenido del documento. Parámetros opcionales: - documentType: tipo de documento a recuperar (ej. "PDF", "XML") - actualizaLeido: si true, marca la factura como leída al recuperar el documento

ParametersidrequireddocumentTypeactualizaLeido

freematica_get_factura_log

Devuelve el log de auditoría de una factura electrónica: envío, recepción, aceptación AAPP, etc. El parámetro `id` DEBE ser el campo `idReg` opaco de freematica_list_facturas_electronicas. Campos de respuesta con prefijo FVCTRLE_*: FVCTRLE_CODEMP (empresa), FVCTRLE_FCHFRA (fecha factura), FVCTRLE_SERIEFRA (serie), FVCTRLE_NUMFRA (número), FVCTRLE_FCH_MOV (fecha movimiento), FVCTRLE_CODCLI (cliente).

Parametersidrequiredpageitems

freematica_get_edicom_info

Devuelve la configuración de integración con EDICOM (empresa emisora, aplicación, credenciales, URLs). Útil para diagnosticar el estado de la integración EDICOM/FACe y verificar la configuración. Campos de respuesta: EDICOM_COMPANY_ID, EDICOM_APPLICATION, EDICOM_CLIENT_ID, EDICOM_DOMAIN, EDICOM_SERVER_URL, EDICOM_RAZON_SOCIAL, EDICOM_MESSAGE_FORMAT, entre otros. NOTA: incluye campos sensibles (EDICOM_USER, EDICOM_PASSWORD). Usar con precaución.

Parameterspageitems

freematica_list_facturas_documentos

Descarga masiva de documentos de facturas electrónicas (PDF/XML/ERROR). Permite recuperar múltiples documentos a la vez filtrando por identificadores y tipo de documento. Los documentos se devuelven en formato base64 dentro de los campos documentoPdf, documentoXml, etc. CUIDADO: este endpoint puede devolver respuestas muy grandes. Si supera FREEMATICA_MAX_RESPONSE_SIZE_MB los items se truncarán y se añadirá `truncated: true` + `warning` en la respuesta. Campos de respuesta (prefijo VoEFraDoc): empresa, fecha, serie, numFra, documentoPdf, documentoXml, documentoXml2, decError, decError2, documentoError, documentoGuid, documentoFSDir.

ParametersdocumentsdocumentType

freematica_list_albaranes_ventas

Devuelve la lista paginada de albaranes de ventas de Freemática. Cada item contiene campos con prefijo ALVC_* (cabecera) y ALVL_* (líneas). Campos destacados: ALVC_CODEMP (empresa), ALVC_DELEG (delegación), ALVC_CODCLI (cliente), ALVC_CODDOC (código documento), ALVC_NUMDOC (número), ALVC_FCHDOC (fecha), ALVC_SERIEFRA (serie factura), ALVC_IND_NOFAC (no facturar), ALVC_FPAGO (forma pago), más `idReg` opaco para el endpoint singular. Los filtros principales (empresa, delegacion, codCliente, codDocumento, fechaDesde, fechaHasta) se envían como query params NATIVOS del endpoint (no FIQL). El campo `empresa` es requerido por el endpoint de Freemática. Paginación 1-indexed.

ParameterspageitemsorderempresarequiredcodClientedelegacionfechaDesdefechaHastacodDocumento

freematica_get_albaran_venta

Devuelve el detalle completo de un albarán de venta. El parámetro `id` DEBE ser el campo `idReg` (string opaco base64) que aparece en los items de freematica_list_albaranes_ventas. NO usar ALVC_NUMDOC ni otro código natural.

Parametersidrequired

freematica_list_albaranes_factura

Devuelve la lista paginada de vinculaciones albarán↔factura de Freemática. Cada item contiene campos con prefijo FVCA_*: FVCA_CODEMP (empresa), FVCA_SERIEFRA (serie factura), FVCA_NUMFRA (número factura), FVCA_CODCLI (cliente), FVCA_NUMALB (número albarán), FVCA_FCHALB (fecha albarán), FVCA_FCHFAC (fecha factura), FVCA_NUMPED (número pedido), FVCA_CODDOC (código documento), más `idReg` opaco. El filtro `idReg` es un query param nativo. Los filtros empresa, serie, numFactura y codCliente se envían como FIQL en el parámetro rQuery. Casos de uso principales: - Buscar qué facturas incluyen un albarán determinado (filtrar por FVCA_NUMALB vía rQuery) - Listar todos los albaranes vinculados a una factura (filtrar por numFactura + serie) Paginación 1-indexed.

ParameterspageidRegitemsserieempresacodClientenumFactura

freematica_get_albaran_factura

Devuelve el detalle completo de un registro de vinculación albarán↔factura. El parámetro `id` DEBE ser el campo `idReg` (string opaco base64) que aparece en los items de freematica_list_albaranes_factura. NO usar FVCA_NUMFRA ni otro código natural.

Parametersidrequired

freematica_list_resultados_facturacion

Devuelve los resultados del proceso batch de facturación automática de vigilancia. Cada item contiene campos con prefijo FACT_*: FACT_EMP (empresa), FACT_DELEG (delegación), FACT_CAL (año calendario), FACT_MES (mes), FACT_CTRT (contrato), FACT_SERV (servicio), FACT_TIPFAC (tipo facturación), FACT_COD_CLI (cliente), FACT_TRASP (estado traspaso), FACT_NUMDOC (documento generado), FACT_IMP_BASE (importe base), FACT_IMPF (importe final), y múltiples campos de horas (FACT_HHD, FACT_HHF, FACT_HHG, FACT_HHN, etc.). Todos los filtros se envían como FIQL en el parámetro rquery. Paginación 1-indexed. El param `order` es nativo del endpoint.

ParametersmespageitemsorderempresatipoFaccontratoserviciocalendariocodClientedelegaciontraspasado

freematica_list_naturalezas_abono

Devuelve la lista paginada de naturalezas de abono (módulo pven). Nota: este endpoint (/pven/v1/naturalezas-abono) devuelve los registros operativos paginados del módulo pven. Es distinto del catálogo estático "naturalezas-abono" de freematica_get_master_data, que devuelve la tabla maestra. Use freematica_get_master_data({ catalog: "naturalezas-abono" }) para el catálogo de referencia (sin paginar). Endpoint: GET /pven/v1/naturalezas-abono.

Parameterspageitems

freematica_list_articulos

Devuelve la lista paginada del catálogo de artículos (materiales, consumibles, productos) de Freemática. Endpoint: GET /part/v1/articulos Cada item incluye COD_ARTICULO (referencia), DESC_ART (descripción), COD_PROVEEDOR, COD_LIN_ART (línea), COD_FAMILIA, COD_SUBFAM, COD_IVA, CODIGO_BARRAS, FECHA_ALTA, FECHA_BAJA/MOTIVO_BAJA (baja del artículo) y el `idReg` opaco para usar en freematica_get_articulo y freematica_get_precio_articulo. Los códigos de familia/subfamilia/línea se pueden resolver con freematica_get_master_data (catalogs: familias, subfamilias). AVISO: todos los filtros son de coincidencia EXACTA (el API no soporta búsqueda parcial en este endpoint). COD_ARTICULO puede llevar espacios iniciales que forman parte del código (ej. " QQ10615"). Para explorar por texto, filtra por familia o proveedor y revisa las descripciones de los resultados.

ParameterspageitemslineaactivofamiliasubfamiliatipoCodigocodArticulodescripcioncodProveedorcodigoBarras

freematica_get_articulo

Devuelve el detalle completo de un artículo del catálogo. Endpoint: GET /part/v1/articulos/{idreg} El parámetro `id` DEBE ser el campo `idReg` (string opaco base64) que aparece en los items de freematica_list_articulos.

Parametersidrequired

freematica_get_precio_articulo

Devuelve los precios de venta de un artículo: PRECIO_VENTA, DESCUENTO y FACTURABLE. Endpoint: GET /pgrl/v1/precio-articulo/{idreg} El parámetro `id` DEBE ser el campo `idReg` (string opaco base64) que aparece en los items de freematica_list_articulos (el mismo que usa freematica_get_articulo).

Parametersidrequired

freematica_list_articulos_costes

Devuelve la lista paginada de costes de artículos en Freemática. Endpoint: GET /part/v2/articulos-costes Cada item incluye el coste estándar (PRECIO_COSTE_DV1, PRECIO_COSTE_DV2), precio medio ponderado y otros datos de valoración del artículo.

Parameterspageitems

freematica_get_articulo_coste

Devuelve el detalle de costes de un artículo por su `idReg` opaco. Endpoint: GET /part/v2/articulos-costes/{idreg} El parámetro `id` DEBE ser el campo `idReg` que aparece en freematica_list_articulos_costes.

Parametersidrequired

freematica_list_vinculos_personas_servicios

Devuelve la lista paginada de vínculos entre personas y servicios. Permite resolver la relación centro/servicio → trabajador, clave para la integración CAE. Endpoint: GET /pvss/v2/vinculos-personas-servicios. Cada item contiene los campos de asignación de la persona al servicio.

Parameterspageitemsorder

freematica_get_vinculo_persona_servicio

Devuelve el detalle de un vínculo persona-servicio por su idReg opaco. Endpoint: GET /pvss/v2/vinculos-personas-servicios/{idreg}.

ParametersidRegrequired

freematica_list_habilitaciones_servicios_alta

Devuelve altas de servicios-personal en el módulo de habilitaciones CAE (feed incremental). Usar para detectar nuevas asignaciones de trabajadores a centros de trabajo. Endpoint: GET /peqv/v2/habilitaciones/servicios/alta.

Parameterspagedesdeitems

freematica_list_habilitaciones_servicios_baja

Devuelve bajas de servicios-personal en el módulo de habilitaciones CAE (feed incremental). Usar para detectar desvinculaciones de trabajadores de centros de trabajo. Endpoint: GET /peqv/v2/habilitaciones/servicios/baja.

Parameterspagedesdeitems

freematica_list_habilitaciones_personal_alta

Devuelve altas de licencias de personal en el módulo de habilitaciones CAE (feed incremental). Usar para detectar nuevas habilitaciones del personal. Endpoint: GET /peqv/v2/habilitaciones/personal/alta.

Parameterspagedesdeitems

freematica_list_habilitaciones_personal_baja

Devuelve bajas de licencias de personal en el módulo de habilitaciones CAE (feed incremental). Usar para detectar revocaciones de habilitaciones del personal. Endpoint: GET /peqv/v2/habilitaciones/personal/baja.

Parameterspagedesdeitems

freematica_list_solicitudes_material

Devuelve la lista paginada de solicitudes de material (módulo PEQV). Endpoint: GET /peqv/v2/solicitud-material.

Parameterspageitems

freematica_get_solicitud_material

Devuelve el detalle de una solicitud de material por su idReg opaco. Endpoint: GET /peqv/v2/solicitud-material/:idreg.

ParametersidRegrequired

freematica_list_cuadrantes

Devuelve la lista paginada de cuadrantes de planificación. Endpoint: GET /pvss/v1/cuadrantes.

Parameterspageitemsorder

freematica_list_cuadrantes_detalles

Devuelve la lista paginada de líneas de detalle de cuadrantes. Endpoint: GET /pvss/v1/cuadrantes-detalles.

Parameterspageitemsorder

freematica_list_cuadrantes_observaciones

Devuelve la lista paginada de observaciones asociadas a cuadrantes. Endpoint: GET /pvss/v1/cuadrantes-observaciones.

Parameterspageitemsorder

freematica_list_cuadrantes_auditoria

Devuelve la lista paginada de registros de auditoría de cuadrantes (feed incremental). Usar con `desde` para sincronización incremental. Endpoint: GET /pvss/v1/cuadrantes-auditoria.

Parameterspagedesdeitemsorder

freematica_list_cuadrantes_tareas

Devuelve la lista paginada de tareas de cuadrantes. Endpoint: GET /pvss/v2/cuadrantes-tareas.

Parameterspageitemsorder

freematica_list_computos_pers

Devuelve la lista paginada de cómputos de personas. Endpoint: GET /pvss/v2/computos-pers.

Parameterspageitems

freematica_get_computos_pers

Devuelve el detalle de cómputos de una persona por su idReg opaco. Endpoint: GET /pvss/v2/computos-pers/{idreg}.

ParametersidRegrequired

freematica_get_computos_pers_h

Devuelve el detalle de cómputos históricos de una persona por su idReg opaco. Endpoint: GET /pvss/v2/computos-pers-h/{idreg}.

ParametersidRegrequired

freematica_list_cuadrantes_cierre_personas

Devuelve la lista paginada de cierres de cuadrante por persona. Endpoint: GET /pvss/v1/cuadrantes-cierre-personas.

Parameterspageitemsorder

freematica_get_cuadrante_cierre_persona

Devuelve el detalle de un cierre de cuadrante por persona por su idReg opaco. Endpoint: GET /pvss/v1/cuadrantes-cierre-personas/{idreg}.

ParametersidRegrequired

freematica_list_cuadrantes_cierre_personas_complementos

Devuelve la lista paginada de complementos de cierres de cuadrante por persona. Endpoint: GET /pvss/v1/cuadrantes-cierre-personas-complementos.

Parameterspageitemsorder

freematica_get_cuadrante_cierre_persona_complemento

Devuelve el detalle de un complemento de cierre de cuadrante por persona por su idReg opaco. Endpoint: GET /pvss/v1/cuadrantes-cierre-personas-complementos/{idreg}.

ParametersidRegrequired

freematica_list_cuadrantes_cierre_personas_especiales

Devuelve la lista paginada de jornadas especiales de cierres de cuadrante por persona. Endpoint: GET /pvss/v1/cuadrantes-cierre-personas-especiales.

Parameterspageitemsorder

freematica_get_cuadrante_cierre_persona_especial

Devuelve el detalle de una jornada especial de cierre de cuadrante por persona por su idReg opaco. Endpoint: GET /pvss/v1/cuadrantes-cierre-personas-especiales/{idreg}.

ParametersidRegrequired

freematica_list_cuadrantes_cierre_personas_incidencias

Devuelve la lista paginada de incidencias de cierres de cuadrante por persona. Endpoint: GET /pvss/v1/cuadrantes-cierre-personas-incidencias.

Parameterspageitemsorder

freematica_get_cuadrante_cierre_persona_incidencia

Devuelve el detalle de una incidencia de cierre de cuadrante por persona por su idReg opaco. Endpoint: GET /pvss/v1/cuadrantes-cierre-personas-incidencias/{idreg}.

ParametersidRegrequired

freematica_list_campos_estadisticos

Devuelve la lista paginada de campos estadísticos de cuadrantes. Endpoint: GET /pvss/v2/campos-estadisticos.

Parameterspageitemsorder

freematica_list_inspecciones

Devuelve la lista paginada de inspecciones de cuadrantes. Endpoint: GET /pvss/v2/inspecciones.

Parameterspageitemsorder

freematica_list_plantillas

Devuelve la lista paginada de plantillas de cuadrantes. Endpoint: GET /pvss/v2/plantillas.

Parameterspageitemsorder

freematica_list_normas

Devuelve la lista paginada de normas de cuadrantes. Endpoint: GET /pvss/v2/normas.

Parameterspageitemsorder

freematica_list_rutas_gestion

Devuelve la lista paginada de rutas de gestión. Endpoint: GET /pvss/v1/rutas-gestion.

Parameterspageitemsorder

freematica_list_rutas_planificacion

Devuelve la lista paginada de rutas de planificación. Endpoint: GET /pvss/v1/rutas-planificacion.

Parameterspageitemsorder

freematica_list_acompanante_ruta

Devuelve la lista paginada de acompañantes de ruta. Endpoint: GET /pvss/v2/acompanante-ruta.

Parameterspageitemsorder

freematica_list_contratos_servicios_global

Devuelve la lista paginada GLOBAL de servicios de todos los contratos. A diferencia de freematica_list_servicios_contrato (que requiere un contrato específico), este endpoint devuelve todos los servicios independientemente del contrato al que pertenecen. Endpoint: GET /pvss/v1/contratos-servicios.

Parameterspageitemsorder

freematica_list_contratos_turnos

Devuelve la lista paginada de turnos de contratos. Endpoint: GET /pvss/v1/contratos-turnos.

Parameterspageitemsorder

freematica_list_contratos_horarios_operativa

Devuelve la lista paginada de horarios de operativa de contratos. Endpoint: GET /pvss/v1/contratos-horarios-operativa.

Parameterspageitemsorder

freematica_list_clases_servicios

Devuelve la lista paginada de clases de servicios. Endpoint: GET /pvss/v1/clases-servicios.

Parameterspageitemsorder

freematica_list_inspectores

Devuelve la lista paginada de inspectores. Endpoint: GET /pvss/v1/inspectores.

Parameterspageitemsorder

freematica_get_inspector_empresa

Devuelve el inspector asignado a la empresa actual. Endpoint: GET /pvss/v1/inspector-empresa.

Takes no parameters.

freematica_list_claves_facturacion

Devuelve la lista paginada de claves de facturación. Endpoint: GET /pvss/v2/claves-facturacion.

Parameterspageitemsorder

freematica_list_incidencias_servicios

Devuelve la lista paginada de incidencias de servicios. Endpoint: GET /pvss/v2/incidencias-servicios.

Parameterspageitemsorder

freematica_get_incidencia_servicio

Devuelve el detalle de una incidencia de servicio por su idReg opaco. Endpoint: GET /pvss/v2/incidencias-servicios/{idReg}.

ParametersidRegrequired

freematica_list_incidencecode

Devuelve la lista paginada de códigos de incidencia (incidencecode). Usa el endpoint v2 por defecto; la versión v1 también existe pero puede diferir en campos. Endpoint: GET /pvss/v2/incidencecode.

Parameterspageitemsorder

freematica_get_contratos_servicios_material

Devuelve el detalle del material asignado a un servicio de contrato por su idReg opaco. Para la lista global de materiales asignados a servicios, usar freematica_list_materiales_asignados_servicios. Endpoint: GET /pvss/v2/contratos-servicios-material/{idreg}.

ParametersidRegrequired

freematica_list_ppre_contratos

Lista paginada de contratos de instalación/mantenimiento (v1). Endpoint: GET /ppre/v1/contratos Devuelve los contratos del módulo de Preventivos y Mantenimiento. Cada item incluye `idReg` opaco para usar en freematica_get_ppre_contrato_v1.

Parameterspageitems

freematica_list_ppre_contratos_v2

Lista paginada de contratos de instalación/mantenimiento (v2). Endpoint: GET /ppre/v2/contratos Versión v2 del listado de contratos ppre. Cada item incluye `idReg` opaco para usar en freematica_get_ppre_contrato_v2.

Parameterspageitems

freematica_get_ppre_contrato_v1

Detalle de un contrato de instalación/mantenimiento (v1). Endpoint: GET /ppre/v1/contratos/{idreg} El parámetro `id` debe ser el campo `idReg` de freematica_list_ppre_contratos.

Parametersidrequired

freematica_get_ppre_contrato_v2

Detalle de un contrato de instalación/mantenimiento (v2). Endpoint: GET /ppre/v2/contratos/{idReg} El parámetro `id` debe ser el campo `idReg` de freematica_list_ppre_contratos_v2.

Parametersidrequired

freematica_list_ppre_contratos_instalacion

Lista paginada de contratos de instalación (v1). Endpoint: GET /ppre/v1/contratosInstalacion Contratos vinculados a instalaciones físicas. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_ppre_tipos_contrato

Catálogo de tipos de contrato ppre (v2). Endpoint: GET /ppre/v2/tipos-contrato Devuelve el catálogo completo de tipos de contrato disponibles. Endpoint de catálogo, sin paginación.

Takes no parameters.

freematica_list_ppre_ordenes_trabajo

Lista paginada de órdenes de trabajo (v1). Endpoint: GET /ppre/v1/ordenes-trabajo Devuelve las órdenes de trabajo del módulo de Preventivos y Mantenimiento. Cada item incluye `idReg` opaco para usar en freematica_get_ppre_orden_trabajo.

Parameterspageitems

freematica_get_ppre_orden_trabajo

Detalle de una orden de trabajo (v1). Endpoint: GET /ppre/v1/ordenes-trabajo/{idreg} El parámetro `id` debe ser el campo `idReg` de freematica_list_ppre_ordenes_trabajo.

Parametersidrequired

freematica_list_ppre_partes

Lista paginada de partes de mantenimiento (v1). Endpoint: GET /ppre/v1/partes Partes de trabajo del módulo de Preventivos y Mantenimiento. Cada item incluye `idReg` opaco para usar en freematica_get_ppre_parte.

Parameterspageitems

freematica_get_ppre_parte

Detalle de un parte de mantenimiento (v1). Endpoint: GET /ppre/v1/partes/{idreg} El parámetro `id` debe ser el campo `idReg` de freematica_list_ppre_partes.

Parametersidrequired

freematica_get_ppre_parte_componentes_ficha_tecnica

Componentes de ficha técnica de un parte de mantenimiento. Endpoint: GET /ppre/v1/partes/{idreg}/componentes-ficha-tecnica El parámetro `id` debe ser el campo `idReg` de freematica_list_ppre_partes.

Parametersidrequired

freematica_list_ppre_parte_ultimas_intervenciones

Últimas intervenciones de un parte de mantenimiento. Endpoint: GET /ppre/v1/partes/{idreg}/ultimas-intervenciones El parámetro `id` debe ser el campo `idReg` de freematica_list_ppre_partes.

Parametersidrequiredpageitems

freematica_list_ppre_partes_orden_trabajo

Lista paginada de partes vinculados a órdenes de trabajo (v2). Endpoint: GET /ppre/v2/partes/partes-orden-trabajo Partes asociados a órdenes de trabajo. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_ppre_partes_fin_mantenedor

Lista paginada de partes fin de mantenedor (v2). Endpoint: GET /ppre/v2/partes/partes-fin-mantenedor Partes finalizados por el mantenedor. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_ppre_cabecera_actas_partes

Lista paginada de cabeceras de actas de partes (v2). Endpoint: GET /ppre/v2/partes/cabecera-actas-partes Cabeceras de las actas de partes de mantenimiento. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_ppre_lineas_actas_partes

Lista paginada de líneas de actas de partes (v2). Endpoint: GET /ppre/v2/partes/lineas-actas-partes Líneas de detalle de las actas de partes de mantenimiento. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_ppre_fichas_instalacion

Lista fichas de instalación (v1). Endpoint: GET /ppre/v1/fichas-instalacion (o /ppre/v1/fichas-instalacion/{idReg} si se proporciona idReg). Si se proporciona `idReg`, el idReg forma parte del path y actúa como filtro. Cada item incluye `idReg` opaco.

ParameterspageidRegitems

freematica_get_ppre_ficha_tecnica

Detalle de una ficha técnica (v1). Endpoint: GET /ppre/v1/ficha-tecnica/{idReg} El parámetro `id` debe ser el campo `idReg` de freematica_list_ppre_fichas_instalacion.

Parametersidrequired

freematica_list_ppre_componentes_ficha_tecnica

Lista componentes de una ficha técnica (v1). Endpoint: GET /ppre/v1/fichas-tecnicas/{idreg}/componentes El parámetro `id` debe ser el campo `idReg` de freematica_list_ppre_fichas_instalacion.

Parametersidrequiredpageitems

freematica_list_ppre_marcajes

Lista paginada de marcajes de presencia (v1). Endpoint: GET /ppre/v1/marcajes Marcajes de entrada/salida del personal de mantenimiento. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_ppre_marcajes_v2

Lista paginada de marcajes de presencia (v2). Endpoint: GET /ppre/v2/marcajes Versión v2 de los marcajes del personal de mantenimiento. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_ppre_incidencias_anomalias

Lista paginada de incidencias y anomalías de mantenimiento (v1). Endpoint: GET /ppre/v1/incidencias-anomalias Incidencias y anomalías registradas en el módulo de Preventivos y Mantenimiento. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_ppre_tipo_instalacion

Lista paginada de tipos de instalación (v1). Endpoint: GET /ppre/v1/tipo-instalacion Catálogo de tipos de instalación disponibles en el sistema. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_pemf_marcajes

Lista paginada de marcajes de campo e-Movifree (v2). Endpoint: GET /pemf/v2/marcajes Marcajes de entrada/salida/novedad del personal de campo (operarios de seguridad). Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_get_pemf_marcaje

Detalle de un marcaje de campo e-Movifree por idReg (v2). Endpoint: GET /pemf/v2/marcajes/{idReg} El parámetro `idReg` debe ser el campo `idReg` de freematica_list_pemf_marcajes.

ParametersidRegrequired

freematica_list_pemf_tracking

Lista paginada de marcajes de tracking e-Movifree (v1). Endpoint: GET /pemf/v1/tracking Marcajes de seguimiento de operarios de campo (versión v1 del endpoint de tracking). Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_pemf_calls

Lista paginada de marcajes CCR (llamadas fijas) de e-Movifree. Endpoint: GET /pemf/v1/calls Marcajes realizados mediante llamada telefónica fija (CCR legacy). Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_pemf_geoposition

Lista paginada de marcajes de geoposición e-Movifree (v1). Endpoint: GET /pemf/v1/geoposition Posiciones GPS de los operarios de campo registradas desde la app e-Movifree. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_pemf_geoposition_v2

Lista paginada de marcajes de geoposición e-Movifree (v2). Endpoint: GET /pemf/v2/geoposition Versión v2 de las posiciones GPS de los operarios de campo. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_pemf_cna

Lista paginada de novedades activas e-Movifree (CNA — Control Novedades Activo). Endpoint: GET /pemf/v2/cna Novedades activas de los operarios de campo en el momento actual. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_pemf_devices

Lista paginada de dispositivos e-Movifree registrados. Endpoint: GET /pemf/v1/devices Dispositivos móviles, fijos y de control registrados en el sistema e-Movifree. Cada item incluye `idReg` (o idDevice) opaco.

Parameterspageitems

freematica_get_pemf_device

Detalle de un dispositivo e-Movifree por idDevice. Endpoint: GET /pemf/v1/devices/{idDevice} El parámetro `idDevice` debe ser el campo `idReg` de freematica_list_pemf_devices.

ParametersidDevicerequired

freematica_list_pemf_rondas

Lista paginada de rondas de seguridad e-Movifree (v1). Endpoint: GET /pemf/v1/rounds Rondas de vigilancia/seguridad realizadas por los operarios de campo. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_pemf_rondas_v2

Lista paginada de rondas de seguridad e-Movifree (v2). Endpoint: GET /pemf/v2/rounds Versión v2 de las rondas de vigilancia/seguridad de los operarios de campo. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_pemf_ronda_points

Lista los puntos de control de una ronda e-Movifree (v1). Endpoint: GET /pemf/v1/rounds/{idRonda}/points Puntos de control (checkpoints) de una ronda de seguridad. El parámetro `idRonda` debe ser el campo `idReg` de freematica_list_pemf_rondas.

ParameterspageitemsidRondarequired

freematica_list_pemf_ronda_points_v2

Lista los puntos de control de una ronda e-Movifree (v2). Endpoint: GET /pemf/v2/rounds/{idRonda}/points Versión v2 de los puntos de control de una ronda de seguridad. El parámetro `idRonda` debe ser el campo `idReg` de freematica_list_pemf_rondas_v2.

ParameterspageitemsidRondarequired

freematica_list_pemf_services

Lista paginada de servicios de campo e-Movifree. Endpoint: GET /pemf/v1/services Servicios de seguridad/vigilancia asignados a los operarios de campo. Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_get_pemf_service

Detalle de un servicio de campo e-Movifree por idService. Endpoint: GET /pemf/v1/services/{idService} El parámetro `idService` debe ser el campo `idReg` de freematica_list_pemf_services.

ParametersidServicerequired

freematica_list_pemf_service_alarms

Lista de alarmas activas de un servicio de campo e-Movifree. Endpoint: GET /pemf/v1/services/{idService}/alarms El parámetro `idService` debe ser el campo `idReg` de freematica_list_pemf_services.

ParametersidServicerequired

freematica_list_pemf_service_issues

Lista de incidencias de un servicio de campo e-Movifree. Endpoint: GET /pemf/v1/services/{idService}/issues El parámetro `idService` debe ser el campo `idReg` de freematica_list_pemf_services.

ParametersidServicerequired

freematica_list_pemf_service_rounds

Lista de rondas de un servicio de campo e-Movifree. Endpoint: GET /pemf/v1/services/{idService}/rounds El parámetro `idService` debe ser el campo `idReg` de freematica_list_pemf_services.

ParametersidServicerequired

freematica_list_pemf_service_jobs

Lista de trabajos/tareas de un servicio de campo e-Movifree. Endpoint: GET /pemf/v1/services/{idService}/jobs El parámetro `idService` debe ser el campo `idReg` de freematica_list_pemf_services.

ParametersidServicerequired

freematica_list_pemf_identificadores_servicio

Lista paginada de identificadores de servicio e-Movifree. Endpoint: GET /pemf/v2/identificadores-servicio Tags/códigos de identificación de los servicios de campo (códigos QR, NFC, etc.). Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_pemf_rutas

Lista paginada de rutas de campo e-Movifree. Endpoint: GET /pemf/v2/routes Rutas de trabajo asignadas a los operarios de campo (turnos, frecuencias, horarios). Cada item incluye `idReg` opaco.

Parameterspageitems

freematica_list_pemf_materiales_consumibles

Lista de materiales consumibles de un servicio de campo e-Movifree. Endpoint: GET /pemf/v2/services/{idReg}/materiales-consumibles Materiales de uso común (consumibles) asignados a un servicio específico. El parámetro `idReg` debe ser el campo `idReg` de freematica_list_pemf_services.

ParametersidRegrequired

Version history

1
  1. v0.11.2LatestOct 22, 2026

Score

90% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts
  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts