GMAO-GSAT · Integración

GSAT API

Integra los datos de tu GMAO-GSAT con cualquier sistema externo. Nuestra API REST expone en tiempo real los presupuestos y los partes de trabajo de tu organización.

PowerShell

curl.exe -k -H "X-API-KEY: ..." /api/v1/presupuestos{
          "page": 1,
          "pageSize": 10,
          "total": 142,
          "data": [
            { "id": 65233, "numero": 1516,
              "clienteId": 123, "estado": 1 }
          ]
        }

Integración sin fricción

¿Qué es la API GMAO de GSAT?

La API de GSAT es una interfaz REST que permite a sistemas externos consultar y obtener datos del núcleo de GMAO-GSAT de forma segura y estructurada. Está diseñada para integraciones empresariales: ERP, portales de cliente, cuadros de mando o cualquier aplicación que necesite acceder a la información de servicio técnico de tu empresa.

Las respuestas se devuelven en formato JSON con paginación, filtros por fecha y estado, y autenticación con una clave de acceso en la cabecera X-API-KEY.

REST sobre HTTPS

Protocolo estándar, compatible con cualquier lenguaje o plataforma.

Clave X-API-KEY

Clave de acceso enviada en la cabecera X-API-KEY. Nunca va en la URL.

JSON paginado

Respuestas estructuradas con paginación, filtros y metadatos de consulta.

Datos en tiempo real

Cada llamada devuelve el estado actual del sistema GMAO-GSAT.

Referencia

Endpoints disponibles

La API expone actualmente dos recursos principales. Cada endpoint soporta filtros, paginación y ordenación por los campos más relevantes del negocio.

Su llamada · se actualiza al cambiar los parámetros
curl.exe -k -H "X-API-KEY: TU_API_KEY_REAL" "https://SERVIDOR:7264/api/v1/presupuestos?page=1&pageSize=10"

Presupuestos

Devuelve el listado de presupuestos generados en GMAO-GSAT. Permite consultar el histórico completo o filtrar por estado, cliente, rango de fechas e importe. Ideal para cuadros de mando comerciales, integraciones con ERP o reporting externo.

Parámetros de consulta

ParámetroTipoDescripción
pageintegerPágina de resultados. Mínimo 1.
Ejemplo: page=2
pageSizeintegerResultados por página. Entre 1 y 100.
Ejemplo: pageSize=25
sortBystringCampo por el que ordenar. Nombre exacto.
Ejemplo: sortBy=Id
sortDirstringDirección del orden: asc o desc.
Ejemplo: sortDir=desc
IdintegerIdentificador exacto del presupuesto.
Ejemplo: Id=65233
NumerostringNúmero exacto del presupuesto.
Ejemplo: Numero=1516
SeriestringSerie exacta del presupuesto.
Ejemplo: Serie=1030
ClienteIdintegerIdentificador exacto del cliente.
Ejemplo: ClienteId=123
EstadointegerEstado exacto del presupuesto.
Ejemplo: Estado=1
fechaDesdedatetimeFecha más antigua del rango. Formato: AAAA-MM-DDTHH:MM:SSZ.
Ejemplo: fechaDesde=2026-01-01T00:00:00Z
fechaHastadatetimeFecha más reciente del rango (inclusiva). Formato: AAAA-MM-DDTHH:MM:SSZ.
Ejemplo: fechaHasta=2026-12-31T23:59:59Z

Campos de respuesta principales

  • idIdentificador único del presupuesto
  • referenciaNúmero de referencia visible (ej. PRE-2026-0142)
  • clienteNombre y CIF del cliente
  • estadoEstado actual del presupuesto
  • importe_netoImporte sin impuestos
  • importe_totalImporte total con IVA
  • fecha_emisionFecha de creación del presupuesto
  • fecha_validezFecha límite de validez
  • tecnico_asignadoNombre del técnico responsable
Ejemplo de respuesta · JSON
{
  "page": 1,
  "pageSize": 25,
  "total": 142,
  "data": [
    {
      "id": 65233,
      "numero": 1516,
      "serie": "1030",
      "clienteId": 123,
      "estado": 1,
      "importe": 1850.00,
      "fechaEmision": "2026-05-10T00:00:00Z"
    }
  ]
}

Partes de trabajo

Devuelve los partes de trabajo registrados en GMAO-GSAT. Cada parte recoge la intervención técnica completa: cliente, instalación, técnico, tiempos, materiales empleados y estado de cierre. Permite construir informes de productividad, facturación o SLA desde sistemas externos.

Parámetros de consulta

ParámetroTipoDescripción
pageintegerPágina de resultados. Mínimo 1.
Ejemplo: page=2
pageSizeintegerResultados por página. Entre 1 y 100.
Ejemplo: pageSize=25
sortBystringCampo por el que ordenar. Nombre exacto.
Ejemplo: sortBy=Id
sortDirstringDirección del orden: asc o desc.
Ejemplo: sortDir=desc
IdintegerIdentificador exacto del parte.
Ejemplo: Id=1
NumerostringNúmero exacto del parte de trabajo.
Ejemplo: Numero=1
ClienteIdintegerIdentificador exacto del cliente.
Ejemplo: ClienteId=5
EstadointegerEstado exacto del parte.
Ejemplo: Estado=1
SeriestringSerie exacta del parte.
Ejemplo: Serie=1
ProyectoIdintegerIdentificador exacto del proyecto vinculado.
Ejemplo: ProyectoId=25
PresupuestoIdintegerIdentificador del presupuesto relacionado.
Ejemplo: PresupuestoId=65233
fechaDesdedatetimeFecha más antigua del rango. Formato: AAAA-MM-DDTHH:MM:SSZ.
Ejemplo: fechaDesde=2026-01-01T00:00:00Z
fechaHastadatetimeFecha más reciente del rango (inclusiva). Formato: AAAA-MM-DDTHH:MM:SSZ.
Ejemplo: fechaHasta=2026-12-31T23:59:59Z

Campos de respuesta principales

  • idIdentificador único del parte
  • numero_parteReferencia visible (ej. PT-2026-3871)
  • clienteNombre y CIF del cliente
  • instalacionDescripción e ID de la instalación o máquina
  • tecnicoNombre del técnico asignado
  • estadoEstado actual del parte
  • fecha_aperturaFecha y hora de apertura
  • fecha_cierreFecha y hora de cierre (null si abierto)
  • tiempo_resolucion_hTiempo total en horas desde apertura a cierre
  • descripcion_averiaDescripción del problema reportado
  • descripcion_intervencionDescripción de la actuación realizada
  • materialesArray de materiales empleados con referencia y cantidad
Ejemplo de respuesta · JSON
{
  "page": 1,
  "pageSize": 25,
  "total": 3871,
  "data": [
    {
      "id": 10042,
      "numero": 3871,
      "clienteId": 5,
      "proyectoId": 25,
      "presupuestoId": 65233,
      "estado": 1,
      "fechaApertura": "2026-05-14T09:30:00Z",
      "fechaCierre": "2026-05-14T12:00:00Z"
    }
  ]
}

Seguridad

Autenticación y acceso

Todas las llamadas requieren una clave de acceso enviada en la cabecera HTTP X-API-KEY. La clave es única por cliente, la genera el equipo de Grupo Talia y puede revocarse en cualquier momento.

  • Cabecera obligatoria: X-API-KEY con tu clave real
  • Comunicación cifrada HTTPS en todas las peticiones (-k para certificados locales)
  • Clave única por entorno: producción y desarrollo tienen claves separadas
  • API de solo lectura: no crea, modifica ni elimina datos
  • Límite de llamadas configurable según acuerdo de servicio
Ejemplos en PowerShell / curl.exe
# Listado de presupuestos (página 1, 10 resultados)
curl.exe -k -H "X-API-KEY: TU_API_KEY_REAL" "https://SERVIDOR:7264/api/v1/presupuestos?page=1&pageSize=10"

# Presupuesto concreto por ID
curl.exe -k -H "X-API-KEY: TU_API_KEY_REAL" "https://SERVIDOR:7264/api/v1/presupuestos/65233"

# Partes de un presupuesto concreto
curl.exe -k -H "X-API-KEY: TU_API_KEY_REAL" "https://SERVIDOR:7264/api/v1/partes-trabajo?PresupuestoId=65233&page=1&pageSize=10"

# Verificar que la API responde
curl.exe -k -H "X-API-KEY: TU_API_KEY_REAL" "https://SERVIDOR:7264/health/ready"

Referencia rápida

Reglas y códigos de error

Conocer las restricciones de la API y el significado de cada código de respuesta reduce el tiempo de integración y facilita la detección de problemas.

Reglas importantes

  • Usa siempre curl.exe (no curl) en PowerShell para evitar diferencias de comportamiento.
  • La cabecera X-API-KEY es obligatoria en todas las llamadas.
  • Usa -k si el certificado HTTPS es local o interno.
  • El parámetro depth no está permitido: devuelve error 400.
  • En los endpoints de detalle por ID (/presupuestos/{id}) no añadas parámetros extra.
  • Los filtros funcionan por coincidencia exacta: envía el valor completo, no una parte.
  • page debe ser 1 o mayor. pageSize entre 1 y 100.
  • fechaDesde no puede ser mayor que fechaHasta. El rango es inclusivo.
  • sortDir solo acepta asc o desc. Cualquier otro valor devuelve error 400.

Códigos de respuesta HTTP

  • 200OK

    La llamada es correcta y devuelve los datos solicitados.

  • 400Bad Request

    Parámetro incorrecto, valor no permitido o combinación inválida (p. ej. depth, sortDir erróneo, fechaDesde > fechaHasta, page < 1).

  • 401Unauthorized

    Falta la cabecera X-API-KEY o la clave no es correcta.

  • 403Forbidden

    La clave es válida pero no tiene permiso para esa operación.

  • 404Not Found

    El registro solicitado no existe en la base de datos.

  • 429Too Many Requests

    Se han realizado demasiadas consultas en poco tiempo. Espera y vuelve a intentarlo.

  • 504Gateway Timeout

    La consulta tardó demasiado. Usa filtros más concretos o reduce el pageSize.

Siga explorando

También le puede interesar

Certificados e informes

Genere informes de mantenimiento y más de 15 certificados BOE (RITE, gases fluorados, PCI) desde el parte de trabajo…

Ver Certificados e informes

Integración A3ERP

Integración A3ERP con GMAO-GSAT: sincroniza clientes, proyectos, materiales, albaranes y presupuestos sin dobles…

Ver Integración A3ERP

GSAT Responde

Guías GMAO-GSAT paso a paso en PDF: cómo generar un aviso, partes de trabajo, preventivos, planificador y cliente web…

Ver GSAT Responde

Siguiente paso

¿Quieres integrar GSAT con tu sistema?

Contacta con nuestro equipo para solicitar el acceso a la API, recibir la documentación técnica completa y definir el alcance de la integración.