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

# Visão Geral

Através da API de **Produtos** você pode cadastrar e gerenciar todo o catálogo da loja: listar e filtrar produtos, consultar os detalhes, criar, editar, excluir e controlar o estoque (inclusive o estoque de cada variação).

{% hint style="info" %}
Estas páginas são **guias práticos**. A referência completa de cada campo, tipo e schema está no simulador online:

{% embed url="<https://api.toplojas.com.br/doc/#/Produtos>" %}
{% endhint %}

## 🔄 Fluxo típico

Um fluxo comum de integração de produtos costuma seguir esta ordem:

1. **Listar** os produtos, filtrando por Nome, SKU, Status ou Código de Importação.
2. **Consultar os detalhes** de um produto específico (preços, fotos, variações, atributos).
3. **Criar** novos produtos, com ou sem variações.
4. **Editar** as informações de um produto já existente.
5. **Gerenciar o estoque** do produto ou de cada variação.
6. **Excluir** um produto quando necessário.

## 🧭 Endpoints de Produtos

| Ação                            | Método | Rota                                                  |
| ------------------------------- | ------ | ----------------------------------------------------- |
| Listar e filtrar produtos       | GET    | `/produtos/`                                          |
| Criar produto                   | POST   | `/produtos/`                                          |
| Detalhes de um produto          | GET    | `/produtos/{Codigo}/`                                 |
| Editar produto                  | PUT    | `/produtos/{Codigo}/`                                 |
| Excluir produto                 | DELETE | `/produtos/{Codigo}/`                                 |
| Obter estoque de um produto     | GET    | `/produtos/estoque/{CodigoProduto}/`                  |
| Alterar estoque de um produto   | PUT    | `/produtos/estoque/{CodigoProduto}/`                  |
| Obter estoque de uma variação   | GET    | `/produtos/estoque/{CodigoProduto}/{CodigoVariacao}/` |
| Alterar estoque de uma variação | PUT    | `/produtos/estoque/{CodigoProduto}/{CodigoVariacao}/` |

{% hint style="info" %}
O **estoque não é editado** pelo endpoint de edição de produto (`PUT /produtos/{Codigo}/`). Para alterar quantidades disponíveis, use sempre os endpoints de **estoque** descritos em [Gerenciar Estoque](/produtos/gerenciar-estoque.md).
{% endhint %}
