---
title: "Update/create a product"
method: PATCH
path: "/api/rest/v1/products/{code}"
tags: ["Product [identifier]"]
---

# Update/create a product

`PATCH /api/rest/v1/products/{code}`

This endpoint allows you to update a given product. Learn more about <a href="/documentation/update.html#update-behavior">Update behavior</a>. Note that if no product exists for the given identifier, it creates it. In the Entreprise Edition, since the v2.0, permissions based on your user groups are applied to the product you try to update. It may result in the creation of a draft if you only have edit rights through the product's categories.

## Path parameters

- `code` string, required

## Request body

- object
  - `uuid` string — Product UUID
  - `identifier` string, required — Product identifier, i.e. the value of the only `pim_catalog_identifier` attribute
  - `enabled` boolean — Whether the product is enabled
  - `family` string — <a href='api-reference-paas.html#Family'>Family</a> code from which the product inherits its attributes and attributes requirements.
  - `categories` string[] — Codes of the <a href='api-reference-paas.html#Category'>categories</a> in which the product is classified
  - `groups` string[] — Codes of the groups to which the product belong
  - `parent` string — Code of the parent <a href='api-reference-paas.html#Productmodel'>product model</a> when the product is a variant (only available since the 2.0). This parent can be modified since the 2.3.
  - `values` object — Product attributes values, see <a href='/concepts/products.html#focus-on-the-product-values'>Product values</a> section for more details
  - `associations` object — Several associations related to groups, product models and/or other products, grouped by association types
    - `associationTypeCode` object
      - `groups` string[] — Array of groups codes with which the product is in relation
      - `products` string[] — Array of product identifiers with which the product is in relation
      - `product_models` string[] — Array of product model codes with which the product is in relation (only available since the v2.1)
  - `quantified_associations` object — Several quantified associations related to products and/or product models, grouped by quantified association types (only available since the 5.0)
    - `quantifiedAssociationTypeCode` object
      - `products` object[] — Array of objects containing product identifiers and quantities with which the product is in relation
        - `identifier` string
        - `quantity` integer
      - `product_models` object[] — Array of objects containing product model codes and quantities with which the product is in relation
        - `code` string
        - `quantity` integer
  - `created` string, dateTime — Date of creation
  - `updated` string, dateTime — Date of the last update
  - `metadata` object — More information around the product (only available since the v2.0 in the Enterprise Edition)
    - `workflow_status` 'read_only' | 'draft_in_progress' | 'proposal_waiting_for_approval' | 'working_copy' — Status of the product regarding the user permissions
  - `quality_scores` object — Product quality scores for each channel/locale combination (only available since the 5.0 and when the "with_quality_scores" query parameter is set to "true")
  - `completenesses` object[] — Product completenesses for each channel/locale combination (only available since the 7.0 version, and when the "with_completenesses" query parameter is set to "true")
    - `scope` string
    - `locale` string
    - `data` integer

## Response `201`

Created

## Other responses

- `204` — No content to return
- `401` — Authentication required
- `403` — Access forbidden
- `415` — Unsupported Media type
- `422` — Unprocessable entity

---

[API](https://skmtc.net/akeneo/apis/akeneo-pim-rest-api.md) · [All operations](https://skmtc.net/akeneo/apis/akeneo-pim-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/akeneo/akeneo-pim-rest-api/versions/d8bda9b93b59/schema)
