Skip to content

Documentação de Menus

Visão Geral

O menu é responsável por estruturar a navegação da loja, organizando links e acessos para as principais áreas da plataforma 🧭.

Por meio dos menus, é possível direcionar usuários para categorias, páginas, marcas, vitrines ou outras seções estratégicas, facilitando a descoberta de conteúdos e produtos.

Cada menu pode conter múltiplos itens de navegação, permitindo construir estruturas simples ou hierarquias mais completas, conforme a necessidade da loja.

Além disso, os menus podem ser vinculados a localizações específicas, possibilitando que diferentes menus sejam exibidos em áreas distintas da interface, como cabeçalho, rodapé ou menus laterais.

Entidades Relacionadas

Itens de Menu

Os itens de menu representam os elementos individuais de navegação dentro de um menu.

Cada item define o rótulo exibido ao usuário e o destino do link, podendo apontar para diferentes áreas da loja ou conteúdos específicos.

Essa estrutura permite organizar a navegação de forma flexível, criando desde menus simples até estruturas mais complexas de navegação.

Localização

O menu pode estar vinculado a uma localização específica.

As localizações são gerenciadas pelo frontend e permitem retornar um conjunto de entidades com base no local informado, determinando onde o menu deve ser exibido na interface.

Para mais informações sobre localizações, clique [aqui]({{ MAIN_URL }}/).

Listar Menus por Código

GET /api/v3/publics/template/menus

Obtém menus de navegação por códigos

Descrição

Endpoint responsável por retornar menus de navegação com estrutura hierárquica completa, incluindo itens ativos, URLs dinâmicas e relacionamento com banners.

Suporta menus aninhados (multi-nível) e diferentes tipos de links, permitindo a construção dinâmica da navegação do site.

---

Tipos de Item de Menu

TipoDescriçãoCampo Preenchido
categoryLink para categoriaproductCategoryId
brandLink para marcaproductBrandId
productLink para produtoproductId
pageLink para página customizadaproductPageId
customLink customizadoNenhum (URL manual)
---

Observações

  • Estrutura Hierárquica: Suporta múltiplos níveis de profundidade (submenus)
  • URLs Dinâmicas: A URL é gerada automaticamente com base no type e na entidade vinculada
  • Apenas Itens Ativos: Apenas itens com active: true são retornados
  • Ordenação: Itens são ordenados pelo campo order
  • Relacionamento com Banners: O campo bannerGroups permite exibir banners ao passar o mouse sobre o item
  • Vitrine Vinculada: O campo showcaseCode retorna o code da vitrine relacionada ao item, ou null quando não houver vitrine vinculada
  • Trade Policy: As URLs respeitam a política comercial configurada
  • Recursividade: O campo items permite navegação em árvore, suportando subníveis ilimitados
  • Tipos de Item de Menu

    TipoDescriçãoCampo Preenchido
    categoryLink para categoriaproductCategoryId
    brandLink para marcaproductBrandId
    productLink para produtoproductId
    pageLink para página customizadaproductPageId
    customLink customizadoNenhum (URL manual)

    Observações

  • Estrutura Hierárquica: Suporta menu com múltiplos níveis de profundidade
  • URLs Dinâmicas: A URL é gerada automaticamente com base no type e entidade vinculada
  • Apenas Itens Ativos: Apenas itens com active: true são retornados
  • Ordenação: Itens são ordenados pelo campo order
  • Relacionamento com Banners: Campo bannerGroups permite exibir banners ao passar mouse sobre item
  • Vitrine Vinculada: Campo showcaseCode retorna o code da vitrine relacionada ao item, ou null quando não houver vitrine vinculada
  • Trade Policy: URLs respeitam a política comercial configurada
  • Recursividade: Campo items permite navegação em árvore (submenus)

Parâmetros de Query

Headers Obrigatórios

HeaderValorDescrição
Content-Typeapplication/jsonTipo de conteúdo

Parâmetros de Corpo

ParâmetroTipoObrigatórioDescrição
codesarraySimArray com códigos dos menus desejados
codes.*stringNãoCódigo individual de menu

Exemplo de Requisição

1curl --request GET \
2 --url '{{MAIN_URL}}/publics/template/menus' \
3 --header 'uappi-cookie-name: uappi-cookie' \
4 --data '{
5 "codes": ["menu-principal", "menu-footer"]
6 }'

✅ Resposta de Sucesso

1{
2 "status": true,
3 "data": [
4 {
5 "id": 1,
6 "locationId": "header",
7 "code": "menu-principal",
8 "name": "Menu Principal",
9 "items": [
10 {
11 "id": 10,
12 "templateMenuItemId": 0,
13 "active": true,
14 "title": "Eletrônicos",
15 "type": "category",
16 "productId": null,
17 "productCategoryId": 5,
18 "productBrandId": null,
19 "productPageId": null,
20 "image1": "https://cdn.sua-loja.com.br/menu/eletronicos.jpg",
21 "image2": "",
22 "highlight": true,
23 "order": 1,
24 "url": "/eletronicos",
25 "target": "_self",
26 "bannerGroups": ["banner-submenu-eletronicos"],
27 "showcaseCode": null,
28 "items": [
29 {
30 "id": 11,
31 "templateMenuItemId": 10,
32 "active": true,
33 "title": "Smartphones",
34 "type": "category",
35 "productId": null,
36 "productCategoryId": 8,
37 "productBrandId": null,
38 "productPageId": null,
39 "image1": "",
40 "image2": "",
41 "highlight": false,
42 "order": 1,
43 "url": "/eletronicos/smartphones",
44 "target": "_self",
45 "bannerGroups": [],
46 "showcaseCode": null,
47 "items": []
48 },
49 {
50 "id": 12,
51 "templateMenuItemId": 10,
52 "active": true,
53 "title": "Notebooks",
54 "type": "category",
55 "productId": null,
56 "productCategoryId": 9,
57 "productBrandId": null,
58 "productPageId": null,
59 "image1": "",
60 "image2": "",
61 "highlight": false,
62 "order": 2,
63 "url": "/eletronicos/notebooks",
64 "target": "_self",
65 "bannerGroups": [],
66 "showcaseCode": null,
67 "items": []
68 }
69 ]
70 },
71 {
72 "id": 20,
73 "templateMenuItemId": 0,
74 "active": true,
75 "title": "Promoções",
76 "type": "page",
77 "productId": null,
78 "productCategoryId": null,
79 "productBrandId": null,
80 "productPageId": 15,
81 "image1": "",
82 "image2": "",
83 "highlight": false,
84 "order": 2,
85 "url": "/promocoes",
86 "target": "_self",
87 "bannerGroups": [],
88 "showcaseCode": null,
89 "items": []
90 }
91 ]
92 }
93 ]
94}

⚠️ 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.

1{
2 "status": false,
3 "data": {
4 "code": 404,
5 "errorCode": "UAPPI_STORE_MENU_NOT_FOUND",
6 "message": "Menu not found with the provided codes."
7 }
8}

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

;