Tipos de producto
- Video apoyo (ver)
Estructura JSON
Estructura JSON
Al realizar una petición HTTP, el servicio retornara un JSON con la siguiente estructura:
{
"href": "https://api.bsale.cl/v1/product_types/2.json",
"id": 2,
"name": "Sin Tipo de Producto",
"isEditable": 1,
"state": 0,
"imagestionCategoryId": 0,
"prestashopCategoryId": 0,
"attributes": {
"href": "https://api.bsale.cl/v1/product_types/2/attributes.json"
}
}
- href, url del tipo de producto (String).
- id, identificador único del tipo de producto (Integer).
- name, nombre del del tipo de producto (String).
- isEditable, indica si el tipo de producto se puede editar No(0) o Si (1) (Boolean)..
- state, estado del tipo de producto activo(0) o inactivo (1) (Boolean).
- imagestionCategoryId, identificador en imagestion (Integer).
- prestashopCategoryId, identificador en prestashop (Integer) .
GET lista de tipos de producto
GET lista de tipos de producto
GET /v1/product_types.json
retornara todos los tipos de producto.
####Parametros
- limit, limita la cantidad de items de una respuesta JSON, por defecto el limit es 25, el máximo permitido es 50.
- offset, permite paginar los items de una respuesta JSON, por defecto el offset es 0.
- fields, solo devolver atributos específicos de un recurso
- expand, permite expandir instancias y colecciones.
- name, Permite filtrar por nombre tipo producto.
- state, boolean (0 o 1) indica si los tipos de producto están activos(0) inactivos(1).
####Ejemplos
GET /v1/product_types.json?limit=10&offset=0
GET /v1/product_types.json?fields=[name,state]
####Respuesta
{
"href": "https://api.bsale.cl/v1/product_types.json",
"count": 4,
"limit": 25,
"offset": 0,
"items": [
{
"href": "https://api.bsale.cl/v1/product_types/30.json",
"id": 30,
"name": "Accesorios Computación",
"isEditable": 1,
"state": 0,
"imagestionCategoryId": 0,
"prestashopCategoryId": 0,
"attributes": {
"href": "https://api.bsale.cl/v1/product_types/30/attributes.json"
}
},
{
"href": "https://api.bsale.cl/v1/product_types/9.json",
"id": 9,
"name": "Arriendo de producto",
"isEditable": 1,
"state": 0,
"imagestionCategoryId": 0,
"prestashopCategoryId": 0,
"attributes": {
"href": "https://api.bsale.cl/v1/product_types/9/attributes.json"
}
},
{
"href": "https://api.bsale.cl/v1/product_types/16.json",
"id": 16,
"name": "ARRIENDOS CHILEAN",
"isEditable": 1,
"state": 0,
"imagestionCategoryId": 0,
"prestashopCategoryId": 0,
"attributes": {
"href": "https://api.bsale.cl/v1/product_types/16/attributes.json"
}
},
{
"href": "https://api.bsale.cl/v1/product_types/5.json",
"id": 5,
"name": "Artículos Oficina",
"isEditable": 1,
"state": 0,
"imagestionCategoryId": 0,
"prestashopCategoryId": 0,
"attributes": {
"href": "https://api.bsale.cl/v1/product_types/5/attributes.json"
}
}
]
}
GET un tipo de producto
GET un tipo de producto
GET /v1/product_types/2.json
retornara un tipo de producto específico.
####Respuesta
{
"href": "https://api.bsale.cl/v1/product_types/2.json",
"id": 2,
"name": "Sin Tipo de Producto",
"isEditable": 1,
"state": 0,
"imagestionCategoryId": 0,
"prestashopCategoryId": 0,
"attributes": {
"href": "https://api.bsale.cl/v1/product_types/2/attributes.json"
}
}
GET productos de un tipo de producto
GET productos de un tipo de producto
GET /v1/product_types/3/products.json
{
"href": "https://api.bsale.cl/v1/products.json",
"count": 2,
"limit": 25,
"offset": 0,
"items": [
{
"href": "https://api.bsale.cl/v1/products/2.json",
"id": 2,
"name": "Asesoria Informatica Imagestion Capacitacion",
"description": "",
"classification": 1,
"ledgerAccount": "",
"costCenter": "",
"allowDecimal": 1,
"stockControl": 0,
"printDetailPack": 0,
"state": 0,
"prestashopProductId": 0,
"presashopAttributeId": 0,
"product_type": {
"href": "https://api.bsale.cl/v1/product_types/3.json",
"id": "3"
}
},
{
"href": "https://api.bsale.cl/v1/products/49.json",
"id": 49,
"name": "Etravel Capacitacion",
"description": "",
"classification": 1,
"ledgerAccount": "",
"costCenter": "",
"allowDecimal": 1,
"stockControl": 0,
"printDetailPack": 0,
"state": 0,
"prestashopProductId": 0,
"presashopAttributeId": 0,
"product_type": {
"href": "https://api.bsale.cl/v1/product_types/3.json",
"id": "3"
}
}
]
}
GET cantidad de tipos de producto
GET cantidad de tipos de producto
GET /v1/product_types/count.json
####Parametros
- state, permite filtrar por estado, activos (0) inactivos (1).
####Respuesta
{
"count": 1926
}
GET atributos de un tipo de producto
GET atributos de un tipo de producto
GET /v1/product_types/44/attributes.json
{
"href": "https://api.bsale.cl/v1/product_types/44/attributes.json",
"count": 2,
"limit": 25,
"offset": 0,
"items": [
{
"href": "https://api.bsale.cl/v1/product_types/44/attributes/46.json",
"id": 46,
"name": "Fabricante",
"isMandatory": 0,
"generateVariantName": 1,
"hasOptions": 1,
"options": "Nintendo|Microsoft|Sony",
"state": 0
},
{
"href": "https://api.bsale.cl/v1/product_types/44/attributes/47.json",
"id": 47,
"name": "Sistema",
"isMandatory": 0,
"generateVariantName": 1,
"hasOptions": 1,
"options": "Wii U|Xone|PS4",
"state": 0
}
]
}
GET atributos de un tipo de producto específico
GET atributos de un tipo de producto específico
GET /v1/product_types/156/attributes/93.json
{
"href": "https://api.bsale.cl/v1/product_types/156/attributes/93.json",
"id": 93,
"name": "atributito",
"isMandatory": 0,
"generateVariantName": 0,
"hasOptions": 0,
"options": "",
"state": 0
}
POST un tipo de producto
POST un tipo de producto
POST /v1/product_types.json
Se debe enviar un Json con la siguiente estructura.
{
"name": "Consolas Next GEN",
}
Atributos (Opcional)
Si se desean crear atributos especiales para el tipo de producto se debe enviar la siguiente estructura.
"attributes": [
{
"name": "Fabricante",
"isMandatory": 0,
"generateVariantName": 1,
"hasOptions": 1,
"options": "Nintendo|Microsoft|Sony",
"state": 0
},
{
"name": "Sistema",
"isMandatory": 0,
"generateVariantName": 1,
"hasOptions": 1,
"options": "Wii U|Xone|PS4",
"state": 0
}
]
- name, nombre del atributo (String).
- isMandatory, indica si el atributo es obligatorio, 0 es No 1 es Si (Boolean).
- generateVariantName, indica si el atributo se usara para generar el nombre de la variante, 0 es No 1 es Si(Boolean).
- hasOptions, indica si el atributo tendrá opciones, 0 es No 1 es Si (Boolean).
- options, opciones del atributo, se separan con el carácter "|" (String).
- state, indica el estado del atributo, 0 Activo 1 Inactivo (Boolean).
Ejemplo de estructura JSON
{
"name": "Consolas Next GEN",
"attributes": [
{
"name": "Fabricante",
"isMandatory": 0,
"generateVariantName": 1,
"hasOptions": 1,
"options": "Nintendo|Microsoft|Sony",
"state": 0
},
{
"name": "Sistema",
"isMandatory": 0,
"generateVariantName": 1,
"hasOptions": 1,
"options": "Wii U|Xone|PS4",
"state": 0
}
]
}
####Respuesta
{
"href": "https://api.bsale.cl/v1/product_types/44.json",
"id": 44,
"name": "Consolas Next GEN",
"isEditable": 1,
"state": 0,
"imagestionCategoryId": 0,
"prestashopCategoryId": 0,
"attributes": {
"href": "https://api.bsale.cl/v1/product_types/44/attributes.json"
}
}
PUT un tipo de producto
PUT un tipo de producto
PUT /v1/variants/44.json
Se debe enviar un Json con la siguiente estructura, si se desea cambiar los atributos se debe enviar el "id" de lo contrario se crea otro atributo.
{
"id": 44,
"name": "Consolas Next GEN 2",
"attributes": [
{
"id": 1,
"name": "Fabricante",
"isMandatory": 0,
"generateVariantName": 1,
"hasOptions": 1,
"options": "Nintendo|Microsoft|Sony",
"state": 0
},
{
"id": 2,
"name": "Sistema",
"isMandatory": 0,
"generateVariantName": 1,
"hasOptions": 1,
"options": "Wii U|Xone|PS4",
"state": 0
}
]
}
####Respuesta
{
"href": "https://api.bsale.cl/v1/product_types/44.json",
"id": 44,
"name": "Consolas Next GEN",
"isEditable": 1,
"state": 0,
"imagestionCategoryId": 0,
"prestashopCategoryId": 0,
"attributes": {
"href": "https://api.bsale.cl/v1/product_types/44/attributes.json"
}
}
DELETE un tipo de producto
DELETE un tipo de producto
DELETE /v1/product_types/44.json
cambia el estado del tipo de producto.
{
"href": "https://api.bsale.cl/v1/product_types/44.json",
"id": 44,
"name": "Consolas Next GEN 2",
"isEditable": 1,
"state": 1,
"imagestionCategoryId": 0,
"prestashopCategoryId": 0,
"attributes": {
"href": "https://api.bsale.cl/v1/product_types/44/attributes.json"
}
}