Referência da API · Regra de Preço
Criar Regra de Preço
- Método
- POST
- Rota
-
/v1/priceRule - URL base
https://ws.autorei.net- Token
- Exige token Bearer
Abre esta requisição na documentação pública da API, a fonte oficial da referência.
Descrição
Cria uma regra de preço da sua loja. A regra passa a ser avaliada em toda cotação de preço: quando o produto e o cliente atendem a todos os critérios configurados, o valor é aplicado.
Corpo da Requisição (JSON)
Números e booleanos também são aceitos como string ("priority": "10", "cumulative": "true").
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
name |
string | Sim | Nome da regra. Não pode ser vazio. |
priority |
integer | Sim | Prioridade de aplicação: menor número, mais prioritário. |
type |
string | Sim | PERCENT para percentual, REAL para valor em reais. Nenhum outro valor é aceito. |
value |
number | Sim | Negativo para desconto, positivo para acréscimo. |
cumulative |
boolean | Sim | true permite somar esta regra a outras. |
customerHasStateRegistration |
boolean | Sim | true aplica só a cliente com inscrição estadual. |
quantity |
integer | Não | Quantidade mínima do item na cotação para a regra valer. Só tem efeito acima de 1. |
customerState |
string | Não | UF do endereço da cotação. |
warehouseState |
string | Não | UF do depósito. |
customerCnae |
string | Não | Aplica só a cliente com esse CNAE. Cliente sem CNAE não recebe a regra. |
customerTypeId |
integer | Não | Aplica só ao tipo de cliente informado. |
customerTagId |
integer | Não | Aplica só a clientes com essa tag. A tag precisa ser da sua loja. |
customerPaysIcms |
boolean | Não | true aplica só a cliente contribuinte de ICMS. |
skuPartnerTagId |
integer | Não | Aplica só a produtos com essa tag de preço. A tag precisa ser da sua loja. |
skuStockId |
integer | Não | Aplica só ao estoque informado. |
skuNcm |
string | Não | Aplica só a produtos com esse NCM. Produto sem NCM não recebe a regra. |
promotionalBeforeAfter |
boolean | Não | Marca a regra como promocional, para exibição de preço "de/por". Muda a ordem de avaliação: as regras promocionais são avaliadas depois das comuns. |
Regras de negócio
Critério configurado é critério exigido
Cada campo opcional que você preenche estreita a regra: ela só é aplicada quando o produto e o cliente atendem a todos eles. Deixe de fora o que não é condição.
Regra que zeraria o preço não é aplicada
Se o valor da regra levaria o preço a zero ou a um número negativo, ela é ignorada na cotação, o preço não fica negativo e nenhum erro é gerado.
Ordem de aplicação
Primeiro as regras não promocionais, depois as não cumulativas, depois a priority (menor primeiro) e, em empate, a mais antiga.
Resposta · 201
A regra criada. O código é 201 Created, não 200. promotionalBeforeAfter é gravado, mas não volta na resposta.
| Campo | Tipo | Descrição |
|---|---|---|
id |
integer | Id da regra. É o que você usa para desativá-la. |
name |
string | Nome da regra. |
priority |
integer | Prioridade de aplicação. |
type |
string | PERCENT ou REAL. |
value |
number | Valor aplicado. |
cumulative |
boolean | Se a regra pode somar com outras. |
stateRegistration |
boolean | Corresponde ao customerHasStateRegistration que você enviou, o campo troca de nome na resposta. |
quantity |
integer | Quantidade mínima do item. null quando não usada. |
warehouseState · customerState |
string | UFs configuradas na regra. null quando não usadas. |
customerTagId · customerTypeId · customerCnae · customerPaysIcms |
- | Critérios de cliente configurados. |
customerTypeName |
string | Nome do tipo de cliente. Vem "" quando a regra não usa customerTypeId. |
skuStockId · skuPartnerTagId · skuNcm |
- | Critérios de produto configurados. |
isDiscountBlockedByAttendant |
boolean | Se a regra bloqueia desconto do atendente no carrinho. |
createdBy |
string | E-mail do usuário que criou a regra, resolvido do seu token. |
Erros
| Código | Quando |
|---|---|
| 422 | Campo obrigatório ausente ({"error":"cumulative is required"}), type fora de PERCENT/REAL ({"error":"invalid type"}) ou corpo não parseável ({"error":"invalid request body: ..."}). |
| 404 | customerTagId ou skuPartnerTagId que não é da sua loja: {"error":"Tag de produto não encontrada"}. Mesma resposta de tag inexistente. |
| 401 | Token ausente, malformado ou expirado. |
Exemplo de requisição
curl --request POST 'https://ws.autorei.net/v1/priceRule' \
--header 'Authorization: Bearer {{access_token}}' \
--header 'Content-Type: application/json' \
--data '{
"name": "Desconto Atacado",
"priority": 10,
"type": "PERCENT",
"value": -5,
"cumulative": false,
"customerHasStateRegistration": false,
"quantity": 100
}' Respostas de exemplo
201Sucesso: desconto percentual
{
"id": 4210001,
"name": "Desconto Atacado",
"priority": 10,
"type": "PERCENT",
"value": -5,
"cumulative": false,
"stateRegistration": false,
"isDiscountBlockedByAttendant": false,
"quantity": 100,
"warehouseState": null,
"customerState": null,
"customerTagId": null,
"customerCnae": null,
"customerTypeId": null,
"customerTypeName": "",
"customerPaysIcms": false,
"skuNcm": null,
"skuStockId": null,
"skuPartnerTagId": null,
"createdBy": "integracao@lojaexemplo.com.br"
} Usado em
- Casos de usoIntegração ERP: o caminho típico pela API
- Casos de usoPortal B2B próprio: o caminho típico pela API
- Casos de usoMarketplace B2B: o caminho típico pela API
- Casos de usoVarejo complexo e B2B2C: o caminho típico pela API
- Casos de usoVenda assistida e balcão: o caminho típico pela API
Endpoints relacionados
Gerado a partir da coleção pública da API, publicada em 04/09/2026: api-docs.cws.digital.