> ## Documentation Index
> Fetch the complete documentation index at: https://docs.selltrust.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Categorias

> Imagens por URL, subcategorias e regras de produtos

Categorias organizam a vitrine. Produtos só entram em categoria **folha** (sem subcategorias). Não dá para ter produtos e filhos na mesma categoria.

Base: `https://api.selltrust.com.br/api/v1` — header `Authorization: Bearer <token>`.

## Imagem e banner

`image` e `banner` aceitam:

* `null` (sem arte)
* arquivo da plataforma `uuid.extensão`
* URL absoluta `http://` ou `https://` (até 2048 caracteres)

URL externa **não** ganha o prefixo do CDN da SellTrust. Na loja e na API o `src` é o link que você mandou.

Na **criação**, `image` e `banner` são obrigatórios no JSON — use `null` se não houver imagem.

```json theme={null}
{
  "title": "Keys Steam",
  "parent_id": null,
  "image": "https://cdn.seudominio.com/cat-steam.jpg",
  "banner": "https://cdn.seudominio.com/banner-steam.jpg"
}
```

No **PATCH**, envie só o que mudou. `null` remove a arte.

```json theme={null}
{
  "image": "https://cdn.seudominio.com/cat-nova.jpg",
  "banner": null
}
```

## Hierarquia

* `parent_id: null` = categoria raiz.
* `parent_id` = UUID de outra categoria da **mesma loja** → subcategoria.
* A pai **não pode** já ter produtos.
* Uma categoria **não pode** ser pai de si mesma.
* Quem tem subcategorias **não recebe** produto (a regra vale em qualquer nível).

`GET /api/v1/category` devolve só raízes, com `sub_categories` aninhadas e `products_count` em cada nível.

## Edição

`PATCH /api/v1/category/{id}` aceita `title`, `slug`, `parent_id`, `image` e `banner`.

* Se você mudar `title` sem mandar `slug`, um slug novo é gerado a partir do título.
* `slug` precisa ser único na loja (400 se já existir).
* Reordenar categorias (`position`) é só pelo painel, não pela API pública.

## Exclusão

`DELETE` falha com 400 se ainda existirem **produtos** ou **subcategorias**. Esvazie a categoria antes.

## Limite

**500** categorias por loja.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.