Skip to content

Categorias de Produtos

Visão Geral

As categorias são responsáveis por organizar os produtos dentro da loja, criando uma estrutura hierárquica que facilita a navegação do catálogo 🗂️.

Elas permitem agrupar produtos por tipo, finalidade ou segmento, como por exemplo:

Eletrônicos

  • Celulares
  • Notebooks
  • Casa e Decoração

  • Móveis
  • Iluminação
  • No contexto administrativo, o lojista pode criar, atualizar, organizar e remover categorias, garantindo que a estrutura do catálogo reflita corretamente a organização desejada.

    As categorias também podem possuir diferentes configurações dependendo da política comercial, permitindo comportamentos específicos conforme a regra aplicada.

    Entidades Envolvidas

  • Categoria (Category)
  • Representa a estrutura organizacional utilizada para agrupar produtos.

  • Produto (Product)
  • Produtos são vinculados às categorias para definir onde serão exibidos no catálogo.

  • Filtros (Filters)
  • Filtros podem ser associados a categorias, determinando quais opções de filtragem estarão disponíveis para os produtos daquela categoria.

  • Política Comercial (Trade Policy)
  • Algumas configurações de categorias podem variar conforme a política comercial aplicada.

    Notas e Considerações

  • Categorias podem possuir estrutura hierárquica, formando árvores de categorias.
  • Cada categoria pode possuir categorias pai e categorias filhas.
  • A organização correta das categorias melhora a navegação e descoberta de produtos dentro da loja.
  • Algumas configurações podem variar conforme a política comercial utilizada ⚙️.

Listagem de categorias

GET /products/categories

Permite que o lojista veja uma lista das categorias cadastradas na loja

Descrição

Endpoint responsável por retornar uma lista de categorias cadastradas na loja 📋.

Atua em contexto administrativo, permitindo que o lojista visualize as categorias disponíveis no sistema.

Por meio desse endpoint, é possível consultar as categorias que podem ser configuradas, facilitando o gerenciamento e a organização do catálogo dentro do painel administrativo ⚙️.

Parâmetros

Headers Obrigatórios

HeaderValorDescrição
AuthorizationBearer {userToken}Token de autenticação

Campos Disponíveis (fields)

CampoDescrição
descriptionCarrega a descrição das categorias
bannerGroupsCarrega os grupos de banners vinculados às categorias
linkedTradePoliciesCarrega as políticas comerciais associada às categorias

Campos de Condição Disponíveis

CampoTipoDescrição
codestring
Código interno de identificação da categoria
namestringNome definido à categoria
directAccessbooleanDetermina se a categoria pode ser acessada diretamente ou se atua apenas para montar a hierarquia

Campos de Ordenação Disponíveis

CampoDescrição
idIdentificador da categoria
nameOrdenação pelo nome da categoria

Exemplo de Requisição

1curl --request GET \
2 --url {{MAIN_URL}}/products/categories \
3 --header "Authorization: Bearer SEU_TOKEN_AQUI" \
4 --data '{
5 "fields": [
6 "description",
7 "bannerGroups",
8 "linkedTradePolicies"
9 ]
10 }'

✅ Resposta de Sucesso

1{
2 "registers": [
3 {
4 "id": 1,
5 "parentProductCategoryId": null,
6 "code": "categoria-1",
7 "name": "Smartphones",
8 "productOrdering": "",
9 "active": true,
10 "directAccess": true,
11 "bannerGroups": [],
12 "createdAt": "2025-07-25 12:28:03",
13 "updatedAt": "2025-07-25 12:28:03",
14 "tree": null,
15 "filters": [],
16 "url": "smartphones",
17 "urls": [],
18 "linkedTradePolicies": [
19 1
20 ],
21 "description": {
22 "id": 1,
23 "tradePolicyId": 1,
24 "name": "Smartphones",
25 "shortDescription": "",
26 "videoUrl": "",
27 "searchDescription": "",
28 "description": null,
29 "customDescription1": null,
30 "customDescription2": null,
31 "customDescription3": null,
32 "measureTable": null,
33 "seoTitle": "Smartphones | TechBrand",
34 "seoDescription": null,
35 "seoKeywords": "",
36 "seoCanonical": "",
37 "seoSocialTitle": "Smartphones | TechBrand",
38 "seoSocialDescription": null,
39 "seoTwitterImageUrl": "",
40 "seoGraphImageUrl": "",
41 "seoGoogleCategoryId": 0,
42 "seoIndexOnGoogle": false,
43 "seoGoogleCondition": "",
44 "seoGoogleAgeGroup": "",
45 "seoGoogleGender": "",
46 "seoStructuredData": null,
47 "productId": null,
48 "productCategoryId": 1,
49 "productBrandId": null,
50 "productPageId": null
51 }
52 }
53 ],
54 "pagination": {
55 "limit": 10,
56 "offset": 0,
57 "pages": 1,
58 "registers": 10
59 }
60}

Listagem de categorias por política comercial

GET /products/categories/trade-policy/{tradePolicyId}

Permite que o lojista veja uma lista das categorias cadastradas na loja

Descrição

Endpoint responsável por retornar uma lista de categorias cadastradas na loja por política comercial 📋.

Atua em contexto administrativo, permitindo que o lojista visualize as categorias disponíveis dentro de uma política comercial específica.

Por meio desse endpoint, é possível consultar as categorias que podem ser configuradas naquela política, facilitando o gerenciamento e a personalização do catálogo conforme as regras da política comercial.

Dessa forma, a listagem respeita as configurações aplicadas à política informada, garantindo que as categorias retornadas reflitam exatamente o comportamento definido para aquele contexto ⚙️.

Parâmetros

Headers Obrigatórios

HeaderValorDescrição
AuthorizationBearer {userToken}Token de autenticação

Parâmetros da URL

ParâmetroTipoObrigatórioDescrição
tradePolicyIdintegerSimIdentificador da política comercial associada

Campos Disponíveis (fields)

CampoDescrição
descriptionCarrega a descrição das categorias
bannerGroupsCarrega os grupos de banners vinculados às categorias
linkedTradePoliciesCarrega as políticas comerciais associada às categorias

Campos de Condição Disponíveis

CampoTipoDescrição
codestring
Código interno de identificação da categoria
namestringNome definido à categoria
directAccessbooleanDetermina se a categoria pode ser acessada diretamente ou se atua apenas para montar a hierarquia

Campos de Ordenação Disponíveis

CampoDescrição
idIdentificador da categoria
nameOrdenação pelo nome da categoria

Exemplo de Requisição

1curl --request GET \
2 --url {{MAIN_URL}}/products/categories/trade-policy/{tradePolicyId} \
3 --header "Authorization: Bearer SEU_TOKEN_AQUI" \
4 --data '{
5 "fields": [
6 "description",
7 "bannerGroups",
8 "linkedTradePolicies"
9 ]
10 }'

✅ Resposta de Sucesso

1{
2 "registers": [
3 {
4 "id": 1,
5 "parentProductCategoryId": null,
6 "code": "categoria-1",
7 "name": "Smartphones",
8 "productOrdering": "",
9 "active": true,
10 "directAccess": true,
11 "bannerGroups": [],
12 "createdAt": "2025-07-25 12:28:03",
13 "updatedAt": "2025-07-25 12:28:03",
14 "tree": null,
15 "filters": [],
16 "url": "smartphones",
17 "urls": [],
18 "linkedTradePolicies": [
19 1
20 ],
21 "description": {
22 "id": 1,
23 "tradePolicyId": 1,
24 "name": "Smartphones",
25 "shortDescription": "",
26 "videoUrl": "",
27 "searchDescription": "",
28 "description": null,
29 "customDescription1": null,
30 "customDescription2": null,
31 "customDescription3": null,
32 "measureTable": null,
33 "seoTitle": "Smartphones | TechBrand",
34 "seoDescription": null,
35 "seoKeywords": "",
36 "seoCanonical": "",
37 "seoSocialTitle": "Smartphones | TechBrand",
38 "seoSocialDescription": null,
39 "seoTwitterImageUrl": "",
40 "seoGraphImageUrl": "",
41 "seoGoogleCategoryId": 0,
42 "seoIndexOnGoogle": false,
43 "seoGoogleCondition": "",
44 "seoGoogleAgeGroup": "",
45 "seoGoogleGender": "",
46 "seoStructuredData": null,
47 "productId": null,
48 "productCategoryId": 1,
49 "productBrandId": null,
50 "productPageId": null
51 }
52 }
53 ],
54 "pagination": {
55 "limit": 10,
56 "offset": 0,
57 "pages": 1,
58 "registers": 10
59 }
60}

Listagem de todas as categorias

GET /products/categories/all

Listagem simples de todas as categorias

Descrição

Endpoint responsável por retornar uma lista simples de todas as categorias da loja 📋.

Atua principalmente como suporte para interfaces do painel administrativo, sendo utilizado pelo frontend para popular componentes de seleção.

Por meio desse endpoint, é possível obter uma listagem simplificada das categorias, facilitando o uso em selects, filtros e controles de categorias dentro do painel.

Essa abordagem torna o carregamento mais leve e eficiente, já que retorna apenas as informações essenciais necessárias para a interface ⚡.

Parâmetros

Headers Obrigatórios

HeaderValorDescrição
AuthorizationBearer {userToken}Token de autenticação

Exemplo de Requisição

1curl --request GET \
2 --url {{MAIN_URL}}/products/categories/all \
3 --header "Authorization: Bearer SEU_TOKEN_AQUI" \

✅ Resposta de Sucesso

1{
2 "1": "musica",
3 "2": "tecnologia",
4 "3": "roupa",
5 "4": "nutrição",
6 "5": "smartphone",
7 "6": "computadores",
8 "7": "processador"
9}

Busca detalhes de uma categoria

GET /products/categories/{categoryId}

Possibilita o lojista de ver detalhes de uma categoria

Descrição

Endpoint responsável por retornar os detalhes de uma categoria específica 🔎.

Por meio dele, o lojista pode visualizar todas as informações cadastradas da categoria, incluindo seus dados e configurações atuais.

Esse endpoint também permite analisar e ajustar a estrutura da categoria conforme necessário, garantindo que sua organização e exibição estejam alinhadas à estratégia da loja.

Com isso, o lojista consegue gerenciar e configurar a categoria de forma mais precisa dentro do catálogo 🗂️.

Parâmetros

Headers Obrigatórios

HeaderValorDescrição
AuthorizationBearer {userToken}Token de autenticação

Parâmetros da URL

ParâmetroTipoObrigatórioDescrição
categoryIdintegerSimIdentificador da categoria que deve ser buscada

Campos Disponíveis (fields)

CampoDescrição
treeCarrega arvore da categoria atual
filtersCarrega todos os filtros aplicáveis na categoria
linkedUrlsCarrega as políticas comerciais associadas

Exemplo de Requisição

1curl --request GET \
2 --url {{MAIN_URL}}/products/categories/{categoryId} \
3 --header "Authorization: Bearer SEU_TOKEN_AQUI" \
4 --data '{
5 "fields": [
6 "tree"
7 "filters"
8 "linkedUrls"
9 ]
10 }'

✅ Resposta de Sucesso

1{
2 "id": 1,
3 "parentProductCategoryId": null,
4 "code": "categoria-1",
5 "name": "smartphones",
6 "productOrdering": "",
7 "active": true,
8 "directAccess": true,
9 "bannerGroups": [],
10 "createdAt": "2025-07-25 12:28:03",
11 "updatedAt": "2025-07-25 12:28:03",
12 "tree": {
13 "current": null,
14 "children": [],
15 "sisters": [],
16 "parent": []
17 },
18 "filters": [],
19 "url": "smartphone",
20 "urls": [],
21 "linkedTradePolicies": [
22 1
23 ],
24 "description": {
25 "id": 1,
26 "tradePolicyId": 1,
27 "name": "smartphone",
28 "shortDescription": "",
29 "videoUrl": "",
30 "searchDescription": "Encontre Smartphones aqui na TechBrand por excelentes preços e condições. Loja especializada em equipamentos de alta tecnologia.",
31 "description": null,
32 "customDescription1": null,
33 "customDescription2": null,
34 "customDescription3": null,
35 "measureTable": null,
36 "seoTitle": "Compre Smartphones Por Excelentes Preços | TechBrand",
37 "seoDescription": null,
38 "seoKeywords": "",
39 "seoCanonical": "",
40 "seoSocialTitle": "Compre Smartphones Por Excelentes Preços | TechBrand",
41 "seoSocialDescription": null,
42 "seoTwitterImageUrl": "",
43 "seoGraphImageUrl": "",
44 "seoGoogleCategoryId": 0,
45 "seoIndexOnGoogle": false,
46 "seoGoogleCondition": "",
47 "seoGoogleAgeGroup": "",
48 "seoGoogleGender": "",
49 "seoStructuredData": null,
50 "productId": null,
51 "productCategoryId": 2,
52 "productBrandId": null,
53 "productPageId": null
54 }
55}

⚠️ Possíveis erros:

Atenção: a seguir estão destacados os principais erros que podem ocorrer neste endpoint.

Os cenários descritos representam os erros mais relevantes do contexto atual, servindo como referência para entendimento e tratamento das falhas.

Código InternoCódigo HttpDescrição
UAPPI_STORE_CATEGORY_NOT_FOUND404A categoria solicitada não foi encontrada.
UAPPI_STORE_FILTER_NOT_FOUND404O filtro solicitado não foi encontrado.

Busca categoria por política comercial

GET /products/categories/{categoryId}/trade-policy/{tradePolicyId}

Possibilita o lojista de ver detalhes de uma categoria

Descrição

Endpoint responsável por retornar os detalhes de uma categoria específica por política comercial 🔎.

Atua em contexto administrativo, sendo utilizado pelo lojista para acessar informações completas da categoria.

Por meio desse endpoint, é possível visualizar todos os dados cadastrados, incluindo configurações e informações complementares.

Também permite consultar relacionamentos vinculados à categoria, facilitando o gerenciamento e a tomada de decisões dentro do painel administrativo.

No contexto de política comercial, a categoria pode apresentar configurações e comportamentos distintos conforme a política aplicada.

Dessa forma, ao realizar a busca considerando uma política comercial específica, a categoria será retornada exatamente conforme configurada para aquela política, respeitando suas regras e particularidades ⚙️.

Parâmetros

Headers Obrigatórios

HeaderValorDescrição
AuthorizationBearer {userToken}Token de autenticação

Parâmetros da URL

ParâmetroTipoObrigatórioDescrição
categoryIdintegerSimIdentificador da categoria que deve ser buscada
tradePolicyIdintegerSimIdentificador da política comercial associada

Campos Disponíveis (fields)

CampoDescrição
treeCarrega arvore da categoria atual
filtersCarrega todos os filtros aplicáveis na categoria
linkedUrlsCarrega as políticas comerciais associadas

Exemplo de Requisição

1curl --request GET \
2 --url {{MAIN_URL}}/products/categories/{categoryId}/trade-policy/{tradePolicyId} \
3 --header "Authorization: Bearer SEU_TOKEN_AQUI" \
4 --data '{
5 "fields": [
6 "tree"
7 "filters"
8 "linkedUrls"
9 ]
10 }'

✅ Resposta de Sucesso

1{
2 "id": 1,
3 "parentProductCategoryId": null,
4 "code": "categoria-1",
5 "name": "smartphones",
6 "productOrdering": "",
7 "active": true,
8 "directAccess": true,
9 "bannerGroups": [],
10 "createdAt": "2025-07-25 12:28:03",
11 "updatedAt": "2025-07-25 12:28:03",
12 "tree": {
13 "current": null,
14 "children": [],
15 "sisters": [],
16 "parent": []
17 },
18 "filters": [],
19 "url": "smartphone",
20 "urls": [],
21 "linkedTradePolicies": [
22 1
23 ],
24 "description": {
25 "id": 1,
26 "tradePolicyId": 1,
27 "name": "smartphone",
28 "shortDescription": "",
29 "videoUrl": "",
30 "searchDescription": "Encontre Smartphones aqui na TechBrand por excelentes preços e condições. Loja especializada em equipamentos de alta tecnologia.",
31 "description": null,
32 "customDescription1": null,
33 "customDescription2": null,
34 "customDescription3": null,
35 "measureTable": null,
36 "seoTitle": "Compre Smartphones Por Excelentes Preços | TechBrand",
37 "seoDescription": null,
38 "seoKeywords": "",
39 "seoCanonical": "",
40 "seoSocialTitle": "Compre Smartphones Por Excelentes Preços | TechBrand",
41 "seoSocialDescription": null,
42 "seoTwitterImageUrl": "",
43 "seoGraphImageUrl": "",
44 "seoGoogleCategoryId": 0,
45 "seoIndexOnGoogle": false,
46 "seoGoogleCondition": "",
47 "seoGoogleAgeGroup": "",
48 "seoGoogleGender": "",
49 "seoStructuredData": null,
50 "productId": null,
51 "productCategoryId": 2,
52 "productBrandId": null,
53 "productPageId": null
54 }
55}

⚠️ Possíveis erros:

Atenção: a seguir estão destacados os principais erros que podem ocorrer neste endpoint.

Os cenários descritos representam os erros mais relevantes do contexto atual, servindo como referência para entendimento e tratamento das falhas.

Código InternoCódigo HttpDescrição
UAPPI_STORE_CATEGORY_NOT_FOUND404A categoria solicitada não foi encontrada.
UAPPI_STORE_FILTER_NOT_FOUND404O filtro solicitado não foi encontrado.

Cadastro de Categoria

POST /products/categories

Permite ao lojista cadastrar categorias para loja e organizar seus produtos

Descrição

Endpoint responsável por permitir que o lojista cadastre categorias 🗂️.

As categorias são utilizadas para organizar produtos em grupos relacionados, facilitando a navegação e a descoberta de itens dentro da loja.

Essa estrutura permite criar seções bem definidas no catálogo, ajudando clientes a localizar produtos de forma mais intuitiva.

Além disso, as categorias podem ser utilizadas em menus, filtros e listagens, contribuindo para uma exibição mais coerente e estruturada dos produtos.

Parâmetros

Headers Obrigatórios

HeaderValorDescrição
Content-Typeapplication/jsonTipo de conteúdo
AuthorizationBearer {userToken}Token de autenticação

Parâmetros do Corpo

ParâmetroTipoObrigatórioDescrição
parentProductCategoryIdinteger❌Determina a hierarquia da categoria atual definindo uma categoria pai
codestring❌Código de identificação interno da categoria
namestring✅Nome da nova categoria
activeboolean✅Status de ativação
directAccessboolean✅Determina se a categoria pode ter acesso direto ou se serve como agrupador
tradePoliciesarray❌Lista de políticas comerciais associadas
tradePolicies.*integer✅Identificador da política comercial

Exemplo de Requisição

1curl --request POST \
2 --url {{MAIN_URL}}/products/categories \
3 --header "Authorization: Bearer SEU_TOKEN_AQUI" \
4 --data '{
5 "parentProductCategoryId": 1
6 "code": "category-2"
7 "name": "smartphones"
8 "active": true
9 "directAccess": true
10 "tradePolicies": [
11 1, 2, 3
12 ]
13 }'

✅ Resposta de Sucesso

HTTP Status: 200 OK

1{
2 "id": 1,
3 "parentProductCategoryId": "1",
4 "code": "category-2",
5 "name": "smartphones",
6 "productOrdering": "",
7 "active": true,
8 "directAccess": true,
9 "bannerGroups": [],
10 "createdAt": "",
11 "updatedAt": "",
12 "tree": null,
13 "filters": [],
14 "url": "",
15 "urls": [],
16 "linkedTradePolicies": [],
17 "description": null
18}

⚠️ Possíveis erros:

Atenção: a seguir estão destacados os principais erros que podem ocorrer neste endpoint.

Os cenários descritos representam os erros mais relevantes do contexto atual, servindo como referência para entendimento e tratamento das falhas.

Código InternoCódigo HttpDescrição
UAPPI_CORE_INVALID_TRADE_POLICY_ID400Os ids de política comercial informados não são permitidos.
UAPPI_STORE_CATEGORY_NOT_FOUND404A categoria solicitada não foi encontrada.
UAPPI_STORE_SAME_CATEGORY_PARENT_CATEGORY400A categoria solicitada e a categoria pai não podem ser a mesma.
UAPPI_STORE_DUPLICATED_CATEGORY_CODE400O código da categoria solicitada já está sendo utilizado.

Atualização de Categoria

POST /products/categories/{categoryId}

Permite ao lojista atualizar categorias para loja e organizar seus produtos

Descrição

Endpoint responsável por permitir que o lojista atualize categorias da loja 🗂️.

Atua em contexto administrativo, possibilitando a modificação de informações e configurações relacionadas às categorias.

Por meio desse endpoint, é possível editar dados já cadastrados, garantindo que as categorias reflitam corretamente a organização e as regras definidas para o catálogo.

Dessa forma, o lojista consegue manter o catálogo sempre atualizado, ajustando categorias conforme as necessidades do negócio ⚙️.

Parâmetros

Headers Obrigatórios

HeaderValorDescrição
Content-Typeapplication/jsonTipo de conteúdo
AuthorizationBearer {userToken}Token de autenticação

Parâmetros do Corpo

ParâmetroTipoObrigatórioDescrição
parentProductCategoryIdinteger❌Determina a hierarquia da categoria atual definindo uma categoria pai
codestring❌Código de identificação interno da categoria
namestring✅Nome da nova categoria
activeboolean✅Status de ativação
directAccessboolean✅Determina se a categoria pode ter acesso direto ou se serve como agrupador
tradePoliciesarray❌Lista de políticas comerciais associadas
tradePolicies.*integer✅Identificador da política comercial

Exemplo de Requisição

1curl --request PUT \
2 --url {{MAIN_URL}}/products/categories/{categoryId} \
3 --header "Authorization: Bearer SEU_TOKEN_AQUI" \
4 --data '{
5 "parentProductCategoryId": 1
6 "code": "category-2"
7 "name": "smartphones"
8 "active": true
9 "directAccess": true
10 "tradePolicies": [
11 1, 2, 3
12 ]
13 }'

✅ Resposta de Sucesso

HTTP Status: 200 OK

1{
2 "id": 1,
3 "parentProductCategoryId": "1",
4 "code": "category-2",
5 "name": "smartphones",
6 "productOrdering": "",
7 "active": true,
8 "directAccess": true,
9 "bannerGroups": [],
10 "createdAt": "",
11 "updatedAt": "",
12 "tree": null,
13 "filters": [],
14 "url": "",
15 "urls": [],
16 "linkedTradePolicies": [],
17 "description": null
18}

⚠️ Possíveis erros:

Atenção: a seguir estão destacados os principais erros que podem ocorrer neste endpoint.

Os cenários descritos representam os erros mais relevantes do contexto atual, servindo como referência para entendimento e tratamento das falhas.

Código InternoCódigo HttpDescrição
UAPPI_CORE_INVALID_TRADE_POLICY_ID400Os ids de política comercial informados não são permitidos.
UAPPI_STORE_CATEGORY_NOT_FOUND404A categoria solicitada não foi encontrada.
UAPPI_STORE_SAME_CATEGORY_PARENT_CATEGORY400A categoria solicitada e a categoria pai não podem ser a mesma.
UAPPI_STORE_DUPLICATED_CATEGORY_CODE400O código da categoria solicitada já está sendo utilizado.

Atualização do vínculo entre categoria e produto

PUT /products/categories/link

Permite que o lojista cadastra ou atualize o vínculo entre produtos e categorias

Descrição

Endpoint responsável por permitir que o lojista vincule produtos às categorias da loja 🔗.

Atua em contexto administrativo, possibilitando a associação entre produtos e as categorias do catálogo.

Por meio desse endpoint, é possível estabelecer e gerenciar vínculos entre categorias e produtos, garantindo que os itens sejam exibidos corretamente dentro da estrutura do catálogo.

Isso facilita a organização e navegação dos produtos, tornando a gestão do catálogo mais clara e eficiente no painel administrativo ⚙️.

Parâmetros

Headers Obrigatórios

HeaderValorDescrição
Content-Typeapplication/jsonTipo de conteúdo
AuthorizationBearer {userToken}Token de autenticação

Parâmetros do Corpo

ParâmetroTipoObrigatórioDescrição
linksarray✅Lista de produtos e categorias que devem ser vinculados ou desvinculados
links.*.productIdinteger✅Identificador do produto que deve ser vinculado a uma categoria
links.*.mainCategoryIdinteger❌Identificador da categoria que deve ser vinculada como a principal do produto
links.*.addCategoriesarray❌Lista de categorias que devem ser vinculadas a um produto
links..addCategories.integer❌Identificador da categoria que deve ser vinculado a um produto
links.*.removeCategoriesarray❌Lista de categorias que devem ser desvinculadas de um produto
links..removeCategories.integer❌Identificador da categoria que deve ser desvinculada de um produto

Exemplo de Requisição

1curl --request PUT \
2 --url {{MAIN_URL}}/products/categories/link \
3 --header "Authorization: Bearer SEU_TOKEN_AQUI" \
4 --data '{
5 "links": [
6 {
7 "productId": 1,
8 "mainCategoryId": 1,
9 "addCategories": [
10 2
11 ],
12 "removeCategories": [
13 ]
14 }
15 ]
16 }'

✅ Resposta de Sucesso

HTTP Status: 200 OK

1{
2 "productId": 1,
3 "mainCategoryId": 1,
4 "addCategories": [
5 2
6 ],
7 "removeCategories": []
8}

Exclusão de categorias

DELETE /products/categories/{categoryId}

Possibilita ao lojista excluir uma categoria

Descrição

Endpoint responsável por permitir a exclusão de categorias cadastradas na loja 🗑️.

Atua em contexto administrativo, possibilitando que o lojista remova categorias que não são mais necessárias no catálogo.

Por meio desse endpoint, é possível excluir categorias indesejadas, ajudando a manter a organização e a consistência da estrutura de categorias.

Dessa forma, o lojista consegue manter o catálogo sempre atualizado, evitando categorias obsoletas ou que não serão mais utilizadas ⚙️.

Parâmetros

Headers Obrigatórios

HeaderValorDescrição
AuthorizationBearer {userToken}Token de autenticação

Parâmetros da URL

ParâmetroTipoObrigatórioDescrição
categoryIdintegerSimIdentificador da categoria que deve ser removida

Exemplo de Requisição

1curl --request POST \
2 --url {{MAIN_URL}}/products/categories/{categoryId} \
3 --header "Authorization: Bearer SEU_TOKEN_AQUI" \

✅ Resposta de Sucesso

HTTP Status: 200 OK

1{
2 "status": true,
3 "data": true
4}

⚠️ Possíveis erros:

Atenção: a seguir estão destacados os principais erros que podem ocorrer neste endpoint.

Os cenários descritos representam os erros mais relevantes do contexto atual, servindo como referência para entendimento e tratamento das falhas.

Código InternoCódigo HttpDescrição
UAPPI_STORE_CATEGORY_NOT_FOUND404A categoria solicitada não foi encontrada.
UAPPI_STORE_CATEGORY_DELETE_CHILDREN400Para excluir a categoria atual é necessário excluir as categorias filhas.
UAPPI_STORE_CATEGORY_DELETE_LINKED_PRODUCTS400Para excluir a categorial atual é necessário excluir os vínculos com produtos.

Uappi é a melhor opção para o crescimento da sua loja!

;