---
title: "Update a product"
method: PUT
path: "/v1/products/{id}"
tags: ["Products"]
---

# Update a product

`PUT /v1/products/{id}`

## Path parameters

- `id` integer, required

## Request body

- Product — Product
  - `active` boolean — Indicates whether the product is active
  - `defaultQuantity` number, double — Default quantity
  - `description` string, nullable — Description
  - `family` ProductFamily — Product family
    - `id` integer — ID
    - `label` string, nullable — Label
    - `number` string, nullable — Number
  - `id` integer — Product ID
  - `imageUrl` string, nullable — Gets the product image URL
  - `internalId` string, nullable — ID used in your system
  - `internalNotes` string, nullable — Internal notes
  - `isUnitPriceTaxIncluded` boolean — Indicates whether unit price include vat
  - `name` string, nullable — Name
  - `number` string, nullable — Number
  - `purchasePrice` number, double — Purchase price
  - `type` 'Product' | 'Service' | 'Text'
  - `unit` Unit — Unit
    - `code` string, nullable — Code
    - `conversion` number, double — Conversion
    - `decimals` number, double, nullable — Decimals
    - `id` integer, nullable — Unit Id
    - `name` string, nullable — Name
    - `type` 'Time' | 'Weight' | 'Area' | 'Volume' | 'Dimension' | 'Other'
  - `unitPrice` number, double — Unit price
  - `vat` Vat — Vat
    - `default` boolean — Indicatess if this is the default VAT for the region
    - `id` integer, nullable — Vat ID
    - `label` string, nullable — Label
    - `rate` number, double, nullable — Rate
    - `region` 'FR' | 'EU' | 'IE' | 'DOM' | 'Corse' | 'Monaco'

## Response `200`

OK

- Product — Product
  - `active` boolean — Indicates whether the product is active
  - `defaultQuantity` number, double — Default quantity
  - `description` string, nullable — Description
  - `family` ProductFamily — Product family
    - `id` integer — ID
    - `label` string, nullable — Label
    - `number` string, nullable — Number
  - `id` integer — Product ID
  - `imageUrl` string, nullable — Gets the product image URL
  - `internalId` string, nullable — ID used in your system
  - `internalNotes` string, nullable — Internal notes
  - `isUnitPriceTaxIncluded` boolean — Indicates whether unit price include vat
  - `name` string, nullable — Name
  - `number` string, nullable — Number
  - `purchasePrice` number, double — Purchase price
  - `type` 'Product' | 'Service' | 'Text'
  - `unit` Unit — Unit
    - `code` string, nullable — Code
    - `conversion` number, double — Conversion
    - `decimals` number, double, nullable — Decimals
    - `id` integer, nullable — Unit Id
    - `name` string, nullable — Name
    - `type` 'Time' | 'Weight' | 'Area' | 'Volume' | 'Dimension' | 'Other'
  - `unitPrice` number, double — Unit price
  - `vat` Vat — Vat
    - `default` boolean — Indicatess if this is the default VAT for the region
    - `id` integer, nullable — Vat ID
    - `label` string, nullable — Label
    - `rate` number, double, nullable — Rate
    - `region` 'FR' | 'EU' | 'IE' | 'DOM' | 'Corse' | 'Monaco'

## Other responses

- `404` — Not Found

---

[API](https://skmtc.net/altoviz/apis/altoviz-api.md) · [All operations](https://skmtc.net/altoviz/apis/altoviz-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/altoviz/altoviz-api/revisions/e65392ac5b5f/schema)
