S&T ofrece dos formas de comunicarse vía API desde su sistema: a través de APIs Live y APIs Async. Cada tipo de API tiene características distintas que determinan su comportamiento y adecuación según el contexto. En este artículo, exploraremos estas diferencias usando como ejemplo la creación de una orden de recibo en estado Abierta. Esto nos permitirá entender mejor cuándo y cómo utilizar cada tipo de API en función de sus propiedades y necesidades específicas.
En este artículo, se tratan los siguientes temas:
Otros artículos relacionados:
API's Async
Están diseñadas para manejar procesos que pueden ser largos o que no necesitan una respuesta inmediata. La comunicación con este tipo de API generalmente implica enviar un mensaje que será procesado por S&T sin requerir una confirmación instantánea de éxito o fracaso al sistema externo. A continuación un ejemplo de cómo se estructuran las solicitudes y respuestas.
Ejemplo de solicitud
Endpoint: /api/v2/receiveorders/create
Método: POST
{
"type": "ReceiveOrderCreation",
"reference": "sunt et fugiat nostrud",
"externalPayload": "Receive order external payload",
"externalPayloadMimeType": "text/plain",
"company": "SUPPLIER_SHORTNAME",
"receiveOrders":
[
{
"warehouse": "WAREHOUSE_CODE",
"account": "SUPPLIER_SHORTNAME",
"lineItems": [
{
"partNumber": "PARTNUMBER_NAMEs",
"quantity": 10
} ]
}
]
}
Ejemplo de respuesta
{
"transaction": {
"id": 1883
}
}
Cuando S&T recibe un nuevo mensaje, responderá con el ID de la transacción generada para la solicitud de creación de una nueva orden de recibo, y esta transacción se añadirá a la fila de transacciones pendientes de procesamiento.
En caso de que la transacción no haya sido procesada exitosamente, no se comunicará al sistema externo. Sin embargo, aparecerá en el panel de administración de integraciones externas, donde el equipo de bodega podrá revisar los detalles, corregir lo necesario y volver a intentar la generación desde el mismo panel.
API's Live
Una API Live, en contraste, está diseñada para operaciones que requieren una respuesta inmediata y en tiempo real. Estas APIs son utilizadas para enviar solicitudes que deben ser procesadas al instante por S&T, y la respuesta es devuelta en tiempo real. El siguiente ejemplo muestra cómo se estructuran las solicitudes y respuestas para un endpoint Live:
Ejemplo de solicitud
Endpoint: /api/v1/external_integrations/transaction
Método: POST
{
"receiveOrders":
[
{
"warehouse": "WAREHOUSE_CODE",
"account": "SUPPLIER_SHORTNAME",
"lineItems": [
{
"partNumber": "PARTNUMBER_NAMEs",
"quantity": 10
} ]
}
]
}
Ejemplo de respuesta
{
"receiveOrders": [
{
"id": 1710
}
]
}
Cuando S&T procesa la información con éxito, responderá proporcionando el ID de la orden de recibo generada.
En caso de que la transacción no sea procesada exitosamente, se devolverán al sistema externo todos los errores detectados, permitiendo que se realicen las correcciones necesarias. Una vez corregidos, el sistema externo podrá intentar nuevamente comunicar la orden.
Comentarios
0 comentarios
Inicie sesión para dejar un comentario.