---
title: "Update an existing product"
method: PATCH
path: "/v1/product/{productId}"
tags: ["product"]
---

# Update an existing product

`PATCH /v1/product/{productId}`

## Path parameters

- `productId` string, required

## Request body

- UpdateProduct
  - `name` string — name of product
  - `sku` string — unique sku of product
  - `salesforceProductId` string — corresponding product id in salesforce
  - `stripeProductId` string — corresponding product id in stripe
  - `features` string[] — set of features this product has access to
  - `featureOptions` object — map of options for the feature
  - `status` 'ACTIVE' | 'LEGACY' | 'INACTIVE' — whether the product is Active (currently being sold), Legacy (in use, but not being sold to new customers), or Inactive (no longer in use by any active customers)

## Response `204`

product updated

## Other responses

- `400` — invalid data
- `401` — not authorized
- `403` — permission denied
- `404` — not found

---

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