Filtros de Consultas
A API oferece a possibilidade de informar a query para filtrar a listagem de produtos
Para aplicar filtros por produtos com queries específicas é necessário utilizar a URL base disponibilizada a seguir:
http://api.skyhub.com.br/products
Request headers:
X-User-Email
email_de_usuario
X-Api-Key
token_de_integracao de sua conta SkyHub
X-Accountmanager-Key
token_account único de cada Plataforma/ERP
Accept
application/json
Content-Type
application/json
Através da URL e dos headers informados é possível realizar os filtros por:
Status;
Nome;
Quantidade em estoque;
Campos específicos no retorno.
Como filtrar por status
É possível realizar a listagem de produtos através de seus status, onde deverá ser informada a query ?filters[status]= no endpoint /products, referenciando o status a ser consultado, conforme exemplo a seguir:
https://api.skyhub.com.br/products?filters[status]={enabled
ou disabled}
Ao informar o parâmetro ?filters[status]=enabled serão retornados todos os produtos ativos (enabled); caso selecione o parâmetro ?filters[status]=disabled serão retornados os produtos inativos (disabled).
Example request:
Segue um exemplo de requisição para listagem de produtos com status disabled:
curl --location -g --request GET 'https://api.skyhub.com.br/products?filters[status]=disabled' \
--header 'X-User-Email: email_de_usuario' \
--header 'X-Api-Key: token_de_integracao de sua conta SkyHub' \
--header 'X-Accountmanager-Key: token_account único de cada Plataforma/ERP' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
Response esperado:
200 [Success] - OK: No retorno para a consulta acima serão visualizados todos os SKUs da conta que possuírem o status disabled como vemos a seguir:
{
"products": [
{
"sku": "SKU_01",
"name": "Título 01",
"description": "Descrição 01",
"status": "disabled",
(...)
}
],
"total": 1,
"next": "https://api.skyhub.com.br/products?cursor=cXVlcnlUa..........wOw=="
}
Como filtrar por nome
Para realizar a listagem de produtos através de um nome específico deverá ser informada a query ?filters[name]= no endpoint /products, referenciando o nome a ser consultado, conforme exemplo a seguir:
https://api.skyhub.com.br/products?filters[name]={nome_do_item}
Example request:
Segue um exemplo de requisição para listagem de SKUs com o termo "produto" no título:
curl --location -g --request GET 'https://api.skyhub.com.br/products?filters[name]=produto' \
--header 'X-User-Email: email_de_usuario' \
--header 'X-Api-Key: token_de_integracao de sua conta SkyHub' \
--header 'X-Accountmanager-Key: token_account único de cada Plataforma/ERP' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
Response esperado:
200 [Success] - OK: No retorno para a consulta acima serão visualizados todos os SKUs da conta que possuírem no campo name a string "produto" como vemos a seguir:
{
"products": [
{
"sku": "SKU_01",
"name": "Produto teste",
"description": "Descrição 01",
"status": "enabled",
(...)
},
{
"sku": "SKU_02",
"name": "PRODUTO SIMPLES",
"description": "Descrição 02",
"status": "enabled",
(...)
},
{
"sku": "SKU_03",
"name": "PRODUTO SIMPLES ESPECIAL",
"description": "Descrição 03",
"status": "enabled",
(...)
}
(...)
],
"total": 43,
"next": "https://api.skyhub.com.br/products?cursor=cXVlcnlUaGVu...........wOw=="
}
Como filtrar por quantidade em estoque
O filtro por quantidade (qty) permite a consulta de produtos com determinados estoques, sendo:
Consulta de produtos com quantidade em estoque maior ou igual ao valor especificado
Para realizar a listagem de produtos cujo estoque seja maior ou igual a um valor definido na busca deverá ser informada a query ?filters[qty_from]= no endpoint /products, referenciando a quantidade desejada, conforme exemplo a seguir:
https://api.skyhub.com.br/products?filters[qty_from]={qty}
Example request:
Segue um exemplo de requisição para listagem de produtos com estoque maior ou igual a 50 unidades:
curl --location -g --request GET 'https://api.skyhub.com.br/products?filters[qty_from]=50' \
--header 'X-User-Email: email_de_usuario' \
--header 'X-Api-Key: token_de_integracao de sua conta SkyHub' \
--header 'X-Accountmanager-Key: token_account único de cada Plataforma/ERP' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
Response esperado:
200 [Success] - OK: No retorno para a consulta acima serão visualizados todos os SKUs da conta que possuírem o valor maior ou igual a 50 unidades no campo qty, como vemos a seguir:
{
"products": [
{
"sku": "SKU_01",
"name": "Título 01",
"description": "Descrição 01",
"status": "enabled",
"qty": 10000,
(...)
},
{
"sku": "SKU_02",
"name": "Título 02",
"description": "Descrição 02",
"status": "enabled",
"qty": 100,
(...)
},
{
"sku": "SKU_03",
"name": "Título 03",
"description": "Descrição 03",
"status": "enabled",
"qty": 400,
(...)
}
(...)
],
"total": 15,
"next": "https://api.skyhub.com.br/products?cursor=cXVlcnlUa............swOw=="
Consulta de produtos com quantidade em estoque menor ou igual ao valor especificado
Para realizar a listagem de produtos cujo estoque seja menor ou igual a um valor definido na busca deverá ser informada a query ?filters[qty_to]= no endpoint /products referenciando a quantidade desejada, conforme exemplo a seguir:
https://api.skyhub.com.br/products?filters[qty_to]={qty}
Example request:
Segue um exemplo de requisição para listagem de produtos com estoque menor ou igual a 50 unidades:
curl --location -g --request GET 'https://api.skyhub.com.br/products?filters[qty_to]=50' \
--header 'X-User-Email: email_de_usuario' \
--header 'X-Api-Key: token_de_integracao de sua conta SkyHub' \
--header 'X-Accountmanager-Key: token_account único de cada Plataforma/ERP' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
Response esperado:
200 [Success] - OK: No retorno para a consulta acima serão visualizados todos os SKUs da conta que possuírem o valor menor ou igual a 50 unidades para o campo qty, como vemos a seguir:
{
"products": [
{
"sku": "SKU_01",
"name": "Título 01",
"description": "Descrição 01",
"status": "disabled",
"qty": 5,
(...)
},
{
"sku": "SKU_02",
"name": "Título 02",
"description": "Descrição 03",
"status": "enabled",
"qty": 3,
(...)
},
{
"sku": "SKU_03",
"name": "Título 03",
"description": "Descrição 03",
"status": "enabled",
"qty": 49,
(...)
}
(...)
],
"total": 86,
"next": "https://api.skyhub.com.br/products?cursor=cXVlcnlUaG...........swOw=="
}
Como consultar campos específicos
Na estrutura de um produto são definidos diversos campos, como SKU, imagens, EAN, entre outros.
Através da API é possível restringir a consulta para que o retorno mostre apenas determinados atributos. Para isto, deverá ser informada a query ?only[]= no endpoint /products referenciando o atributo que deseja visualizar, conforme descrito a seguir:
https://api.skyhub.com.br/products?only[]={atributo}
Example request:
Segue um exemplo de requisição para listagem de todos os produtos, filtrando no retorno apenas os campos SKU, imagem e custo:
curl --location -g --request GET 'https://api.skyhub.com.br/products?only[]=sku&only[]=images&only[]=cost' \
--header 'X-User-Email: email_de_usuario' \
--header 'X-Api-Key: token_de_integracao de sua conta SkyHub' \
--header 'X-Accountmanager-Key: token_account único de cada Plataforma/ERP' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
Response esperado:
200 [Success] - OK: No retorno para a consulta acima serão visualizados os campos sku, images e cost de todos os produtos da conta, como vemos a seguir:
{
"products": [
{
"sku": "SKU_01",
"cost": 1374.45,
"images": [
"https://images-americanas.b2w.io/produtos/1234567890/imagens/camiseta-branca-tam-un/1234567890_1_xlarge.jpg"
]
},
{
"sku": "SKU_02",
"cost": 49.0,
"images": [
"https://images-americanas.b2w.io/produtos/1122334455/imagens/camiseta-preta/1122334455_1_xlarge.jpg"
]
},
{
"sku": "SKU_03",
"cost": 49.0,
"images": [
"https://images-americanas.b2w.io/produtos/0123456789/imagens/livro-para-colorir/0123456789_1_xlarge.jpg"
]
}
(...)
],
"total": 101,
"next": "https://api.skyhub.com.br/products?only[]=sku&only[]=images&only[]=cost&cursor=cXVlcnlUa........swOw=="
Last updated