Configuração da janela
Lê e altera os dias de preparo, o horário de corte, os dias úteis, o fuso e o formato de exibição da promessa de entrega.
A configuração é um registro único da loja. Se ainda não existir, o primeiro GET o cria com valores padrão e devolve o resultado. A alteração é parcial: só o que for enviado muda. Novas estimativas já usam os valores novos.
Ler a configuração
/api/v1/admin/delivery-window/settingsAdminLê a configuração da janela de entrega
Exige o privilégio manage_shipping (também para ler) e o módulo delivery-window ligado.
Exemplo de requisição
bash
curl "$BASE_URL/api/v1/admin/delivery-window/settings" \
-H "Authorization: Bearer $TOKEN"Resposta
200Configuração
json
{
"id": "e174d862-4275-4a9d-98a4-0373ffa52c87",
"processing_days": 2,
"cutoff_time": "14:00",
"business_days": [
"mon",
"tue",
"wed",
"thu",
"fri"
],
"timezone": "America/Sao_Paulo",
"display_format": "date_range",
"created_at": "2026-06-29T03:46:23.265144Z",
"updated_at": "2026-07-19T21:42:28.406702Z"
}Campos da resposta
iduuidId do registro de configuração.
processing_daysintegerDias úteis que a loja leva para preparar o pedido.
cutoff_timestringHorário de corte,
HH:MM.business_daysarrayDias em que a loja trabalha:
mon, tue, wed, thu, fri, sat, sun.timezonestringFuso horário IANA, por exemplo
America/Sao_Paulo.display_formatstringdate_rangebusiness_dayshiddenComo a data é mostrada.
created_atstringCriação, RFC 3339 em UTC.
updated_atstringÚltima alteração, RFC 3339 em UTC.
Alterar a configuração
/api/v1/admin/delivery-window/settingsAdminAltera a configuração da janela de entrega
Exige o privilégio manage_shipping (também para ler) e o módulo delivery-window ligado.
Corpo da requisição
processing_daysintegerDias úteis de preparo. Zero ou maior.
cutoff_timestringHorário de corte,
HH:MM.business_daysarrayLista completa dos dias úteis. Lista vazia ou ausente não altera nada.
timezonestringFuso IANA.
display_formatstringdate_rangebusiness_dayshiddenFormato de exibição.
Exemplo de requisição
bash
curl -X PUT "$BASE_URL/api/v1/admin/delivery-window/settings" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"processing_days": 1,
"cutoff_time": "15:00",
"business_days": [
"mon",
"tue",
"wed",
"thu",
"fri",
"sat"
],
"display_format": "business_days"
}'Resposta
200Configuração alterada
json
{
"id": "e174d862-4275-4a9d-98a4-0373ffa52c87",
"processing_days": 1,
"cutoff_time": "15:00",
"business_days": [
"mon",
"tue",
"wed",
"thu",
"fri",
"sat"
],
"timezone": "America/Sao_Paulo",
"display_format": "business_days",
"created_at": "2026-06-29T03:46:23.265144Z",
"updated_at": "2026-07-19T21:42:28.406702Z"
}Erros
| Status | Quando | Corpo |
|---|---|---|
| 401 | Sem token, token inválido ou expirado | {"error":"invalid or expired token"} |
| 403 | Sem o privilégio manage_shipping | {"error":"insufficient privileges","privilege_required_any":["manage_shipping"]} |
| 403 | Módulo delivery-window desligado | {"error":"module_disabled","module":"delivery-window"} |
| 400 | Corpo que não é JSON; processing_days negativo; display_format fora da lista; cutoff_time que o banco recusa | {"error":"display_format must be 'date_range', 'business_days' or 'hidden'"} |
| 500 | Falha ao ler a configuração | {"error":"failed to get delivery window settings","detail":"..."} |