{"section":"tracks","requestedLocale":"pt","requestedSlug":"cadastrar-regra-de-preco","locale":"pt","slug":"cadastrar-regra-de-preco","path":"docs/pt/tracks/módulos-vtex-primeiros-passos/precos-101/cadastrar-regra-de-preco.md","branch":"main","content":"Há duas forma de cadastrar uma regra de preço:\n\n- pelo Admin \n- por API REST\n\nSiga o passo a passo abaixo para cadastrar a regra de preço da sua loja:\n\n## Admin\n\n1. No Admin VTEX, acesse **Preços > Regras de preços**, ou digite **Regras de preços** na barra de busca no topo da página.\n2. Clique no botão verde **Nova Regra**.\n3. No primeiro passo, **Quais os dados gerais dessa regra?**, selecione no *dropdown* uma tabela de preços.\n4. No segundo passo, **Em quais itens esta regra será aplicada?**, selecione se a regra irá se *Aplicar em todos os produtos* ou *Apenas em categorias e marcas escolhidas*. Se selecionada a segunda opção, você deve escolher as **Categorias** e/ou **Marcas** desejadas. \n5. No passo **Aplicar regra para itens em uma faixa de markup?**, ative o *toggle* *Utilizar faixa de markup* para usar este critério. Digite o percentual mínimo de markup no campo **de** e o percentual máximo de markup no campo **até** para selecionar os itens dentro desta faixa.\n7. No passo **Aplicar regra apenas em determinados dias?**, ative o *toggle* *Utilizar apenas em período específico* para usar este critério. Digite a **Data Início**, a **Hora Início**, a **Data Fim** e a **Hora Fim** do período em que a regra será aplicada. \n7. No passo **Qual será a variação do preço para essa regra?**, defina o percentual de variação de preço em *Modificador*. A regra de preço vai aplicar esta variação aos SKUs escolhidos.\n8. Clique em **Salvar**\n9. Uma *barra lateral* será aberta para confirmação da criação da regra. Clique em **Confirmar**.\n\n## API REST\n\n> ⚠️ As autenticações para as chamadas de API REST do módulo de Preços devem ser feitas via AppKey e AppToken. Para entender mais, acesse nosso artigo sobre [como gerar um Appkey e um AppToken para autenticar suas integrações](https://developers.vtex.com/vtex-developer-docs/docs/getting-started-authentication)\n\nPara cadastrar uma **regra de preço**, você precisa enviar um __POST__ para o seguinte endpoint:\n\n`https://api.vtex.com/{{accountName}}/pricing/pipeline/catalog`\n\n- O objeto do request tem as seguintes propriedades:\n\n| __Propriedades__ | __Tipos__ | __Descrição__ |\n|------------------|-----------|-------------|\n| tradePolicyId | string | ID da tabela de preço na qual a regra será aplicada |\n| rules | array | Critérios da regra de preço |\n| id | integer | ID da regra de preço. É possível cadastrar mais de uma regra para a mesma tabela de preços. |\n| context | object | Objeto que contém as propriedades da regra de preço |\n| categories | object | Categoria que a regra será aplicada |\n| brands | object | Marca que a regra será aplicada |\n| markupRange | object | Regra aplicada para itens em uma faixa de markup |\n| from | integer | Valor mínimo da faixa de markup |\n| to | integer | Valor da máximo faixa de markup |\n| dateRange | object | Regra aplicada apenas em determinados dias |\n| from | string | Data e horário de início |\n| to | string | Data e horário fim |\n| percentualModifier | integer | Variação do preço para essa regra |\n\n- O objeto de response tem as seguintes propriedades: \n\n| __Propriedades__ | __Tipos__ | __Descrição__ |\n|------------------|-----------|-------------|\n| tradePolicyId | string | Id da tabela de preço na qual a regra será aplicada |\n| rules | array | Array com os objetos das regras de preço a serem aplicadas à tabela de preços |\n| id | integer | Id da regra de preço. É possível cadastrar mais de uma regra para a mesma tabela de preços. |\n| context | object | Objeto que contém as propriedades da regra de preço |\n| categories | object | Categoria que a regra será aplicada |\n| brands | object | Marca que a regra será aplicada |\n| markupRange | object | Regra aplicada para itens em uma faixa de markup |\n| from | integer | Valor mínimo da faixa de markup |\n| to | integer | Valor da máximo faixa de markup |\n| dateRange | object | Regra aplicada apenas em determinados dias |\n| from | string | Data e horário de início |\n| to | string | Data e horário fim |\n| percentualModifier | integer | Variação do preço para essa regra |\n\n- Abaixo, temos um exemplo de Header e Body a serem passados no request\n\n### Headers \n\n| Header| Value |\n|------------------|-----------|\n| Accept | application/vnd.vtex.pricing.v3+json |\n| Content-Type | application/json |\n| X-VTEX-API-AppKey | \\{\\{X-VTEX-API-AppKey\\}\\} |\n| X-VTEX-API-AppToken | \\{\\{X-VTEX-API-AppToken\\}\\} |\n\n### Body \n```json\n {\n        \"tradePolicyId\": \"1\",\n        \"rules\": [\n            {\n                \"id\": 0,\n                \"context\": {\n                    \"categories\": {\n                        \"8\": \"categoryName\"\n                    },\n                    \"brands\": {\n                        \"2000003\": \"brandName\"\n                    },\n                    \"markupRange\": {\n                        \"from\": 20,\n                        \"to\": 50\n                    },\n                    \"dateRange\": {\n                        \"from\": \"2019-07-09T15:00:00.000Z\",\n                        \"to\": \"2019-07-12T15:00:00.000Z\"\n                    }\n                },\n                \"percentualModifier\": 10\n            }\n        ]\n }\n```\n*Se for passado um array vazio, as regras cadastradas anteriormente serão apagadas*"}