API v2

Índice

Primeros pasos

Datos maestros

Artículos y productos

Tienda online

Pedidos y compras

Facturación - Débito

Facturación - Crédito

Pagos y carros

Pronóstico

Logística

Referencia de modelos


Changelog

Versión Descripción Fecha Autor
2.0.4 Añadido endpoint TransportScheduleRouteEtag para rutas de transporte con paradas embebidas 2026-05-03 DDH
2.0.3 Añadido endpoint PrognosesReservation para reservas de pronóstico 2026-03-09 DDH
2.0.2 Cambiadas rutas ListPreOrderGroupItemEtag: Count/ y / 2026-01-09 DDH
2.0.1 Añadidos endpoints Count a todos los endpoints (excepto ShopFavorites) para totales de registros 2026-01-08 DDH
2.0.0 Primera versión V2 de la API con sincronización basada en Etag 2026-01-08 DDH

Primeros pasos

Introducción

La API V2 utiliza sincronización basada en Etag para una recuperación incremental eficiente de datos. Cada registro contiene un valor Etag — simplemente pase el Etag del último registro para obtener el siguiente lote de registros nuevos o modificados.

Mejoras clave en V2:

  • Paginación basada en Etag para sincronización incremental fiable
  • Todos los endpoints soportan sincronización incremental

La autorización funciona igual que en V1 — necesita estar autorizado para cada base de datos a la que se conecta. Si no está autorizado, recibirá el estado HTTP 401 (Unauthorized).

Las secciones siguientes describen:

  • Información general sobre formatos JSON, códigos de estado y Etags
  • Todos los endpoints GET disponibles organizados por categoría
  • Especificaciones detalladas de modelos

General

JSON

Información sobre tipos específicos y su formateo en JSON.

Formato DateTime

Símbolo Descripción Ejemplo
yyyy año 2026
MM mes 01
dd día 31
HH hora 13
mm minuto 01
ss segundos 22
tttttt zona horaria +02:00
Z zona UTC Z

Date

  • Formato: yyyy-MM-dd
  • Ejemplo: 2026-12-30

DateTime

  • Formato: yyyy-MM-dd\THH:mm:ssttttttt
  • Ejemplo: 2026-12-30T13:40:20+02:00
  • Observaciones: Usar zona horaria del deudor

LanguageValue

Objeto que contiene todos los idiomas disponibles (ISO-639-1).

{
  "nl": "Designación holandesa",
  "de": "Designación alemana",
  "fr": "Título francés"
}

Valor Null

No envíe parámetros sin valor.

Mal:

{
  "RequiredParameter": "text",
  "OptionalParameter": null
}

Bien:

{
  "RequiredParameter": "text"
}

Codificación

UTF-8


ETags (Entity Tags)

La API V2 usa ETags para sincronización incremental eficiente. Cada registro contiene un valor Etag que se incrementa con cada cambio.

Cómo funciona la sincronización Etag

  1. Sincronización inicial: Llamar al endpoint sin parámetro Etag para obtener el primer lote
  2. Obtener último Etag: Tomar el Etag del último registro de la respuesta
  3. Próxima sincronización: Pasar este Etag como parámetro para obtener el siguiente lote
  4. Repetir: Hasta recibir un array vacío

Ejemplo de flujo

# Primera petición - sin Etag
GET /api/v2/ArticleEtag
# Devuelve 2000 registros, el último tiene Etag: "a1b2c3d4-..."

# Segunda petición - usar último Etag
GET /api/v2/ArticleEtag/a1b2c3d4-...
# Devuelve siguientes 2000 registros, último Etag: "e5f6g7h8-..."

# Tercera petición
GET /api/v2/ArticleEtag/e5f6g7h8-...
# Devuelve [] - sincronización completa

Al almacenar y reutilizar el último Etag, solo recibirá registros nuevos o modificados en sincronizaciones posteriores.

Importante: Manejo de actualizaciones

Los registros pueden aparecer múltiples veces en diferentes peticiones de sincronización cuando son modificados.

Cuando reciba un registro con un ID que ya existe en su base de datos local, sobrescriba el registro existente con los nuevos datos. Esto es una actualización, no un duplicado.

Escenario de ejemplo:

  1. La sincronización inicial devuelve Article con Id "articles/123" y Name "Red Roses"
  2. El artículo se modifica en EasyFlor (nombre cambiado a "Red Roses Premium")
  3. La próxima sincronización incremental devuelve el mismo Id "articles/123" con Name actualizado "Red Roses Premium"
  4. Acción: Sobrescriba su registro local con Id "articles/123"

Principio clave: El campo Id es el identificador único. Si recibe un registro con un Id que ya tiene, es una actualización — reemplace el registro antiguo completamente con los nuevos datos.


Códigos de estado

Código Descripción
200 OK - Petición exitosa
400 BadRequest - Objeto con error
401 Unauthorized - Autenticación requerida o fallida
404 NotFound - Recurso no encontrado
500 ServerError - Error procesando mensaje

Formato de respuesta de error:

{
  "error": "<error>",
  "message": "<error legible>"
}

Consejos

  • El orden de propiedades en JSON no está garantizado - parsee por nombre de propiedad, no por posición
  • Cualquier propiedad no requerida puede ser NULL
  • Use siempre el Etag del último registro en la respuesta para su próxima petición
  • Una respuesta de array vacío significa que la sincronización está completa
  • Todos los endpoints tienen un endpoint /Count para comprobar el número total de registros

Endpoints Count

Cada endpoint V2 tiene un endpoint Count correspondiente para recuperar el número total de registros sin obtener los datos:

Formato: GET /api/v2/{EndpointName}/Count

Ejemplos:

  • GET /api/v2/PurchaseEtag/Count - Devuelve total de compras
  • GET /api/v2/DebtorEtag/Count - Devuelve total de deudores
  • GET /api/v2/ListPreOrderGroupItemEtag/Count/{id} - Devuelve total de items en grupo específico

Devuelve: Entero representando el total

Nota: ShopFavoritesEtag no tiene endpoint Count debido a su lógica compleja de agregación.


Recomendaciones de frecuencia de sincronización

Diferentes endpoints tienen diferentes frecuencias de sincronización recomendadas según la frecuencia con que cambian los datos:

Endpoints de datos en tiempo real (intervalo de 5 minutos recomendado)

Estos endpoints proporcionan datos transaccionales que cambian frecuentemente:

  • PreOrder
  • Purchase
  • DistributedPurchase
  • DistributedPurchaseOrderable
  • Invoice
  • DebetInvoicePurchaseItem
  • DebetInvoiceCustomItem
  • DebetInvoicePackagingItem
  • DebetInvoiceTrolleyItem
  • CreditInvoicePurchaseItem
  • CreditInvoiceCustomItem
  • CreditInvoiceDepositItem
  • Payment
  • DistributedTrolley
  • Supplier
  • Debtor
  • ListPreOrderGroupItem
  • ListArticleSort
  • PrognosesReservation

Recomendación: Sincronizar cada 5 minutos durante horario laboral.

Endpoints de datos horarios (intervalo de 1 hora recomendado)

Estos endpoints proporcionan datos logísticos que cambian moderadamente:

  • TransportScheduleRoute

Recomendación: Sincronizar una vez por hora durante el horario operativo.

Endpoints de datos maestros (sincronización diaria recomendada)

Estos endpoints proporcionan datos maestros relativamente estáticos:

  • Administration
  • Country
  • Currency
  • Location
  • MarkupCategory
  • Remark
  • ListGroup
  • Employee
  • Article
  • ArticleSort
  • ArticleGroup
  • ShopDebtorSession
  • ShopFavorites
  • PrognosePrice
  • PrognoseQuantity

Recomendación: Sincronizar una vez al día. Para distribuir la carga del servidor, aleatorizar la hora de sincronización de cada endpoint a lo largo del día en lugar de sincronizar todos los endpoints a la misma hora fija.


Autorización / iniciar sesión

Comando: api/authorization

Tras autorización exitosa, recibirá una cookie con una sesión. Adjunte esta cookie a cualquier otra llamada que haga. La sesión está vinculada al usuario y expirará cuando se haga otra llamada con el mismo nombre de usuario en caso de inicio de sesión válido.

Al recibir el código HTTP 401, reautorice.

Parámetros Post

Nombre de propiedad Descripción Tipo de datos Requerido
Username Nombre de usuario en la base de datos a conectar string
Password Contraseña del usuario en la base de datos string
Database La base de datos a la que conectar string

Ejemplo Post

POST https://api.easyflor.eu/api/authorization
{
  "Username": "api",
  "Password": "wouldntyouliketoknow",
  "Database": "EasyFlor-Demo"
}

Devuelve: 200 OK / 401 Unauthorized


Autorización basada en JWT Bearer Token

Comando: api/authorizationtoken

Tras autorización exitosa, recibirá un modelo con un Token. Añada este token como cabecera a cualquier otra llamada. El token está vinculado al usuario y expirará después de la fecha de expiración.

Al recibir el código HTTP 401, reautorice.

Parámetros Post

Nombre de propiedad Descripción Tipo de datos Requerido
Username Nombre de usuario en la base de datos string
Password Contraseña del usuario string
Database La base de datos string

Ejemplo Post

POST https://api.easyflor.eu/api/authorizationtoken
{
  "Username": "api",
  "Password": "wouldntyouliketoknow",
  "Database": "EasyFlor-Demo"
}

Devuelve: 200 OK / 401 Unauthorized

Nombre de propiedad Descripción Tipo de datos
Token Token usado para autenticación en cada petición string
Expiration Fecha de expiración tras la cual el Token deja de ser válido DateTime

Ejemplo de petición autorizada

curl --location --request GET 'https://api.easyflor.eu/api/v2/ArticleEtag' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer ##TOKEN##'

Cierre de sesión

Nota: El cierre de sesión solo se usa para autorización basada en Cookie. Con autorización basada en JWT Bearer Token, el token expirará por sí solo después de un tiempo determinado.

Comando: api/unauthorization

Cierre de sesión basado en cookie. Al enviarse, la cookie que inició la sesión queda inválida y cualquier comando posterior recibirá una excepción 401 unauthorized.

Parámetros Post: Ninguno

Ejemplo Post:

POST https://api.easyflor.eu/api/unauthorization

Devuelve: Nada


Datos maestros

Debtors

Endpoints:

  • GET /api/v2/DebtorEtag/{etag?} - Obtener deudores
  • GET /api/v2/DebtorEtag/Count - Obtener total

Una empresa o persona a la que se entregan bienes y se envían facturas.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Parámetros

Parámetro Descripción Requerido
etag Etag de la petición anterior para sincronización incremental no

Ejemplo

# Sincronización inicial
GET https://api.easyflor.eu/api/v2/DebtorEtag

# Sincronización incremental
GET https://api.easyflor.eu/api/v2/DebtorEtag/a1b2c3d4-e5f6-7890-abcd-ef1234567890

Devuelve

Array de objetos DebtorEtagResult (máx. 2000 por petición)


Suppliers

Endpoints:

  • GET /api/v2/SupplierEtag/{etag?} - Obtener proveedores
  • GET /api/v2/SupplierEtag/Count - Obtener total

Una empresa o persona que entrega bienes a la empresa cuya base de datos consulta.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos SupplierEtagResult (máx. 2000 por petición)


Employee

Endpoints:

  • GET /api/v2/EmployeeEtag/{etag?} - Obtener empleados
  • GET /api/v2/EmployeeEtag/Count - Obtener total

Un empleado que trabaja en la empresa cuya base de datos consulta.

Frecuencia de sincronización: Cambia poco, sincronizar una vez al día

Devuelve

Array de objetos EmployeeEtagResult (máx. 1000 por petición)


Countries

Endpoints:

  • GET /api/v2/CountryEtag/{etag?} - Obtener países
  • GET /api/v2/CountryEtag/Count - Obtener total

Un país almacenado en nuestra base de datos. Vinculado a deudores, facturas, proveedores, etc.

Frecuencia de sincronización: Cambia poco, sincronizar una vez al día

Devuelve

Array de objetos CountryEtagResult (máx. 1000 por petición)


Currencies

Endpoints:

  • GET /api/v2/CurrencyEtag/{etag?} - Obtener divisas
  • GET /api/v2/CurrencyEtag/Count - Obtener total

Divisas usadas en el sistema.

Frecuencia de sincronización: Cambia poco, sincronizar una vez al día

Devuelve

Array de objetos CurrencyEtagResult (máx. 1000 por petición)


Administrations

Endpoints:

  • GET /api/v2/AdministrationEtag/{etag?} - Obtener administraciones
  • GET /api/v2/AdministrationEtag/Count - Obtener total

Administraciones almacenadas en nuestra base de datos. Vinculadas a deudores, ubicaciones, etc.

Frecuencia de sincronización: Cambia poco, sincronizar una vez al día

Devuelve

Array de objetos AdministrationEtagResult (máx. 1000 por petición)


Locations

Endpoints:

  • GET /api/v2/LocationEtag/{etag?} - Obtener ubicaciones
  • GET /api/v2/LocationEtag/Count - Obtener total

Ubicaciones almacenadas en nuestra base de datos. Vinculadas a deudores, compras, etc.

Frecuencia de sincronización: Cambia poco, sincronizar una vez al día

Devuelve

Array de objetos LocationEtagResult (máx. 1000 por petición)


Artículos y productos

Article

Endpoints:

  • GET /api/v2/ArticleEtag/{etag?} - Obtener artículos
  • GET /api/v2/ArticleEtag/Count - Obtener total

Un artículo, como rosas rojas.

Frecuencia de sincronización: Cambia poco, sincronizar una vez al día

Devuelve

Array de objetos ArticleEtagResult (máx. 2000 por petición)


ArticleSort

Endpoints:

  • GET /api/v2/ArticleSortEtag/{etag?} - Obtener ArticleSorts
  • GET /api/v2/ArticleSortEtag/Count - Obtener total

Una variación de un artículo. Por ejemplo rosas rojas con un ArticleSort de 50cm y 60cm.

Frecuencia de sincronización: Cambia poco, sincronizar una vez al día

Devuelve

Array de objetos ArticleSortEtagResult (máx. 2000 por petición)


ArticleGroup

Endpoints:

  • GET /api/v2/ArticleGroupEtag/{etag?} - Obtener grupos de artículos
  • GET /api/v2/ArticleGroupEtag/Count - Obtener total

Una categoría para artículos. Las categorías pueden anidarse. Por ejemplo, la categoría Rosas cae bajo la categoría Flores.

Frecuencia de sincronización: Cambia poco, sincronizar una vez al día

Devuelve

Array de objetos ArticleGroupEtagResult (máx. 2000 por petición)


Markup Categories

Endpoints:

  • GET /api/v2/MarkupCategoryEtag/{etag?} - Obtener categorías de margen
  • GET /api/v2/MarkupCategoryEtag/Count - Obtener total

Categorías de margen usadas para cálculos de precios.

Frecuencia de sincronización: Cambia poco, sincronizar una vez al día

Devuelve

Array de objetos MarkupCategoryEtagResult (máx. 1000 por petición)


Remarks

Endpoints:

  • GET /api/v2/RemarkEtag/{etag?} - Obtener observaciones
  • GET /api/v2/RemarkEtag/Count - Obtener total

Observaciones de artículos almacenadas en la base de datos.

Frecuencia de sincronización: Cambia poco, sincronizar una vez al día

Devuelve

Array de objetos RemarkEtagResult (máx. 1000 por petición)


Tienda online

ListGroup

Endpoints:

  • GET /api/v2/ListGroupEtag/{etag?} - Obtener ListGroups
  • GET /api/v2/ListGroupEtag/Count - Obtener total

Un ListGroup es una colección de listas mostradas bajo una cabecera en la tienda.

Frecuencia de sincronización: Cambia poco, sincronizar una vez al día

Devuelve

Array de objetos ListGroupEtagResult (máx. 1000 por petición)


ListArticleSort

Endpoints:

  • GET /api/v2/ListArticleSortEtag/{etag?} - Obtener ListArticleSorts
  • GET /api/v2/ListArticleSortEtag/Count - Obtener total

Un ArticleSort ofrecido en una lista de la tienda online.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos ListArticleSortEtagResult (máx. 1000 por petición)


ListPreOrderGroupItem

Endpoints:

  • GET /api/v2/ListPreOrderGroupItemEtag/{id} - Obtener items (sincronización inicial)
  • GET /api/v2/ListPreOrderGroupItemEtag/{etag}/{id} - Obtener items (sincronización incremental)
  • GET /api/v2/ListPreOrderGroupItemEtag/Count/{id} - Obtener total

Items en un ListPreOrderGroup específico.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Nota: El parámetro ID es una ruta catch-all porque los IDs de RavenDB contienen barras (ej., ListPreOrderGroups/123).

Parámetros

Parámetro Descripción Requerido
id ID del ListPreOrderGroup (ej., ListPreOrderGroups/123)
etag Etag de la petición anterior no

Devuelve

Array de objetos ListPreOrderGroupItemEtagResult (máx. 2000 por petición)


Favorites

Endpoint: GET /api/v2/ShopFavoritesEtag/{etag?}

Artículos favoritos por deudor para la tienda online.

Frecuencia de sincronización: Cambia poco, sincronizar una vez al día

Devuelve

Array de objetos ShopFavoritesEtagResult (máx. 1000 por petición)


DebtorSessions

Endpoints:

  • GET /api/v2/ShopDebtorSessionEtag/{etag?} - Obtener sesiones de deudor
  • GET /api/v2/ShopDebtorSessionEtag/Count - Obtener total

Registros de sesión de deudor con últimas actividades conocidas.

Frecuencia de sincronización: Cambia poco, sincronizar una vez al día

Devuelve

Array de objetos ShopDebtorSessionEtagResult (máx. 1000 por petición)


Pedidos y compras

PreOrder

Endpoints:

  • GET /api/v2/PreOrderEtag/{etag?} - Obtener PreOrders
  • GET /api/v2/PreOrderEtag/Count - Obtener total

La solicitud (demanda) de un ArticleSort específico de un deudor.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos PreOrderEtagResult (máx. 2000 por petición)


Purchase

Endpoints:

  • GET /api/v2/PurchaseEtag/{etag?} - Obtener compras
  • GET /api/v2/PurchaseEtag/Count - Obtener total

Una compra es una acción de compra de la empresa cuya base de datos consulta, de un proveedor.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos PurchaseEtagResult (máx. 2000 por petición)


DistributedPurchase

Endpoints:

  • GET /api/v2/DistributedPurchaseEtag/{etag?} - Obtener compras distribuidas
  • GET /api/v2/DistributedPurchaseEtag/Count - Obtener total

Un DistributedPurchase representa bienes de una compra que han sido asignados/vendidos a un deudor específico.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos DistributedPurchaseEtagResult (máx. 1024 por petición)


DistributedPurchaseOrderable

Endpoints:

  • GET /api/v2/DistributedPurchaseOrderableEtag/{etag?} - Obtener compras distribuidas pedibles
  • GET /api/v2/DistributedPurchaseOrderableEtag/Count - Obtener total

Compras distribuidas pedibles.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos DistributedPurchaseOrderableEtagResult (máx. 2000 por petición)


Facturación - Débito

Invoice

Endpoints:

  • GET /api/v2/InvoiceEtag/{etag?} - Obtener facturas
  • GET /api/v2/InvoiceEtag/Count - Obtener total

Una factura creada para un deudor (tanto facturas de crédito como de débito).

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos InvoiceEtagResult (máx. 2000 por petición)


DebetInvoicePurchaseItem

Endpoints:

  • GET /api/v2/DebetInvoicePurchaseItemEtag/{etag?} - Obtener items de compra de facturas débito
  • GET /api/v2/DebetInvoicePurchaseItemEtag/Count - Obtener total

Flores y plantas vendidas a un deudor y luego facturadas.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos DebetInvoicePurchaseItemEtagResult (máx. 2000 por petición)


DebetInvoiceCustomItem

Endpoints:

  • GET /api/v2/DebetInvoiceCustomItemEtag/{etag?} - Obtener items personalizados de facturas débito
  • GET /api/v2/DebetInvoiceCustomItemEtag/Count - Obtener total

Líneas personalizadas en facturas de débito creadas por el usuario sin vínculo a una compra.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos DebetInvoiceCustomItemEtagResult (máx. 2000 por petición)


DebetInvoicePackagingItem

Endpoints:

  • GET /api/v2/DebetInvoicePackagingItemEtag/{etag?} - Obtener items de embalaje de facturas débito
  • GET /api/v2/DebetInvoicePackagingItemEtag/Count - Obtener total

Embalaje (Holandés: fust) que es facturado.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos DebetInvoicePackagingItemEtagResult (máx. 2000 por petición)


DebetInvoiceTrolleyItem

Endpoints:

  • GET /api/v2/DebetInvoiceTrolleyItemEtag/{etag?} - Obtener items de carro de facturas débito
  • GET /api/v2/DebetInvoiceTrolleyItemEtag/Count - Obtener total

Carros (Holandés: karren) que son facturados.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos DebetInvoiceTrolleyItemEtagResult (máx. 2000 por petición)


Facturación - Crédito

CreditInvoicePurchaseItem

Endpoints:

  • GET /api/v2/CreditInvoicePurchaseItemEtag/{etag?} - Obtener items de compra de facturas crédito
  • GET /api/v2/CreditInvoicePurchaseItemEtag/Count - Obtener total

Flores y plantas vendidas a un deudor, luego facturadas y luego acreditadas.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos CreditInvoicePurchaseItemEtagResult (máx. 2000 por petición)


CreditInvoiceCustomItem

Endpoints:

  • GET /api/v2/CreditInvoiceCustomItemEtag/{etag?} - Obtener items personalizados de facturas crédito
  • GET /api/v2/CreditInvoiceCustomItemEtag/Count - Obtener total

Líneas personalizadas en facturas de crédito creadas por el usuario sin vínculo a una compra.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos CreditInvoiceCustomItemEtagResult (máx. 2000 por petición)


CreditInvoiceDepositItem

Endpoints:

  • GET /api/v2/CreditInvoiceDepositItemEtag/{etag?} - Obtener items de depósito de facturas crédito
  • GET /api/v2/CreditInvoiceDepositItemEtag/Count - Obtener total

Embalaje (Holandés: fust) y carros (Holandés: karren) con precio de depósito devueltos por el deudor.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos CreditInvoiceDepositItemEtagResult (máx. 2000 por petición)


Pagos y carros

Payment

Endpoints:

  • GET /api/v2/PaymentEtag/{etag?} - Obtener pagos
  • GET /api/v2/PaymentEtag/Count - Obtener total

Pagos registrados para facturas (transacciones bancarias, pagos en efectivo, cheques).

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos PaymentEtagResult (máx. 2000 por petición)


DistributedTrolley

Endpoints:

  • GET /api/v2/DistributedTrolleyEtag/{etag?} - Obtener carros distribuidos
  • GET /api/v2/DistributedTrolleyEtag/Count - Obtener total

Registros de distribución de carros.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos DistributedTrolleyEtagResult (máx. 2000 por petición)


Pronóstico

PrognosePrice

Endpoints:

  • GET /api/v2/PrognosePriceEtag/{etag?} - Obtener precios de pronóstico
  • GET /api/v2/PrognosePriceEtag/Count - Obtener total

Pronósticos de precios por artículo, semana y año. Solo devuelve datos del año actual y siguiente.

Frecuencia de sincronización: Cambia poco, sincronizar una vez al día

Devuelve

Array de objetos PrognosePriceEtagResult (máx. 2000 por petición)


PrognoseQuantity

Endpoints:

  • GET /api/v2/PrognoseQuantityEtag/{etag?} - Obtener cantidades de pronóstico
  • GET /api/v2/PrognoseQuantityEtag/Count - Obtener total

Pronósticos de cantidad por artículo, semana y año. Incluye distribución por día de la semana. Solo devuelve datos del año actual y siguiente.

Frecuencia de sincronización: Cambia poco, sincronizar una vez al día

Devuelve

Array de objetos PrognoseQuantityEtagResult (máx. 2000 por petición)


PrognosesReservation

Endpoints:

  • GET /api/v2/PrognosesReservationEtag/{etag?} - Obtener reservas de pronóstico
  • GET /api/v2/PrognosesReservationEtag/Count - Obtener total

Reservas de pronóstico por deudor, con componentes de artículo, asignaciones diarias y detalles PreOrder. Usado para gestionar cantidades de pronóstico reservadas por semana y año.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada 5 minutos

Devuelve

Array de objetos PrognosesReservationEtagResult (máx. 2000 por petición)


Logística

TransportScheduleRoute

Endpoints:

  • GET /api/v2/TransportScheduleRouteEtag/{etag?} - Obtener rutas de transporte
  • GET /api/v2/TransportScheduleRouteEtag/Count - Obtener total

Rutas de transporte planificadas por día, incluyendo conductor, vehículo y paradas embebidas con información logística calculada (horas de llegada, distancia, duración). Cada ruta pertenece a un TransportSchedule (un schedule por día) y contiene una lista ordenada de paradas. Las paradas pueden ser paradas Debtor (entrega a uno o más clientes) o Vehicle (recogida/entrega de vehículo). Los objetos Info en rutas y paradas contienen valores producidos por el motor de optimización.

Frecuencia de sincronización: Datos en tiempo real, sincronizar cada hora

Devuelve

Array de objetos TransportScheduleRouteEtagResult (máx. 1000 por petición)


Modelos

Todos los modelos están listados a continuación con sus propiedades. Los nombres de propiedades, tipos de datos y estructuras se mantienen en inglés según convención de la API.


Para la definición completa de todos los modelos (AdministrationEtagResult, ArticleEtagResult, ArticleSortEtagResult, ArticleGroupEtagResult, CountryEtagResult, CreditInvoice, CurrencyEtagResult, DebetInvoice*, DebtorEtagResult, DistributedPurchase*, DistributedTrolleyEtagResult, EmployeeEtagResult, InvoiceEtagResult, ListArticleSortEtagResult, ListGroupEtagResult, ListPreOrderGroupItemEtagResult, LocationEtagResult, MarkupCategoryEtagResult, PaymentEtagResult, PreOrderEtagResult, PrognosePriceEtagResult, PrognoseQuantityEtagResult, PrognosesReservationEtagResult, PurchaseEtagResult, RemarkEtagResult, ShopDebtorSessionEtagResult, ShopFavoritesEtagResult, SupplierEtagResult, TransportScheduleRouteEtagResult), consulte la versión inglesa de esta documentación que contiene todas las definiciones de propiedades detalladas.*

¿Tiene preguntas o necesita ayuda? No dude en contactarnos por teléfono al +31 (0)71 30 20 310 o envíe un correo electrónico a support@easyflor.nl.