Tarifas por degrau
Lê, substitui e apaga a tabela de tarifas por degrau de um método, com degraus por valor do pedido, peso ou itens.
As tarifas por degrau são uma tabela de preços simples: uma lista de degraus, cada um com uma dimension (o que se mede), um limiar amount ("acima de X") e um valor value (quanto cobrar). Elas servem a quem cobra por um único critério de cada vez. Quando precisar combinar limites de valor, peso e itens, prefira as faixas de preço, que têm limites mínimo e máximo explícitos.
Listar tarifas
/api/v1/admin/shipping-methods/{id}/ratesAdminLista as tarifas por degrau de um método
Parâmetros de caminho
iduuidobrigatórioExemplo de requisição
Resposta
Campos da resposta
rate_tiersarrayrate_tiers). null quando não há nenhum.totalintegerrate_tiers[].iduuidrate_tiers[].shipping_iduuidrate_tiers[].rate_area_iduuidrate_tiers[].dimensionstringCWIrate_tiers[].amountintegerrate_tiers[].valueintegerF) ou pontos-base (P).rate_tiers[].value_typestringFPrate_tiers[].per_unitbooleanrate_tiers[].positionintegerSubstituir a tabela
Apaga todos os degraus do método e grava os enviados, na mesma transação, na ordem do vetor (position é preenchido pela posição, o que você enviar é ignorado). Enviar rate_tiers: [] esvazia a tabela.
/api/v1/admin/shipping-methods/{id}/ratesAdminSubstitui as tarifas por degrau de um método
Exige manage_shipping.
Parâmetros de caminho
iduuidobrigatórioCorpo da requisição
rate_tiersarrayobrigatórioLista completa de degraus.
dimensionstringobrigatórioCWIamountintegervalueintegervalue_typestringobrigatórioFPper_unitbooleanpadrão: falserate_area_iduuidExemplo de requisição
Resposta
Apagar um degrau
/api/v1/admin/shipping-methods/{id}/rates/{tierId}AdminApaga um degrau de tarifa por degrau
Exige manage_shipping.
Parâmetros de caminho
iduuidobrigatóriotierIduuidobrigatórioExemplo de requisição
Resposta
Erros
| Status | Quando | Corpo |
|---|---|---|
| 401 | Sem token, token inválido ou expirado | {"error":"invalid or expired token"} |
| 403 | Usuário sem o privilégio manage_shipping | {"error":"insufficient privileges","privilege_required_any":["manage_shipping"]} |
| 400 | Corpo que não é JSON, ou tierId que não é UUID | {"error":"invalid request body","detail":"..."} |
| 500 | dimension ou value_type fora dos valores aceitos (a gravação inteira é desfeita), método inexistente, ou degrau que não existe | {"error":"failed to set rate tiers","detail":"..."} / {"error":"failed to delete rate tier","detail":"rate tier not found: ..."} |