---
title: "Criar produto"
method: POST
path: "/produtos"
tags: ["Produtos"]
---

# Criar produto

`POST /produtos`

## Request body

- CriarProdutoRequestModel — 
  - `sku` string, required
  - `descricaoComplementar` string, nullable
  - `unidade` string, nullable
  - `unidadePorCaixa` string, nullable
  - `ncm` string, nullable
  - `gtin` string, nullable
  - `origem` integer, nullable
  - `codigoEspecificadorSubstituicaoTributaria` string, nullable
  - `garantia` string, nullable
  - `observacoes` string, nullable
  - `marca` MarcaRequestModel — 
    - `id` integer, nullable
  - `categoria` CategoriaRequestModel — 
    - `id` integer, nullable
  - `precos` PrecoProdutoRequestModel — 
    - `preco` number, float, nullable
    - `precoPromocional` number, float, nullable
    - `precoCusto` number, float, nullable
  - `dimensoes` DimensoesProdutoRequestModel — 
    - `embalagem` EmbalagemRequestModel — 
      - `id` integer, nullable
      - `tipo` 0 | 1 | 2 | 3, nullable — - 0 - Nao Definido - 1 - Envelope - 2 - Caixa - 3 - Cilindro
    - `largura` number, float, nullable
    - `altura` number, float, nullable
    - `comprimento` number, float, nullable
    - `diametro` number, float, nullable
    - `pesoLiquido` number, float, nullable
    - `pesoBruto` number, float, nullable
  - `tributacao` TributacaoProdutoRequestModel — 
    - `gtinEmbalagem` string, nullable
    - `valorIPIFixo` number, float, nullable
    - `classeIPI` string, nullable
  - `seo` SeoProdutoRequestModel — 
    - `titulo` string, nullable
    - `descricao` string, nullable
    - `keywords` string[]
    - `linkVideo` string, nullable
    - `slug` string, nullable
  - `fornecedores` FornecedorProdutoRequestModel[]
    - `id` integer
    - `codigoProdutoNoFornecedor` string, nullable
    - `padrao` boolean
  - `descricao` string, required
  - `tipo` 'K' | 'S' | 'V' | 'F' | 'M', required — - K - Kit - S - Simples - V - Com Variacoes - F - Fabricado - M - Materia Prima
  - `estoque` CriarProdutoEstoqueRequestModel — 
    - `controlar` boolean
    - `sobEncomenda` boolean
    - `minimo` number, float, nullable
    - `maximo` number, float, nullable
    - `diasPreparacao` integer, nullable
    - `localizacao` string, nullable
    - `inicial` number, float, nullable
  - `anexos` AnexoRequestModel[]
    - `url` string, nullable
    - `externo` boolean
  - `grade` string[] — Lista de chaves da grade. Obrigatório quando tipo = 'V'. Exemplo: ['Tamanho', 'Cor']. As chaves devem corresponder às chaves das grades das variações.
  - `producao` ProducaoProdutoRequestModel — 
    - `produtos` ProdutoFabricadoRequestModel[] — Lista de produtos que compõem a estrutura de produção. Deve conter ao menos um produto ou uma etapa.
      - `produto` ProdutoRequestModel — 
        - `id` integer
        - `tipo` 'P' | 'S', nullable — - P - Produto - S - Servico
      - `quantidade` number, float
    - `etapas` string[] — Lista de etapas de produção. Deve conter ao menos um produto ou uma etapa.
  - `kit` ProdutoKitRequestModel[] — Lista de produtos do kit. Obrigatório quando tipo = 'K' (Kit).
    - `produto` ProdutoRequestModel — 
      - `id` integer
      - `tipo` 'P' | 'S', nullable — - P - Produto - S - Servico
    - `quantidade` number, float
  - `variacoes` VariacaoProdutoRequestModel[] — Lista de variações do produto. Obrigatório quando tipo = 'V'.
    - `sku` string
    - `gtin` string, nullable
    - `precos` PrecoVariacaoRequestModel — 
      - `preco` number, float, nullable
      - `precoPromocional` number, float, nullable
    - `estoque` EstoqueVariacaoRequestModel — 
      - `inicial` number, float, nullable
    - `grade` GradeVariacaoRequestModel[] — Grade da variação. Cada item deve conter 'chave' e 'valor'. As chaves devem corresponder exatamente às chaves informadas na grade do produto. A quantidade de itens deve ser igual à quantidade de chaves na grade do produto.
      - `chave` string
      - `valor` string

## Response `200`

OK

- CriarProdutoComVariacoesResponseModel — 
  - `id` integer
  - `codigo` string
  - `descricao` string
  - `variacoes` CriarProdutoResponseModel[]
    - `id` integer
    - `codigo` string
    - `descricao` string

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `500` — Internal Server Error
- `503` — Service Unavailable

---

[API](https://skmtc.net/olist/apis/olist-erp-api-v3.md) · [All operations](https://skmtc.net/olist/apis/olist-erp-api-v3/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/olist/olist-erp-api-v3/versions/c351400bb11f/schema)
