Mayo 21, 2022
Parámetro para filtrar por cualquier campo de fecha según cada objeto.
En los parámetros de la query se podrá agregar la llave 'filterWithDate' con el valor de alguno de los campos de fecha del objeto para poder filtrar según ese dato. Se podrÃa entonces filtrar por ejemplo, por la fecha de creación o la fecha de la última actualización del objeto.
https://app.handy.la/api/v2/{objecto}?filterWithDate=lastUpdated
Endoint para obtener un producto especÃfico de una lista de precios.
GET /api/v2/priceList/{priceListCode}/product/{productCode}
Abril 1, 2022
Endpoint para obtener datos generales de la compañÃa.
Se mostrará el nombre de la empresa, moneda, unidad de producto y el status de la suscripción.
{ "subscriptionStatus": "ACTIVE", "company": "Handy", "currency": "MXN", "productUnit": "PZA" }
Obtener los ids de las ventas de las rutas cerradas
Al agregar este parámetro solo se regresarán rutas cerradas
https://app.handy.la/api/v2/route?filterWithDate=dateClosed&start=${startDate}&end={endDate}
Obtener solo rutas cerradas o solo rutas abiertas.
Agregamos un nuevo parámetro para filtrar las rutas por su status.
Obtener solo rutas abiertas
https://app.handy.la/api/v2/route?closed=false
Obtener solo rutas cerradas
https://app.handy.la/api/v2/route?closed=true
Si no se incluye este parámetro se obtendrán todas las rutas, sin importar su status.
Filtrar rutas por fecha de liquidación
Ahora ya puedes filtrar las rutas por la fecha en que fueron cerradas, solo es necesario agregar el parámetro de filterWithDate con el valor de dateClosed
Ejemplo:
https://app.handy.la/api/v2/route?includeSalesOrders=true&filterWithDate=dateClosed&start=01/03/2022 14:00:00&end=01/03/2022 14:01:00
Enero 28, 2022
Agregar Extras a usuario
Ahora el campo personalizable de usuario llamado Extras, aparecerá donde se muestren datos de usuario en las respuestas de la API.
Por ejemplo, en el campo createdBy de un pedido:
{
...
"createdBy": {
"name": "User number one",
"id": 1,
"enabled": true,
"username": "user@example.com",
"extras": "NUEVO CAMPO"
}
}
Esto es útil para las integraciones porque podrÃas escribir un objeto JSON para hacer referencia por ejemplo para asignar almacenes a los vendedores.
{
...
"createdBy": {
"name": "User number one",
"id": 1,
"enabled": true,
"username": "user@example.com",
"extras": "{\"warehouse\": 1}"
}
}
Enero 10, 2022
Asignar Zona por descripción
Ya es posible asignar a un cliente la Zona usando nombre de la zona en lugar del ID. Le das la descripción y si existe, la toma, si no, la crea.
Ya no es necesario hacer esto en dos pasos (crear zona y luego asignarla), aunque todavÃa se puede hacer asÃ.
Para especificar por texto en lugar de por ID, se necesita especificar la descripción como objeto:
Ya no es necesario hacer esto en dos pasos (crear zona y luego asignarla), aunque todavÃa se puede hacer asÃ.
Para especificar por texto en lugar de por ID, se necesita especificar la descripción como objeto:
{ "zone": { "description": "Cadena de texto" }
Asignar Familia de producto por descripción
Lo mismo de las zonas, aplica para las familias de productos.
Asignar ID externo de pedido para futura referencia
Ahora se puede actualizar un pedido sólo para agregar un dato llamado externalId, donde puedes guardar el ID del pedido que se sincronizó hacia otro sistema externo.
Esto es útil si se borra el pedido en el futuro.
Puedes hacer referencia al ID que corresponde al sistema externo y asà hacer el borrado en el sistema externo también.
Para hacerlo, sólo haces un PUT a /api/v2/salesOrder/:id con el body:
{ externalId: "1" }
externalId es de tipo String.
Diciembre 11, 2021
LÃmite de solicitudes por minuto
Se aplicó la misma lógica de lÃmite de solicitudes por minuto de la API v2 a la API v1.
Esto para prevenir un par de abusos hacia las llamadas a la API y poder mantenerla estable y robusta para todos.
El lÃmite es de 500 solicitudes por minuto.
Consulta la documentación de la API, o los ejemplos de uso, para saber más.