SERVICIO END-POINT PARA PRODUCTOS Y STOCK
Sistema DIFAPRO
Objetivo del documento
Definir la interfaz del servicio tipo REST mediante el cual deben integrarse las webs de clientes.
Información sobre la interfaz
Status
Los servicios usan status de HTTP como resultado.
Por ejemplo, el status 200 corresponde a ejecución exitosa; el status 400 se devuelve cuando la operación no puede realizarse por razones del negocio (e.g. saldo insuficiente); etc. En cada servicio más abajo se especifica el detalle.
Autenticación
La autenticación se realiza enviando en cada request el ID de usuario y un TOKEN de acceso mediante GET como parte de la url.
Estas url deben tener los valores que DIFAPRO haya asignado al sistema que interactúa.
Es posible de ser necesario integrar autentificación por Oauth.
OUTPUT de datos
-
Listado completo de productos: devuelve en formato JSON, la lista de productos disponibles para solicitar, con categorías, galería de imágenes y precio ya con el descuento como cliente aplicado.
-
Producto individual: devuelve en formato JSON los datos completos de un producto específico: categorías, galería de imágenes y precio ya con el descuento como cliente aplicado.
Listado completo de productos
GET / api/products/?userID= SU USER ID &t= SU TOKEN &productID=*
response: Se especifica el status http y su significado, junto con la respuesta esperable.
200 => OK, junto con el resultado:
[
{
"productID": 58,
"lastUpdate": "25/09/2018 12:00:02 p.m.",
"nameCode": "K01",
"name": "Estuche Funda pen",
"prices": {
"netPrice": 0.175,
"userPrice": 0.12
},
"sku": "01012000690",
"description": "Estuche Funda pen. <br>Confeccionado en Pana negra. <br>Medidas: 14.5 x 3 cms.",
"customFields": {
"new": "False",
"sale": "False",
"reEntry": "False",
"boxSize": "0.38*0.347*0.22",
"boxVolume": "0,03 m3",
"boxWeight": "12 Kg",
"unitsBox": "5000"
},
"tags": [
"funda",
"pana",
"k 01" ],
"categories": [
{
"categoryID": 1,
"name": "ESCRITURA",
"subcategory": "ESTUCHES"
}
],
"models": [
{
"colorId": 134,
"availableStock": 70201,
"stock": 70201,
"color1": "Negro",
"color1-font-color": "FFFFFF",
"color1-background-color": "000000",
"color2": "",
"color2-font-color": "",
"color2-background-color": ""
}
],
"images": [
{
"thumbnail": "k01f-01.jpg",
"photo": "k01f.jpg"
}, {
"thumbnail": "k01d-01.jpg",
"photo": "k01d.jpg"
}
]
} ]
403 => no se ha especificado alguno de los parámetros necesarios por GET, o es inválido
50x => error técnico que impide el procesamiento. Reintentar más tarde.
Producto específico
GET / api/products/?userID= SU USER ID&t= SU TOKEN &productID= ID DE PRODUCTO
response: Se especifica el status http y su significado, junto con la respuesta esperable.
Misma respuesta que el listado, solo que el JSON contiene un solo product en vez de un array de productos.
Implementación y testeo
La url de implementación son:
https://difapro.com/api/products/?userID=XX&t=XX&productID=*
https://difapro.com/api/products/?userID=XX&t=XX&productID=XX
el User ID y el Token deben ser solicitados a su ejecutivo de ventas quien se los enviará.
Las URL de testing son :
66.70.167.173:8080/__test/api/products/?userID=XX&t=XX&productID=*
66.70.167.173:8080/__test/api/products/?userID=XX&t=XX&productID=XX
Repositorio de imágenes
Todas las imágenes de productos se encuentran en la url https://articulos.com.ar/productos