VenddorDocumentação API
API atualAPI legada
Guia rápidoReferência completa
Carregando índice…
API atual/Referência completa/Layouts avançados

Colunas da linha

Cria, altera e remove colunas, com larguras responsivas em uma grade de 12.

A coluna divide uma linha na horizontal. A largura vai de 1 a 12 e é definida por dispositivo: uma coluna width_desktop: 6 ocupa metade da linha no desktop e, com width_mobile: 12, a linha inteira no celular. Duas colunas 6+6 ficam lado a lado e empilham no celular.

Criar coluna

Adiciona uma coluna à linha. Larguras omitidas ou zero viram 12 (largura total).

POST/api/v1/admin/advanced-layouts/rows/{id}/columnsAdmin

Criar uma coluna na linha

Requer o privilégio manage_layouts.

Parâmetros de caminho

idintegerobrigatório
Id numérico da linha.

Corpo da requisição

sort_orderintegerpadrão: 0
Posição na linha.
width_desktopintegerpadrão: 12
Largura no desktop, 1 a 12.
width_tabletintegerpadrão: 12
Largura no tablet, 1 a 12.
width_mobileintegerpadrão: 12
Largura no celular, 1 a 12.
visibilityobject
Visibilidade por dispositivo. Chaves desktop, tablet e mobile, valores booleanos. Se omitido na criação, vale true nos três.
usergroup_idsstring[]
Restringe a visibilidade a grupos de compradores. Vazio (padrão) mostra a todos. Aceita os atalhos guest (visitante anônimo) e registered (logado), além de UUIDs de grupos.
custom_classstring
Classe CSS extra.
designobject
Camada de estilo universal (fundo, espaçamento, borda, sombra, tipografia, tamanho, efeitos), com sobrescritas por breakpoint em base, tablet e mobile. O formato dos campos vem de Esquema de design. Opcional.

Exemplo de requisição

bash
curl -X POST "$BASE_URL/api/v1/admin/advanced-layouts/rows/8029/columns" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "width_desktop": 6,
    "width_tablet": 6,
    "width_mobile": 12
  }'

Resposta

201Coluna criada
json
{
  "id": 8786,
  "row_id": 8029,
  "sort_order": 0,
  "width_desktop": 6,
  "width_tablet": 6,
  "width_mobile": 12,
  "visibility": {
    "desktop": true,
    "tablet": true,
    "mobile": true
  }
}

Campos da resposta

idinteger
Id da coluna.
row_idinteger
Id da linha dona da coluna.
sort_orderinteger
Posição da coluna dentro da linha.
width_desktopinteger
Largura em desktop, de 1 a 12 (grade de 12 colunas).
width_tabletinteger
Largura em tablet, de 1 a 12.
width_mobileinteger
Largura em celular, de 1 a 12.
visibilityobject
Visibilidade por dispositivo.
usergroup_idsstring[]
Grupos de compradores que veem a coluna. Ausente quando vazio.
custom_classstring
Classe CSS extra. Colunas não têm CSS próprio: estilize pela classe na linha ou use design.
designobject
Camada de estilo universal.
blocksarray
Blocos da coluna (só vem quando carregada com filhos).

Erros

StatusQuandoCorpo de exemplo
400O id de row no caminho não é um inteiro.{"error":"invalid row id","detail":"id must be an integer"}
400Corpo JSON inválido.{"error":"invalid request body","detail":"unexpected EOF"}
401Sem token, token inválido ou expirado.{"error":"invalid or expired token"}
403Seu usuário não tem o privilégio manage_layouts.{"error":"insufficient privileges","required":"manage_layouts"}
500Falha ao gravar ou ler no banco, ou id inexistente onde a rota não trata 404.{"error":"failed to create column","detail":"..."}
Larguras não são validadas

O servidor não recusa larguras fora de 1 a 12 nem exige que a soma da linha feche 12. O front-end quebra a linha quando a soma passa de 12.

Atualizar coluna

Altera só os campos enviados.

PUT/api/v1/admin/advanced-layouts/columns/{id}Admin

Atualizar uma coluna

Requer o privilégio manage_layouts.

Parâmetros de caminho

idintegerobrigatório
Id numérico da coluna.

Corpo da requisição

sort_orderinteger
Posição.
width_desktopinteger
Largura no desktop, 1 a 12.
width_tabletinteger
Largura no tablet.
width_mobileinteger
Largura no celular.
visibilityobject
Visibilidade por dispositivo. Chaves desktop, tablet e mobile, valores booleanos. Se omitido, o valor atual é mantido. Se enviado, substitui o objeto inteiro.
usergroup_idsstring[]
Restringe a visibilidade a grupos de compradores. Vazio (padrão) mostra a todos. Aceita os atalhos guest (visitante anônimo) e registered (logado), além de UUIDs de grupos.
custom_classstring
Classe CSS extra.
designobject
Camada de estilo universal (fundo, espaçamento, borda, sombra, tipografia, tamanho, efeitos), com sobrescritas por breakpoint em base, tablet e mobile. O formato dos campos vem de Esquema de design. Substitui o objeto inteiro quando enviado; envie {} para limpar.

Exemplo de requisição

bash
curl -X PUT "$BASE_URL/api/v1/admin/advanced-layouts/columns/8786" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "width_desktop": 8
  }'

Resposta

200Coluna atualizada
json
{
  "id": 8786,
  "row_id": 8029,
  "sort_order": 0,
  "width_desktop": 8,
  "width_tablet": 12,
  "width_mobile": 12,
  "visibility": {
    "desktop": true,
    "tablet": true,
    "mobile": true
  }
}

Campos da resposta

idinteger
Id da coluna.
row_idinteger
Id da linha dona da coluna.
sort_orderinteger
Posição da coluna dentro da linha.
width_desktopinteger
Largura em desktop, de 1 a 12 (grade de 12 colunas).
width_tabletinteger
Largura em tablet, de 1 a 12.
width_mobileinteger
Largura em celular, de 1 a 12.
visibilityobject
Visibilidade por dispositivo.
usergroup_idsstring[]
Grupos de compradores que veem a coluna. Ausente quando vazio.
custom_classstring
Classe CSS extra. Colunas não têm CSS próprio: estilize pela classe na linha ou use design.
designobject
Camada de estilo universal.
blocksarray
Blocos da coluna (só vem quando carregada com filhos).

Erros

StatusQuandoCorpo de exemplo
400O id de column no caminho não é um inteiro.{"error":"invalid column id","detail":"id must be an integer"}
400Corpo JSON inválido.{"error":"invalid request body","detail":"unexpected EOF"}
401Sem token, token inválido ou expirado.{"error":"invalid or expired token"}
403Seu usuário não tem o privilégio manage_layouts.{"error":"insufficient privileges","required":"manage_layouts"}
500Falha ao gravar ou ler no banco, ou id inexistente onde a rota não trata 404.{"error":"failed to update column","detail":"..."}

Excluir coluna

Remove a coluna e os blocos dentro dela.

DELETE/api/v1/admin/advanced-layouts/columns/{id}Admin

Excluir uma coluna

Requer o privilégio manage_layouts.

Parâmetros de caminho

idintegerobrigatório
Id numérico da coluna.

Exemplo de requisição

bash
curl -X DELETE "$BASE_URL/api/v1/admin/advanced-layouts/columns/8786" \
  -H "Authorization: Bearer $TOKEN"

Resposta

200Excluída
json
{
  "message": "column deleted"
}

Erros

StatusQuandoCorpo de exemplo
400O id de column no caminho não é um inteiro.{"error":"invalid column id","detail":"id must be an integer"}
401Sem token, token inválido ou expirado.{"error":"invalid or expired token"}
403Seu usuário não tem o privilégio manage_layouts.{"error":"insufficient privileges","required":"manage_layouts"}
404Coluna não existe.{"error":"column not found","detail":"8786"}
500Falha ao gravar ou ler no banco, ou id inexistente onde a rota não trata 404.{"error":"failed to delete column","detail":"..."}

Veja também

  • Layouts avançados: visão geral
  • Blocos
Anterior
Contêineres e linhas
Próxima
Blocos
Nesta página
  • Criar coluna
  • Exemplo de requisição
  • Resposta
  • Erros
  • Atualizar coluna
  • Exemplo de requisição
  • Resposta
  • Erros
  • Excluir coluna
  • Exemplo de requisição
  • Resposta
  • Erros
  • Veja também