---
title: "Atualizar produto (parcial)"
method: PATCH
path: "/produtos/{produtoId}"
tags: ["Produtos"]
---

# Atualizar produto (parcial)

`PATCH /produtos/{produtoId}`

## Request

- Base URL: `https://app.vendizap.com/api`
- URL: `https://app.vendizap.com/api/produtos/{produtoId}`
- Auth: API key in header `X-Auth-Id` and API key in header `X-Auth-Secret`

Este método é utilizado para atualizar um produto existente. É
similar ao método **PUT**, porém a principal diferença é que campos
que são arrays como `variacoes`, `imagens` e `categorias`, quando
informados através deste método, serão apenas **acrescentados**, e
não substituídos como acontece no **PUT**.

**Exemplo:** caso seja enviado um array com 1 imagem neste método
para um produto que contenha 2 imagens, essa imagem será acrescentada
no produto, ficando ele com 3 imagens. O mesmo acontece para
variações e categorias. Em relação às variações, caso o controle de
estoque seja impactado com a inclusão de uma variação, o estoque
será zerado.

Os demais campos são possíveis de atualizar normalmente, conforme
o método **PUT**.

## Request body

- ProdutoUpdate
  - `descricao` string, required
  - `preco` number
  - `promocao` PromocaoInput
    - `dataHoraInicio` string, date-time: Formato: YYYY-mm-dd HH:MM:SS
    - `dataHoraFim` string, date-time
    - `percentual` number
    - `precoPromocional` number
  - `imagens` string[]: Array com Urls e/ou base64 das imagens. A primeira será a capa do produto.
  - `detalhes` string
  - `categorias` string[]
  - `variacoes` ProdutoVariacaoInput[]
    - `id` string, required
    - `obrigatoria` boolean
    - `multipla_selecao` boolean
    - `adicional` boolean
    - `qtdeMinima` number, nullable
    - `qtdeMaxima` number, nullable
    - `variaveis` ProdutoVariacaoVariavelInput[], required
      - `id` string, required
      - `preco` number
      - `imagem` integer: Índice (iniciando em 0) referente à imagem do produto que será mostrada quando essa variável for selecionada.
  - `combinacoes` CombinacaoInput[]
    - `codigo` string: Código (SKU) da combinação.
    - `preco` number
    - `ean` string: Código de barras (EAN/GTIN) da combinação. Opcional.
    - `combinacao` CombinacaoParInput[], required
      - `variacao` string, required: ID ou nome da variação.
      - `variavel` string, required: ID ou nome da variável.
  - `dimensoes` object
    - `altura` number
    - `largura` number
    - `comprimento` number
    - `peso` number
  - `unidadeVenda` 'Unidade' | 'Caixa' | 'Pacote' | 'Peça' | 'Quilo' | 'Porção' | 'Pedaço' | 'Metro' | 'Par' | 'Jogo'
  - `unidadePreco` 'Unidade' | 'Caixa' | 'Pacote' | 'Peça' | 'Quilo' | 'Porção' | 'Pedaço' | 'Metro' | 'Par' | 'Jogo'
  - `codigo` string
  - `ean` string: Código de barras (EAN/GTIN). Apenas para produto SEM variação — em produto com variação, o EAN é por combinação.
  - `qtdeMinima` number
  - `qtdeMaxima` number
  - `exibir` boolean
  - `destaque` boolean

## Response `200`

Produto atualizado parcialmente.

- IdResponse
  - `id` string

## Other responses

- `400`: Erro na requisição que não foi possível ser completada. O erro é retornado em uma string (não JSON).
- `401`: Credenciais informadas inválidas.

---

[API](https://skmtc.dev/vendizap/apis/api-vendizap.md) · [All operations](https://skmtc.dev/vendizap/apis/api-vendizap/llms.txt) · [OpenAPI document](https://skmtc.dev/vendizap/apis/api-vendizap/revisions/2c0d0a254abb?raw)
