VenddorDocumentação API
API atualAPI legada
Guia rápidoReferência completa
Carregando índice…
API atual/Referência completa/Marca e configuração do tema

Exportar e importar

Baixa a configuração visual global como arquivo JSON e importa uma configuração exportada.

Use estas rotas para copiar o visual de uma loja para outra, ou para guardar um backup antes de grandes mudanças. Exigem o privilégio manage_theme.

Exportar a configuração

GET/api/v1/admin/theme/exportAdmin

Baixa a configuração visual global como JSON

A resposta traz o cabeçalho Content-Disposition: attachment; filename=venddor-theme.json, então um navegador baixa como arquivo. A configuração exportada inclui tudo, inclusive id, logo_url e store_name.

200Configuração exportada
json
{
  "version": "1.0",
  "exported_at": "2026-10-11T21:50:07.193971Z",
  "config": {
    "id": "20299fa2-f761-434f-aa54-811e242f65a3",
    "store_name": "Loja de Demonstração Venddor",
    "primary_color": "#2563eb",
    "font_family": "Inter, sans-serif",
    "border_radius": "8px"
  }
}

Campos da resposta

versionstring
Versão do formato, hoje 1.0.
exported_atstring
Momento da exportação (RFC 3339, UTC).
configobject
Configuração completa, com os campos de Ler a configuração (o exemplo mostra só alguns).

Importar uma configuração

POST/api/v1/admin/theme/importAdmin

Aplica uma configuração exportada

Guarda a configuração atual no histórico (nota Before importing theme) e grava todos os campos de config. O arquivo precisa ter o campo version. O id do arquivo é ignorado.

Corpo da requisição

versionstringobrigatório
Versão do arquivo exportado (1.0). Sem ele a resposta é 400.
configobjectobrigatório
Configuração a aplicar, com os campos de Ler a configuração.

Exemplo de requisição

bash
curl "$BASE_URL/api/v1/admin/theme/export" -H "Authorization: Bearer $TOKEN" -o venddor-theme.json

curl -X POST "$BASE_URL/api/v1/admin/theme/import" \
  -H "Authorization: Bearer $TARGET_TOKEN" \
  -H "Content-Type: application/json" \
  --data @venddor-theme.json

A resposta 200 é a configuração resultante, no formato de Ler a configuração.

Erros

StatusQuandoCorpo
400JSON inválido; version ausente{"error":"invalid theme file","detail":"missing version field"}
401Sem token ou token expirado{"error":"missing authorization header"}
403Sem o privilégio manage_theme{"error":"insufficient privileges","required":"manage_theme"}
500Cor inválida dentro de config ou outra falha ao gravar{"error":"failed to import theme","detail":"import theme: color must be a valid hex value like #1a2b3c (primary_color=\"red\")"}
Importar substitui tudo, até o que o arquivo não tem

A importação grava todos os campos do config. Campo ausente no arquivo vira texto vazio, e uma cor vazia faz a loja perder aquela cor. Importe apenas arquivos gerados por export, de preferência inteiros. Como a importação não copia o resultado para o estilo ativo do tema, a vitrine só reflete as cores novas se não houver estilo ativo (veja a visão geral). O retrato anterior fica no histórico para voltar atrás.

Veja também

  • Presets e histórico
  • Exportar e importar temas da vitrine
Anterior
Presets e histórico
Próxima
Temas da vitrine
Nesta página
  • Exportar a configuração
  • Importar uma configuração
  • Exemplo de requisição
  • Erros
  • Veja também