Presets e histórico
Lista e aplica presets prontos de visual, e consulta e restaura o histórico da configuração global.
Os presets são visuais prontos (cores e tipografia) que você aplica com uma chamada. Antes de qualquer aplicação ou restauração, a plataforma guarda a configuração atual no histórico, então dá para voltar. Exigem o privilégio manage_theme.
Listar presets
/api/v1/admin/theme/presetsAdminLista os presets de visual disponíveis
Devolve os 4 presets fixos da plataforma: modern (Moderno), classic (Classico, sem acento, como o servidor devolve), minimal (Minimalista) e bold (Ousado). Os nomes e descrições são fixos, em português.
{
"presets": [
{
"id": "modern",
"name": "Moderno",
"description": "Design limpo e contemporaneo com cores vibrantes e cantos arredondados",
"thumbnail": "",
"config": {
"primary_color": "#2563eb",
"secondary_color": "#7c3aed",
"accent_color": "#06b6d4",
"bg_color": "#ffffff",
"text_color": "#0f172a",
"font_family": "Inter, sans-serif",
"border_radius": "8px"
}
}
]
}Campos da resposta
presets[].idstringmodernclassicminimalboldpresets[].namestringpresets[].descriptionstringpresets[].thumbnailstringpresets[].configobjectAplicar preset
/api/v1/admin/theme/presets/{id}/applyAdminAplica um preset à configuração global e ao estilo ativo
Guarda a configuração atual no histórico (nota Before applying preset: <nome>), grava os campos do preset, remove os tokens de cor antigos do extended_config (para que as cores do preset vençam; tokens que não são de cor ficam) e copia o resultado para o estilo ativo do tema ativo, para que a vitrine mude de verdade.
Parâmetros de caminho
idstringobrigatóriomodernclassicminimalboldExemplo de requisição
curl -X POST "$BASE_URL/api/v1/admin/theme/presets/modern/apply" \
-H "Authorization: Bearer $TOKEN"A resposta 200 é a configuração resultante, no formato de Ler a configuração.
Listar o histórico
/api/v1/admin/theme/historyAdminLista os retratos anteriores da configuração
Da entrada mais nova para a mais antiga.
Parâmetros de consulta
limitintegerpadrão: 20{
"entries": [
{
"id": "388efc42-d13c-487e-92fa-30def8b2c125",
"config": { "store_name": "Loja de Demonstração Venddor", "primary_color": "#2563eb" },
"changed_by": "67bf291c-0846-4053-9528-8cfd5ab0ebf1",
"note": "Before installing template: Laranja Energia",
"created_at": "2026-07-13T17:10:22.840767Z"
}
],
"total": 1
}Campos da resposta
entries[].iduuidid da restauração.entries[].configobjectentries[].changed_byuuidentries[].notestringBefore applying preset: ..., Before restoring from history, Before importing theme, Before installing template: ....entries[].created_atstringtotalintegerRestaurar do histórico
/api/v1/admin/theme/history/{id}/restoreAdminVolta a configuração para um retrato anterior
Guarda a configuração atual no histórico (nota Before restoring from history), regrava todos os campos do retrato e copia o resultado para o estilo ativo do tema ativo.
Parâmetros de caminho
iduuidobrigatórioA resposta 200 é a configuração restaurada.
Erros
| Status | Quando | Corpo |
|---|---|---|
| 401 | Sem token ou token expirado | {"error":"missing authorization header"} |
| 403 | Sem o privilégio manage_theme | {"error":"insufficient privileges","required":"manage_theme"} |
| 500 | Preset inexistente; entrada de histórico inexistente ou id que não é UUID | {"error":"failed to apply preset","detail":"preset not found: zzz"} |