Lógica de funcionamiento de la API en el modo de extracción de datos (output mode)

Generate from scratch and synchronize: el instante de tiempo, como aliado en la extracción de datos

El servicio web API de Sales Layer está diseñado para que puedas configurar diferentes modelos de la información contenida en tu catálogo con el PIM de Sales Layer. Gracias a los conectores de exportación, podrás crear con una UI intuitiva diferentes modelos de datos de tu catálogo para diferentes usos, como, por ejemplo, el repositorio de datos de una web de catálogo, una tienda online, un servicio de generación de catálogo impreso, o cualquier software propio o de terceros que necesite tus datos. Comparte solamente la información que cada software necesita y manipula los datos de salida al gusto gracias a la potencia y versatilidad de nuestros conectores, manteniendo tu propia lógica de negocio de catálogo.

No obstante, la mayor parte de los catálogos de un negocio suelen ser amplios, tanto en número de referencias como en volumen de atributos. Si a ello añadimos posibles procesados de imágenes o documentos, obtener y sincronizar aquellos datos actualizados de nuestro catálogo a través de una API puede conllevar mucho tiempo y consumo de ancho de banda.

Es por ello que la API de Sales Layer incorpora dos parámetros en las peticiones de extracción de datos, a los que ya nos referimos anteriormente como time y last_update , y que aceptan un valor en formato de fecha UNIX TIMESTAMP.

La combinación de valores de estos dos parámetros van a indicar a la API un punto de partida temporal, a partir del cual extraer datos de referencias que hayan sufrido alguna modificación a partir de las fechas indicadas.

En la mayoría de usos estos dos parámetros pueden contener el mismo valor de tiempo; se tratará del instante a partir del cual buscar cambios en ítems de diferentes tablas para obtener una respuesta acotada de cambios a través de la API de Sales Layer.

Imagina un catálogo con 100.000 referencias de artículos. Utilizas la API para crear una primera sincronización de tu tienda online. Esta operación tiene un coste de tiempo de proceso y ancho de banda. Si mañana cambias la descripción o el precio de diez de esas referencias, parece ilógico tener que obtener de nuevo los datos de las 100.000 referencias para re-sincronizar tu catálogo web, salvo que sea expresamente tu deseo. 

Para evitar esta situación, es posible indicar en la petición un valor  last_update que indique cuándo sincronizaste por última vez tu catálogo web mediante una petición a la API, y un valor de time, previo a la modificación de esas diez referencias (posiblemente coincidente con el anterior), para obtener una respuesta de aquello que necesites volver a sincronizar, y que son las diez referencias en cuestión.

El siguiente gráfico muestra un ejemplo sencillo de los resultados de peticiones a la API en función de los eventos ocurridos en la cuenta de cliente:

Resultados de peticiones al API

La API de Sales Layer mantiene una lógica de respuesta de datos basada en los parámetros de tiempo que son enviados en la petición correspondiente. En cualquier momento es posible obtener los datos de todos lo ítems candidatos a exportación mediante la configuración del conector: categorías, productos, variantes o tablas de material de venta, iniciando los parámetros temporales a un valor de 0, o anterior a la primera carga de producto.

Este modo de funcionamiento permite una lógica coherente de cara a la sincronización de datos por aplicaciones de sincronización externas.

Atento: un cambio en la configuración o parámetros del conector de exportación utilizado reiniciará la línea de tiempo de la API a la fecha en que se produzca dicha modificación. Será necesario para garantizar que actualizaciones anteriores incluyan la nueva configuración de extracción.

Es recomendable utilizar la API de Sales Layer como un servicio de sincronización contra un repositorio local. No es recomendable el uso de la API de Sales Layer para procesar consultas de datos de ítems concretos en tiempo real.

El SDK público de Sales Layer, basado en la tecnología LAMP, permite crear repositorios locales de datos a través de peticiones transparentes a la API de Sales Layer mediante el servicio Updater SDK. Esto facilitará la sincronización de datos de su cuenta PIM con servicios locales de consulta directa, como pueden ser tiendas online o catálogos web.

Descargue el SDK de Sales Layer (PHP Based) aquí. 

Sales Layer PIM dispone de un conector para la creación de microsites online que puede facilitar la creación de su catálogo digital, accesible de forma pública. Consulte los términos del servicio en nuestros tutoriales.