> For the complete documentation index, see [llms.txt](https://desenvolvedores.skyhub.com.br/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://desenvolvedores.skyhub.com.br/produtos/consulta-produto/produto-simples.md).

# Produto Simples e Variável

## GET - Consultando um produto

{% hint style="info" %}
**Desde Março/2025, o array associations foi retirado do JSON do produto.**&#x20;
{% endhint %}

Para realizar uma consulta na API devemos utilizar o método GET, preenchendo os devidos headers no endpoint abaixo:

```
https://api.skyhub.com.br/products/{SKU}
```

#### **Request headers:**

| Key                  | Value                                       |
| -------------------- | ------------------------------------------- |
| 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                            |

#### **Example request:**

```
curl --location -g --request GET 'https://api.skyhub.com.br/products/{SKU}' \
--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:**

{% hint style="success" %}
200 \[Success] - OK: Haverá um response body com a estrutura do SKU consultado:
{% endhint %}

```
{
    "sku": "SKU do produto",
    "name": "Título",
    "description": "Descrição detalhada",
    "status": "disabled",
    "removed": false, 
    "qty": 5,
    "price": 100.0,
    "promotional_price": 80.0,
    "cost": 49.0,
    "weight": 3.0,
    "height": 1.0,
    "width": 1.0,
    "length": 1.0,
    "condition_type": null,
    "brand": "Marca",
    "ean": "1234567890123",
    "nbm": "11223344",
    "categories": [
        {
            "code": "01",
            "name": "SKYHUB"
        }
    ],
    "images": [
        "https://images-americanas.b2w.io/produtos/2638788562/imagens/regata-basic-feminina-canelada-branca/2638788562_1_xlarge.jpg"
    ],
    "specifications": [
    { 
                "key": "Tamanho",
                "value": "Único"
            },
            { 
                "key": "Crossdocking",
                "value": "3"
            }
    ],
}
```

### Consultando todos os produtos

Além da consulta individual, também é possível listar todos os produtos criados na conta.&#x20;

Para isto, basta utilizar o GET no endpoint */products* sem informar um SKU, conforme abaixo:

```
https://api.skyhub.com.br/products
```

#### **Example request:**

```
curl --location --request GET 'https://api.skyhub.com.br/products' \
--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:**

{% hint style="success" %}
200 \[Success] - OK: O retorno é semelhante ao da pesquisa anterior, porém serão visualizados todos os SKUs não conectados da conta e abaixo temos um exemplo resumido do retorno esperado:
{% endhint %}

```
{
    "products": [
        {
            "sku": "SKU_01",
            "name": "Título 01",
            "description": "Descrição 01",
            "status": "disabled",
            (...)
        },
        {
            "sku": "SKU_02",
            "name": "Título 02",
            "description": "Descrição 02",
            "status": "enabled",
            (...)
        },
        {
            "sku": "SKU_03",
            "name": "Título 03",
            "description": "Descrição 03",
            "status": "enabled",
            (...)
        }
    ],
    "total": 101,
    "next": "https://api.skyhub.com.br/products?cursor=cXVlcnlUa..........wOw=="
}
```

#### Filtros da consulta

Por padrão, o GET em /products retornará todos os produtos não conectados ao Marketplace.\
\
Para retornar os produtos conectados ao Marketplace, devemos filtrar com o parâmetro type **"/products?filters\[type]=link"**.

Produtos conectados são aqueles que o lojista decide por habilitar a vender. Quando conectado, o produto fica disponível (caso estoque positivo), já desconectado o lojista desabilita o produto para a venda.

### Como paginar a consulta de produtos

A listagem de produtos retornará 25 itens por página. Caso a conta tenha mais que 25 produtos, será necessário fazer a paginação através do **cursor**, que deve ser inserido no endpoint em forma de query string.

#### Como montar a query?

Ao realizar o GET no */products*, ao final da consulta será apresentado o campo **next** que trará como parâmetro o **cursor**, como visualizado a seguir:

```
"total": 101,
"next": "https://api.skyhub.com.br/products?cursor=cXVlcnlUa..........wOw=="
```

Ao localizar o **cursor**, basta inseri-lo no endpoint para que seja possível alcançar a próxima página. Abaixo temos um exemplo de utilização da paginação:

```
curl --location -g --request GET 'https://api.skyhub.com.br/products?cursor=cXVlcnlUa..........wOw=="
}' \
--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'
```

A cada página o cursor será alterado até que chegue na última, quando a requisição retornará sucesso, porém trará um *array* vazio:

```
{
    "products": [],
    "total": 101,
    "next": "https://api.skyhub.com.br/products?cursor=cXVlcnlUa..........swOw=="
}
```

{% content-ref url="/pages/-MG4KvGq5WV\_\_nP8pZK3" %}
[Filtros de Consultas](/produtos/outros-recursos-de-produtos/filtros-produtos.md)
{% endcontent-ref %}
