Versões e reversão
Consulta o histórico de códigos anteriores de um script e volta a uma versão antiga.
A cada alteração do code, a plataforma guarda a versão que estava valendo. São guardadas as 5 últimas versões anteriores. Exigem manage_scripts ou manage_settings.
Listar versões
/api/v1/admin/scripts/{id}/versionsAdminHistórico de versões de um script
Parâmetros de caminho
iduuidobrigatórioId do script.
Exemplo de requisição
bash
curl "$BASE_URL/api/v1/admin/scripts/5be3d1d8-44b9-49d2-83be-e1fd9bec2ce7/versions" \
-H "Authorization: Bearer $TOKEN"Resposta
200Versões
json
{
"versions": [
{
"id": "c8645dd4-19dc-4472-ad39-8876bc2897b7",
"script_id": "5be3d1d8-44b9-49d2-83be-e1fd9bec2ce7",
"version": 1,
"code": "var result = input.rates.filter(function (r) { return r.type !== \"express\" || input.cart.total >= 5000; });",
"name": "Esconder frete expresso em carrinho pequeno",
"description": "Remove o frete expresso quando o carrinho tem menos de R$ 50,00",
"created_at": "2026-10-11T21:05:23.731538Z"
}
]
}Campos da resposta
versionsarrayVersões anteriores à atual. Um script nunca alterado devolve lista vazia.
versions[].iduuidId da versão, usado em Reverter.
versions[].script_iduuidId do script.
versions[].versionintegerNúmero da versão.
versions[].code / name / descriptionstringComo o script estava naquela versão.
versions[].created_atstringQuando a versão foi arquivada (RFC 3339).
Erros
| Status | Quando | Exemplo de corpo |
|---|---|---|
| 401 | Token ausente, inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário administrador. | {"error":"admin access required"} |
| 403 | O usuário é administrador, mas não tem o privilégio exigido. | {"error":"insufficient privileges","privilege_required_any":["manage_scripts","manage_settings"]} |
| 500 | id inválido ou falha na consulta. | {"error":"failed to list versions","detail":"..."} |
Reverter
/api/v1/admin/scripts/{id}/rollback/{versionId}AdminVolta o código a uma versão anterior
Parâmetros de caminho
iduuidobrigatórioId do script.
versionIduuidobrigatórioId de uma versão de Listar versões. Precisa pertencer a este script.
Exemplo de requisição
bash
curl -X POST "$BASE_URL/api/v1/admin/scripts/5be3d1d8-44b9-49d2-83be-e1fd9bec2ce7/rollback/c8645dd4-19dc-4472-ad39-8876bc2897b7" \
-H "Authorization: Bearer $TOKEN"Resposta
200Script revertido
json
{
"id": "5be3d1d8-44b9-49d2-83be-e1fd9bec2ce7",
"extension_point": "on_shipping_filter",
"name": "Esconder frete expresso em carrinho pequeno",
"description": "Remove o frete expresso quando o carrinho tem menos de R$ 50,00",
"code": "var result = input.rates.filter(function (r) { return r.type !== \"express\" || input.cart.total >= 5000; });",
"version": 3,
"is_active": true,
"created_at": "2026-10-11T21:05:23.555076Z",
"updated_at": "2026-10-11T21:05:23.909465Z"
}Campos da resposta
campos-O script, com o código da versão restaurada e
version maior que antes.Erros
| Status | Quando | Exemplo de corpo |
|---|---|---|
| 401 | Token ausente, inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário administrador. | {"error":"admin access required"} |
| 403 | O usuário é administrador, mas não tem o privilégio exigido. | {"error":"insufficient privileges","privilege_required_any":["manage_scripts","manage_settings"]} |
| 500 | Versão não pertence ao script, ou ids inválidos. | {"error":"rollback failed","detail":"version ... not found for script ..."} |