Diferencias entre API v5 y v4
Copiar enlace al artículo
Copiado

La versión v5 es actual. Cuando trabaje con la API, debe usarla.

Diferencias con la v4

1 . La apariencia del método /api/v5/users/{id}/status

Este método cambia el estado del usuario en el sistema. Le permite sincronizar el estado del usuario con un sistema externo (por ejemplo, telefonía).

2 . La aparición del método para obtener la lista de segmentos /api/v5/segments

Este método devuelve una lista de segmentos. Le permite sincronizar segmentos de clientes con un sistema externo.

3 . La aparición de métodos para combinar clientes y combinar pedidos

Se agregaron los métodos /api/v5/customers/combine y /api/v5/orders/combine.

El método /api/v5/customers/combine le permite combinar varios clientes en uno. En caso de conflicto de campos, se guardarán los datos del cliente final. En consecuencia, si los datos que necesita están en los clientes eliminados, primero debe transferirlos al cliente principal.

El método /api/v5/orders/combine le permite combinar 2 pedidos. En este caso, se guardarán los datos finales del pedido y la composición se combinará de acuerdo con la estrategia especificada.

4 . La apariencia del método /api/v5/store/product-groups

Este método devuelve una lista de grupos de artículos del catálogo.

5. La aparición de métodos para trabajar con campos personalizados.

Se agregaron 4 métodos para trabajar con campos personalizados:

/api/v5/custom-fields: obteniendo una lista de campos personalizados

/api/v5/custom-fields/{entity}/create: creando un campo personalizado

/api/v5/custom-fields/{entity}/{code}: obteniendo información sobre un campo personalizado

/api/v5/custom-fields/{entity}/{code}/edit: editar un campo personalizado

Se agregaron 4 métodos para trabajar con directorios personalizados:

/api/v5/custom-fields/dictionaries: obteniendo una lista de directorios de usuarios

/api/v5/custom-fields/dictionaries/create: creación de un directorio personalizado

/api/v5/custom-fields/dictionaries/{code}: obteniendo información sobre el manual del usuario

/api/v5/custom-fields/dictionaries/{code}/edit: editando directorio de usuarios

6 . Campo con una colección de imágenes en un producto

En el método /api/v5/store/products, el campo products[][offers][][images][] está disponible con una colección de imágenes adjuntas a la oferta.

7 . Campo de género en el cliente

En los métodos /api/v5/customers*, el campo customer[sex] está disponible con los valores male|female. El campo está disponible tanto para escritura como para lectura. También en el método de lista de clientes, hay un filtro disponible para este campo.

8. La aparición de métodos para trabajar con tareas.

Se agregaron 4 métodos para trabajar con tareas:

/api/v5/tasks: obteniendo una lista de tareas

/api/v5/tasks/create: creando una tarea

/api/v5/tasks/{id}: obteniendo información sobre la tarea

/api/v5/tasks/{id}/edit: edición de tareas

9 . Cambiar la composición de los campos de pago en el pedido

Se eliminaron los siguientes campos en los métodos /api/v5/orders*:

order[paymentType]

order[paymentStatus]

order[paymentDetail]

Los siguientes campos se han agregado a los métodos para recibir información de pedidos /api/v5/orders y /api/v5/orders/get:

Cobro de pagos order[payments][]

Fecha de pago completa order[fullPaidAt]

10 . La aparición de métodos para crear y editar pagos.

Se agregaron 3 métodos para trabajar con pagos de pedidos:

/api/v5/orders/payments/create: agregando pago

/api/v5/orders/payments/{id}/edit: editar pago

/api/v5/orders/payments/{id}/delete: eliminar pago

11. La aparición de la tasa de IVA para los productos en el pedido.

Se han agregado los siguientes campos a los métodos para recibir información de pedidos /api/v5/orders y /api/v5/orders/get:

Tasa de IVA para el artículo en pedido order[items][][vatRate]

Tasa de IVA para productos en pedido order[items][][offer][vatRate]

En los métodos para crear /api/v5/orders/create y editar /api/v5/orders/{externalId}/edit un pedido para cada artículo, puede especificar una tasa de IVA individual order[items][][vatRate].

12 . Agregar métodos para trabajar con notas de clientes y eliminar el campo customer[commentary]

En esencia, el cliente reemplazó el campo Comentario con notas. Por lo tanto, el campo customer[commentary] se ha eliminado de los métodos del cliente.

También se agregaron 3 métodos para trabajar con notas de clientes:

/api/v5/customers/notes: obtén una lista de notas

/api/v5/customers/notes/create: agregando una nota

/api/v5/customers/notes/{id}/delete: eliminar una nota

13 . Cambiar el funcionamiento de los descuentos en pedidos

Se eliminaron los campos order[discount], order[discountPercent], order[items][][discount], order[items][][discountPercent] en todos los métodos de trabajo con pedidos.

En los métodos para crear y editar el orden /api/v5/orders/create, /api/v5/orders/{externalId}/edit, /api/v5/orders/upload, puede transferir los descuentos en el pedido y productos en los campos order[discountManualAmount], order[discountManualAmount], order[discountManualAmount], order[discountManualAmount], /api/v5/orders/{externalId}/edit order[items][][discountManualPercent], mientras que los descuentos en pedidos se distribuirán entre los artículos.

Los métodos para recibir pedidos /api/v5/orders, /api/v5/orders/{externalId} devuelven el descuento por pronto pago calculado total por artículo para cada artículo en el campo order[items][][discountTotal], que tiene en cuenta tanto los descuentos de artículos actuales como los descuentos de pedidos asignados entre productos.

Cabe señalar que puede haber casos en que los descuentos para un pedido no se puedan dividir entre productos (por ejemplo, un artículo de un producto en la cantidad de 3 piezas se transfiere en un pedido, así como un descuento para un pedido de 1000 euros). Si ocurre tal caso, se lanzará un error. Para evitar esto, agregamos una configuración, cuando está habilitada, el sistema determinará automáticamente el descuento más cercano para un pedido, lo que permitirá dividirlo entre productos.

14 . Campo con grupos en el producto

En el método /api/v5/store/products, el campo products[][groups][] está disponible con el ID de los grupos de productos a los que pertenece el producto.

15. Referencia de propiedades de producto y productos de filtrado por propiedades

Se agregó el método /api/v5/store/products/properties para obtener una lista de propiedades utilizadas en el catálogo. Además, en el método /api/v5/store/products, se ha agregado el filtro filter[properties][], que permite seleccionar productos con valores específicos de determinadas propiedades.

16 . Métodos para presentar una solicitud de recogida de productos por parte del servicio de reparto.

Se agregaron 4 métodos API:

GET /api/v5/delivery/shipments: obteniendo una lista de envíos a los servicios de entrega

POST /api/v5/delivery/shipments/create: crear envío

GET /api/v5/delivery/shipments/{id}: obteniendo información sobre el envío

POST /api/v5/delivery/shipments/{id}/edit: edición del envío

Y también 2 métodos de devolución de llamada:

POST {integrationModule["baseUrl"]}/{configuration["actions"]["shipmentSave"]}: creación y edición de una solicitud de envío

POST {integrationModule["baseUrl"]}/{configuration["actions"]["shipmentDelete»]}: eliminando una solicitud de envío

Obtenga más información en el artículo sobre la API de entrega .

17 . Cambiar los métodos de registro del módulo

Se han eliminado los métodos antiguos para registrar módulos y obtener información sobre un módulo, a saber:

/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

/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/marketplace/external/setting/{code}/edit: registro del módulo de integración con la plataforma del mercado

/api/v4/telephony/setting/{code}/edit: crea / edita la configuración del módulo de telefonía

/api/v4/telephony/setting/{code}: obteniendo la configuración actual del módulo de telefonía

En lugar de ellos, se han introducido 2 métodos uniformes para registrar un módulo:

/api/v5/integration-modules/{code}/edit: crea / edita los parámetros del módulo de integración

/api/v5/integration-modules/{code}: obteniendo los parámetros del módulo de integración

Dentro de estos métodos, también puede pasar configuraciones específicas del módulo.

También se introdujo un método de devolución de llamada:

{integrationModule["baseUrl"]}/{integrationModule["actions"]["activity"]}: se llama cuando el usuario enciende / apaga el módulo dentro del sistema.

18 . Métodos de manejo de mensajería

Se agregaron 3 métodos de API:

GET /api/v5/reference/couriers: lista de mensajeros registrados en el sistema

POST /api/v5/reference/couriers/create: crea un mensajero

POST /api/v5/reference/couriers/{id}/edit: editar mensajería

diecinueve. Información de segmento en métodos API de información del cliente

En los métodos API para obtener información sobre los clientes, se dispone de datos sobre los segmentos a los que pertenecen:

GET /api/v5/customers - en el campo customers[][segments]

POST /api/v5/customers/{externalId} - en el campo customer[segments]

20 . Referencia de unidades

Se agregaron 2 métodos API para trabajar con unidades de medida:

GET /api/v5/reference/units: obteniendo información sobre las unidades de medida en el sistema

POST /api/v5/reference/units/{code}/edit: creación y edición de unidades de medida

Además, la información sobre las unidades está disponible en los siguientes métodos:

GET /api/v5/store/products - campo products[][offers][][unit]

POST {integrationModule["baseUrl"]}/{configuration["actions"]["save"]} - campo save[packages][][items][][unit]

GET /api/v5/orders - campo orders[items][][offer][unit]

GET /api/v5/orders/{externalId} - campo order[items][][offer][unit]

GET /api/v5/orders/packs - campo packs[unit]

GET /api/v5/orders/packs/{id} - campo pack[unit]

21 . La aparición de coordenadas en los almacenes.

En el método /api/v5/reference/stores*, los campos store[address][coordinates][latitude] y store[address][coordinates][longitude] están disponibles con latitud y longitud, respectivamente. Los campos están disponibles tanto para escritura como para lectura.

22 . La aparición de métodos para trabajar con archivos.

Se agregó la capacidad de trabajar con archivos adjuntos a pedidos o clientes. Se agregaron 6 métodos para trabajar con archivos:

/api/v5/files: obteniendo una lista de archivos

/api/v5/files/{id}: obtener información sobre un archivo específico

/api/v5/files/{id}/download: descarga el archivo cargado en el sistema

/api/v5/files/upload: subiendo un archivo al sistema

/api/v5/files/{id}/edit: edita el nombre del archivo y edita la vinculación del archivo a pedidos y clientes

/api/v5/files/{id}/delete: eliminar un archivo del sistema

23 . La aparición de métodos de trabajo con clientes corporativos.

Se agregó la capacidad de trabajar con clientes corporativos. Se agregaron 20 nuevos métodos:

/api/v5/customers-corporate: obteniendo una lista de clientes corporativos que coinciden con el filtro especificado

/api/v5/customers-corporate/combine: consolidación de clientes corporativos

/api/v5/customers-corporate/create: crea un cliente corporativo

/api/v5/customers-corporate/fix-external-ids: registro masivo de ID externos de clientes corporativos

/api/v5/customers-corporate/history: obtener el historial de cambios para clientes corporativos

/api/v5/customers-corporate/notes: obtén notas

/api/v5/customers-corporate/notes/create: crea una nota

/api/v5/customers-corporate/notes/{id}/delete: eliminar una nota

/api/v5/customers-corporate/upload: descarga por lotes de clientes corporativos

/api/v5/customers-corporate/{externalId}: obtener información sobre un cliente corporativo

/api/v5/customers-corporate/{externalId}/addresses: lista de direcciones de clientes corporativos

/api/v5/customers-corporate/{externalId}/addresses/create: creando una dirección para un cliente corporativo

/api/v5/customers-corporate/{externalId}/addresses/{entityExternalId}/edit: editando la dirección de un cliente corporativo

/api/v5/customers-corporate/{externalId}/companies: lista de empresas clientes corporativas

/api/v5/customers-corporate/{externalId}/companies/create: creación de una empresa para un cliente corporativo

/api/v5/customers-corporate/{externalId}/companies/{entityExternalId}/edit: editar la empresa de un cliente corporativo

/api/v5/customers-corporate/{externalId}/contacts: lista de personas de contacto de clientes corporativos

/api/v5/customers-corporate/{externalId}/contacts/create: crea una conexión entre un cliente corporativo y una persona de contacto

/api/v5/customers-corporate/{externalId}/contacts/{entityExternalId}/edit: editar la relación de un cliente corporativo con una persona de contacto

/api/v5/customers-corporate/{externalId}/edit: editando cliente corporativo

En los métodos para crear, cargar por lotes y editar pedidos /api/v5/orders/create, /api/v5/orders/upload, /api/v5/orders/{externalId}/edit agregaron campos:

order[customer][type]: tipo de cliente, de forma predeterminada customer. Para crear un pedido para un cliente corporativo, este campo debe pasarse customer_corporate

order[customer][nickName]: el nombre de la contraparte, que se transmite cuando es necesario crear un nuevo cliente corporativo

order[contact]: un conjunto de datos que se insertará en el pedido de una persona de contacto, que se utiliza si el pedido se realiza en un cliente corporativo

order[company]: un conjunto de datos que se sustituirá en un pedido de la empresa, que se utiliza si el pedido se realiza a un cliente corporativo

Los siguientes campos se han agregado a los métodos para obtener la lista y obtener información sobre el pedido /api/v5/orders, /api/v5/orders/{externalId}:

order[customer][type]: tipo de cliente para el que se realiza el pedido

order[contact]: persona de contacto del pedido

order[company]: empresa del pedido

Puede realizar un pedido para un cliente corporativo solo si el sistema ha activado el trabajo con clientes corporativos.

Se eliminaron los campos de contraparte de los clientes. Pueden existir en modo de compatibilidad para varios sistemas que no han habilitado el trabajo con clientes corporativos. Estos campos incluyen:

En el método para obtener la lista de clientes /api/v5/customers:

filter[contragentName]

filter[contragentTypes][]

filter[contragentInn]

filter[contragentKpp]

filter[contragentBik]

filter[contragentCorrAccount]

filter[contragentBankAccount]

customers[][contragent]

En los métodos para crear, editar, cargar por lotes y obtener información del cliente /api/v5/customers/create, /api/v5/customers/{externalId}/edit, /api/v5/customers/upload, /api/v5/customers/{externalId}:

customers[][contragent]

Al activar el trabajo con clientes corporativos, si el sistema ya tiene clientes con datos de contraparte completos, se realiza una migración para convertir estos clientes en clientes corporativos. Estos clientes ya no estarán disponibles a través de los métodos api/v5/customers/*, pero su historial pasado aún se puede recuperar a través del método /api/v5/customers/history. Después de la migración, el cliente agregará un nuevo registro a este historial, en el que field tendrá el valor type, oldValue - customer, [TRANSLATE_18] [TRANSLATE_25LACEHOLDER_2518]], [TRANSLATE_18] [TRANSLATE_25] ... Así, será posible conocer cuáles de los clientes se convirtieron en clientes corporativos. Durante la conversión, se guardarán id y externalId. Puede obtener más información sobre el proceso de migración en la documentación para trabajar con clientes corporativos.

Gracias por tus comentarios.
¿Te resultó útil este artículo
No
  • Рекомендации не помогли
  • Нет ответа на мой вопрос
  • Текст трудно понять
  • Не нравится описанный функционал
Si
Artículo anterior
Referencia de métodos de API v5
Por el momento, la versión actual es v5. Cuando trabaje con la API, debe usarla.
Artículo siguiente
Diferencias entre API v4 y v3
Resumen y descripción de las diferencias entre los métodos API v4 y v3.