Persat Api
  • Persat API v1.0
  • Introducción
    • ¿Qué es una API?
    • ¿Cómo funciona?
  • Primeros Pasos
    • Introducción
    • Niveles de Acceso y Consideraciones Importantes
    • Formato de Respuesta
    • Autenticación
      • Como obtener el Api key
    • Configurar Webhooks
      • Primeros pasos
      • Lógica de reintentos
  • Entidades Básicas
    • Clientes
      • Obtener un cliente
      • Agregar un cliente
      • Modificar un cliente
      • Eliminar un cliente
      • Listar Clientes
      • Listar Grupos de Clientes
      • Listar Tipos de Clientes
      • Listar Campos Personalizados
      • Eventos / Webhooks
        • Cliente creado
        • Cliente modificado
        • Cliente eliminado
    • Objetos en Cliente
      • Obtener estructura/esquema de un Objeto en Cliente
      • Listar estructuras/esquemas de los Objetos en Cliente
      • Obtener objeto
      • Insertar objeto
      • Modificar objeto
      • Eliminar objeto
      • Listar Objetos en un Cliente particular
      • Sincronizacion completa
    • Master Db
      • Obtener estructura/esquema de una Master Db
      • Listar estructuras/esquemas de las Master Dbs
      • Obtener elemento
      • Insertar elemento
      • Modificar elemento
      • Eliminar elemento
      • Sincronizacion completa
    • Dispositivos
      • Obtener Dispositivo
      • Listar Dispositivos
    • Usuarios
      • Listar Usuarios
      • Listar Técnicos Activos
    • Seguimientos
      • Crear seguimientos
  • Modulos
    • 🚚Rastreo Satelital
      • Obtener última posición GPS
      • Obtener estadísticas de Rastreo
      • Obtener Visitas a Clientes
      • Integrar Dispositivos de Rastreo a Persat
    • ☑️Formularios Digitales
      • Obtener estructura/esquema de un Formulario
      • Listar estructuras/esquemas de todos los Formularios
      • Obtener formulario
      • Obtener PDF del formulario
      • Tipos de Widgets
        • Campo Texto
        • Campo Párrafo
        • Campo Link
        • Campo Número
        • Campo Fecha
        • Campo Hora
        • Seleccion Simple
        • Lista Desplegable
        • Selección Múltiple
        • Campo Foto (deprecado)
        • Campo Fotos
        • Firma Digital (deprecado)
        • Firma Digital v2
        • Etiquetas
        • Tabla Smart
        • Tabla Master Db
        • Lista de Objetos en Cliente
        • Tabla de Objetos en Cliente
      • Insertar formulario
      • Modificar formulario
      • Modificar estado de formulario
      • Listar historial de estados de un formulario
      • Listar formularios
      • Estados de formulario
        • Obtener estado
        • Listar estados
      • Eventos / Webhooks
        • Formulario Creado
        • Formulario Modificado
        • Formulario estado modificado
        • Formulario estado modificado masivamente
    • 🛠️Órdenes de Trabajo
      • Obtener estructura/esquema de un Tipo de OT
      • Listar estructuras/esquemas de todos los tipos de OTs
      • Administrar Etiquetas
        • Obtener Etiqueta
        • Insertar Etiqueta
        • Modificar Etiqueta
        • Eliminar Etiqueta
        • Listar Etiquetas
      • Obtener OT
        • PENDIENTE sin instrucciones
        • PENDIENTE con instrucciones
        • PROYECTADA sin instrucciones
        • PROYECTADA con instrucciones
        • ASIGNADA
        • INFORME
        • VENCIDA
        • CERRADA_OK
        • CERRADA_CON_DESVIO
        • CERRADA_NO_CUMPLIDA
      • Obtener PDF de la OT
      • Insertar OT
        • Insertar PENDIENTE
        • Insertar PROYECTADA
        • Insertar ASIGNADA
      • Modificar OT
        • Modificar etiquetas
        • Cancelar OT
        • Mover a estado PENDIENTE
      • Listar OTs
      • Obtener link de trackeo
      • Eventos / Webhooks
        • OT creada
        • OT modificada
        • OT finalizada
        • OT cerrada
    • 📦Gestión de Entregas
      • Obtener estructura/esquema de un Tipo de Entrega
      • Listar estructuras/esquemas de todos los tipos de Entregas
      • Administrar Etiquetas
        • Obtener Etiqueta
        • Insertar Etiqueta
        • Modificar Etiqueta
        • Eliminar Etiqueta
        • Listar Etiquetas
      • Obtener entrega
        • Estado PENDING
        • Estado ROUTING
        • Estado ASSIGNED
        • Estado FINISHED
        • Estado FINISHED_WITH_DEVIATION
        • Estado NOT_FINISHED
      • Obtener PDF de entrega
      • Crear entrega
        • Crear Entrega Simple
        • Crear Entrega en Cliente
      • Eliminar entrega
      • Listar Entregas
      • Obtener link de trackeo
      • Eventos / Webhooks
        • Entrega Creada
        • Entrega Finalizada
        • Entrega Eliminada
      • Rutas de Entrega
        • Obtener Ruta
        • Listar Rutas
        • Eventos / Webhooks
          • Ruta Asignada
          • Ruta Modificada
          • Ruta Cancelada
Powered by GitBook
On this page
  • Ejemplo de consulta
  • Analizando la Respuesta
  • Procedimimento para la Sincronización
  1. Entidades Básicas
  2. Objetos en Cliente

Sincronizacion completa

Si quiero tener todos los objetos sincronizados contra otro sistema, existe un endpoint especial que permite listar únicamente los objetos que hayan sido modificados a partir de una fecha particular. Entonces, sobre todo para cuando hay muchos objetos, es posible ir haciendo actualizaciones parciales.

GET https://api.persat.com.ar/v1/listclientobjvaluesupdated/obj_id

Path Parameters

Name
Type
Description

obj_id*

Number

Identificador del tipo de objeto. Heladeras por ej.

Query Parameters

Name
Type
Description

offset

number

Mismo concepto de SQL para la paginación. En caso de no enviarse el valor será 0 (cero)

limit*

number

Mismo concepto de SQL para la paginación. Max: 100

last_updated*

IsoDate

Fecha UTC a partir de la cual buscar. Formato yyyy-MM-ddTHH:mm:ss.SSSZ

Headers

Name
Type
Description

Authorization*

String

Bearer API_KEY

{
    "success": false,
    "error": {
        "status": 400,
        "type": "BAD_REQUEST",
        "userMessage": "'offset' debe ser un number >= 0"
    }
}

Ejemplo de consulta

En este ejemplo queremos listar todos los objetos de tipo Heladera que hayan sufrido una modificación o hayan sido creados a partir de last_updated incluido.

IMPORTANTE:

last_updated: Es una fecha UTC.

Para este ejemplo buscamos todos los objetos de tipo obj_id = 2 (Heladeras) que hayan sido modificados a partir del 19 de Mayo de 2022 a las 08:00 UTC.

https://api.persat.com.ar/v1/listclientobjvaluesupdated/2?offset=0&limit=2&last_updated=2022-05-19T08:00:00.000Z

Analizando la Respuesta

{
    "success": true,
    "paging": {
        "offset": 0,
        "limit": 2,
        "result": 2,
        "total": 18
    },
    "data": [
        {
            "uid_client": "AAA123",
            "obj_id": 2,
            "fields": {
                "1": "KK895600001",
                "4": "No frost",
                "3": "3000"
                "6": "",
                "7": "",
                "8": "Blanca" 
            },
            "updated": "2022-05-19T09:21:25.000Z"
        },
        {
            "uid_client": "BBB6765",
            "obj_id": 2,
            "fields": {
                "1": "AABCSA090AA",
                "4": "cycle de frost",
                "3": "1500"
                "6": "",
                "7": "",
                "8": "Negra"
            },
            "updated": "2022-05-19T15:50:01.000Z"
        }
    ]
}

Procedimimento para la Sincronización

El procedimiento correcto para hacer la sincronización de un listado con muchos objetos en cliente es el siguiente:

La primera vez, realizamos un request con el parametro last_updated con una fecha del pasado a la contratación de Persat (ej: 2000-01-01T00:00:00.000Z), e iteramos modificando el offet hasta barrer todos los objetos. Una vez sincronizados guardamos la fecha UTC en que realizamos esta primer sincronización.

Luego, cada vez que queremos sincronizar, repetimos el procedimiento anterior pero indicando en el parámetro last_updated la fecha guardada anteriormente. Finalizado el proceso guardamos la nueva fecha UTC de sincronización y repetimos cada vez que queramos sincronizar.

Last updated 3 months ago

El resultado es similar al que se explica en

Listar Objetos en un Cliente particular