Saltar al contenido principal

Endpoints para Almacén

La entidad Almacén está asociada a un producto y a un stock. Cada almacén incluye una serie de atributos que lo describen además de información relevante sobre el país.

Características Comunes de los Almacenes

  1. Identificación Única: Cada almacén tiene un identificador único id que los distingue de otros almacenes en el sistema. Además cuenta con un campo idRemote, que hace referencia al id que puede estar almacenado en la base de datos del ERP del cliente.

  2. Datos de Almacén: Un almacén tiene información asociada como nombre, dirección, ciudad, estado, código postal, datos del país asociado y otros detalles.

  3. Actividades y Registro: Las actividades realizadas por un almacén dentro del sistema, como la creación o modificación de recursos, pueden ser registradas.

  4. País: Se almacena información básica sobre el país al que pertenece el almacén, como idRemote, description e iso.

Endpoints

GET/Warehouse/getWarehouse

Obtención de una Lista Paginada de Almacenes.

Descripción

Este endpoint recupera una lista paginada de almacenes del sistema. Permite a los clientes obtener datos de almacenes basados en parámetros de paginación como el número de página (page) y el número de ítems por página (pageSize). La respuesta incluye información detallada sobre cada almacén, incluyendo su ID, nombre, dirección, ciudad, estado, código postal, marca de tiempo de última actualización e información del país.

Parámetros
NombreDescripciónTipoValor Predeterminado
pageNúmero de páginaInteger1
pageSizeNúmero de ítems por páginaInteger10
Respuestas
JSON
  {
"data": [
{
"id": "string",
"idRemote": "string",
"name": "string",
"address": "string",
"city": "string",
"state": "string",
"postalCode": "string",
"country": {
"id": "string",
"idRemote": "string",
"description": "string",
"iso": "string"
},
"createdAt": "string",
"updatedAt": "string"
}
],
"pagination": {
"totalItems": 0,
"itemsPerPage": 0,
"currentPage": 0,
"totalPages": 0,
"nextPageUrl": "string"
}
}

XML
  <?xml version="1.0" encoding="UTF-8"?>
<export>
<data>
<item>
<id>string</id>
<idRemote>string</idRemote>
<name>string</name>
<address>string</address>
<city>string</city>
<state>string</state>
<postalCode>string</postalCode>
<country>
<id>string</id>
<idRemote>string</idRemote>
<description>string</description>
<iso>string</iso>
</country>
<createdAt>string</createdAt>
<updatedAt>string</updatedAt>
</item>
</data>
<pagination>
<totalItems>0</totalItems>
<itemsPerPage>0</itemsPerPage>
<currentPage>0</currentPage>
<totalPages>0</totalPages>
<nextPageUrl>string</nextPageUrl>
</pagination>
</export>

👉Prueba este endpoint🌱

POST/Warehouse/create

Registro de Almacenes en la API: Uso del Método POST

Actualmente, nuestro método POST en la API está configurado para aceptar únicamente datos en formato JSON. Para registrar almacenes de manera efectiva, es esencial seguir un proceso que asegure la integridad de los datos y el correcto funcionamiento del sistma.

Proceso de Registro:
  1. Creación de País: Para poder registrar un almacén, debemos comprobar que existe un País asociado. Es necesario que exista un país para poder crear un almacén. 👉Registrar País🌱
Detalles del Método POST:

Debes tener en cuenta que el State que vayas a añadir como localización para el nuevo Almacén debe estar relacionado con el Country que le corresponde. Por ejemplo, no puedes asociar a Francia la provincia Madrid.


Todos los parámetros del cuerpo de la solicitud son obligatorios.


La petición debe cumplir el siguiente esquema:

[
{
"idRemote": "string",
"name": "string",
"address": "string",
"city": "string",
"stateId": "string",
"postalCode": "string",
"countryId": "string"
}
]

Es posible añadir varios almacenes a través de la misma solicitud separándolos con comas dentro del array en el cuerpo de la solicitud.

👉Prueba este endpoint🌱

PUT/Warehouse/update/{id}

Actualización de Almacenes

Descripción

El método PUT de nuestra API permite a los clientes actualizar los datos de almacenes utilizando el parámetro id. Este campo id puede ser tanto el identificador propio del sistema B2B como el idRemote que usted nos proporciona al registrar los almacenes en nuestra plataforma. De esta manera nuestra plataforma garantiza una gestión eficiente y precisa de la información de los almacenes.

No es necesario incluir toda la estructura JSON, solo debes mandar lo que quieras modificar

Parámetros
NombreDescripciónTipo
idIdentificador de AlmacénString
Cuerpo de la solicitud

El cuerpo de la solicitud debe seguir el siguiente esquema en formato JSON:

{
"idRemote": "string",
"name": "string",
"address": "string",
"city": "string",
"stateId": "string",
"postalCode": "string",
"countryId": "string"
}

👉Prueba este endpoint🌱

DELETE/Warehouse/delete/{id}

Eliminación de Almacén

Descripción

El método DELETE permite la eliminación de almacenes utilizando su identificador único. Este campo id puede ser tanto el identificador generado por la base de datos del B2B como el idRemote que usted nos proporciona al registrar los almacenes. Es importante destacar que al eliminar un almacén, también se elimina en el Stock correspondiente. Una vez eliminado, el Almacén se registra en el Historial de Eliminados.

Parámetros
NombreDescripciónTipo
idIdentificador de AlmacénString

👉Prueba este endpoint🌱

Posibles Errores en la Respuesta

ErrorCódigoRespuesta
Este error ocurre cuando no se puede establecer una conexión con la base de datos. Es un problema interno del servidor.500{"code": 500,"error": "Database connection failed."}
Este error ocurre cuando no puede insertar o actualizar y en la dbs de pruebas.500{"code": 500,"error": "Invalid connection name, you cannot insert in default"}
Este error indica que falta un parametro.400{"code": 400,"error": "Parameter $parameter is required"}
Este error indica que no está autorizado.401{"code": 401,"error": "Unauthorized"}
Este error indica que no ha sido posible encontrar el Almacén.404{"code": 404,"error": "No entity found for Warehouse with $id."}
Este error ocurre cuando intenta insertar un almacén que ya existe.409{"code": 409,"error": "Duplicate entry"}
Este error ocurre cuando intenta enviar demasiadas solicitudes en un corto periodo de tiempo.429{"code": 429,"error": "Too Many Requests"}