La versión v4
está obsoleta deprecated
y está obsoleta.
Diferencias con la v3
1. Las propiedades de la entidad en el cliente y el pedido se trasladaron al objeto contractual.
En los métodos de trabajo con clientes /api/v4/customers*
y pedidos /api/v4/orders*
, los detalles de la entidad se especifican en el contragent
adjunto.
Ejemplo para el cliente:
"customer": {
//...
"contragent": {
"contragentType": "individual"
}
}
}
Ejemplo de pedido:
"order": {
//...
"contragent": {
"contragentType":"legal-entity",
"legalName":"SL «Sanz Hermanos»",
"legalAddress":"28047, ES, Paseo de la Castellana 43",
"CIF":"4303432",
"BIK":"044525355",
"bank":"Banco Santander",
"bankAddress":"ciudad Madrid",
"IBAN":"40702810400000041213"
}
}
}
2. Se formaliza el tiempo de entrega
En los métodos para trabajar con pedidos /api/v4/orders*
, el tiempo de entrega se movió de order[delivery][address][deliveryTime]
a order[delivery][time]
y no se establece mediante una cadena, sino mediante una estructura.
Si necesita pasar un intervalo de tiempo:
//...
"delivery": {
//...
"time": {
"from": "13:00",
"to": "18:00"
}
}
}
Si necesita transmitir la hora exacta:
//...
"delivery": {
//...
"time": {
"from": "13:30",
"to": "13:30"
}
}
}
Si necesita transferir tiempo no formalizado:
//...
"delivery": {
//...
"time": {
"custom": "despues del almuerzo"
}
}
}
3. Se eliminó el campo customerId
del método de creación de pedidos /api/v4/orders/create
Para vincular un pedido a un cliente, en lugar de order[customerId]
, ahora debe especificar order[customer][id]
'' (vinculante por ID de cliente interno) '', order[customer][externalId]
'' (vinculante por ID de cliente externo) '' o [[ TRANSLATE_PLACEHOLDER_2300]] '' (enlace por ID de cliente en el recopilador) ''.
4. Cambiando el filtro de pedidos por ID de cliente en /api/v4/orders
Se quitó el filtro por ID de cliente externo filter[customerId]
en el método /api/v4/orders
. En su lugar, se han agregado un filtro por ID de cliente interno filter[customerId]
y un filtro por ID de cliente externo filter[customerExternalId]
.
cinco. Método agregado /api/v4/store/products
El método /api/v4/store/products
se puede utilizar para obtener una lista de productos con SKU según el filtro.
6. Se eliminaron los campos productId, offerId, xmlId de los métodos de creación y edición de pedidos
Para vincular una propuesta de venta a un pedido, en lugar de order[items][][productId]
, order[items][][offerId]
y order[items][][xmlId]
, debe especificar uno de los siguientes campos: order[items][][offer][externalId]
"] ] '' (ID de producto externo o SKU) '', order[items][][offer][xmlId]
'' (ID de SKU en el sistema de almacén) ''.
7. Métodos para trabajar con usuarios
Se agregaron 3 métodos para trabajar con usuarios:
/api/v4/user-groups
: obteniendo una lista de grupos de usuarios
/api/v4/users
: obteniendo una lista de usuarios
/api/v4/users/{id}
: obteniendo información sobre el usuario
8. Cambios en los métodos de trabajo con telefonía
El método de edición de la configuración de telefonía cambió la dirección a /api/v4/telephony/setting/{code}/edit
, mientras que los datos enviados se incluyen en el objeto configuration
Método agregado para obtener la configuración de telefonía actual /api/v4/telephony/setting/{code}
En los métodos anteriores, se han agregado las siguientes propiedades: additionalCodes
'' (códigos de extensión asignados a los administradores) '', externalPhones
'' (asignando números externos a las tiendas) '', allowEdit
'' ( si permitir o no cambiar la configuración a través de la interfaz del sistema) '', inputEventSupported
'' (indica que la telefonía notifica al sistema de una llamada entrante) '', outputEventSupported
'' (indica que la telefonía notifica al sistema sobre llamada saliente) '', hangupEventSupported
'' (indicación de que la telefonía notifica al sistema sobre el final de la llamada) '', changeUserStatusUrl
'' (dirección donde el sistema informará a la telefonía sobre el cambio de estado del administrador) ' '.
En el método /api/v4/telephony/call/event
:
Los datos están envueltos en un objeto event
El campo code
se reemplazó por codes
y se convirtió en una matriz (puede notificar a varios administradores sobre una llamada entrante)
Parece que el objeto webAnalyticsData
transfiere datos de análisis web
Se agregó la propiedad callExternalId
para transferir el ID de llamada externa
9. Métodos para registrar un sistema de almacén
Se agregaron 2 métodos:
/api/v4/store/setting/{code}/edit
: registro y configuración del sistema de almacenamiento
/api/v4/store/setting/{code}
: obteniendo la configuración actual del sistema de almacén
10. Métodos de integración con un servicio de entrega
Métodos agregados para integrar el servicio de entrega:
/api/v4/delivery/generic/setting/{subcode}/edit
- registro y configuración del servicio de entrega
/api/v4/delivery/generic/setting/{subcode}
: obteniendo la configuración actual del servicio de entrega
/api/v4/delivery/generic/{subcode}/tracking
: actualizar los estados de entrega
11. Varios filtros por referencias en métodos de lista
Los cambios afectaron a los siguientes métodos:
/api/v4/orders
/api/v4/customers
/api/v4/orders/packs
/api/v4/store/inventories
/api/v4/users
En estos métodos, los filtros por campos del tipo Referencia se han vuelto múltiples.
Era:
https://demo.retailcrm.es/api/v3/orders?filter [orderMethod] = shopping-cart & apiKey = 23fawef5e34fadgaw432da
Convirtió:
https://demo.retailcrm.es/api/v4/orders?filter [orderMethods [[]] = carrito de compras y filtro [orderMethods] [[] = phone & apiKey = 23fawef5e34fadgaw432da
12. El método de edición de pedidos ya no crea un pedido si falta
El método /api/v3/orders/{externalId}/edit
crea un pedido si no existe en la base de datos del sistema. El nuevo método /api/v4/orders/{externalId}/edit
, si no hay un pedido en la base de datos, devuelve un error 404 con información de que no se encontró el pedido.
13. Método agregado /api/v4/customers/history
El método /api/v4/customers/history
le permite obtener un historial incremental de los cambios del cliente. Más información sobre cómo trabajar con métodos de historial.
14. Cambiar el comportamiento del método de historial /api/v4/orders/history
En el método de la versión anterior /api/v3/orders/history
, se daba el historial, agrupado por pedidos, por lo que los cambios repetidos del mismo campo se fusionaban en el último cambio. El método /api/v4/orders/history
, por el contrario, proporciona un historial incremental de cambios de pedido, donde cada cambio está representado por un registro separado en el historial. Más información sobre cómo trabajar con métodos de historial.