---
title: "Update a shared-menu product"
description: "Use PUT /business/{business_id}/menus_shared/{menu_id}/products/{product_id} to update the product association for one shared menu."
canonical: https://docs.ordering.co/api-reference/guides/update-menu-shared-product/
---

# Update a shared-menu product

> **API operation:** [Open the endpoint in Scalar](https://docs.ordering.co/api-reference/#tag/business/PUT/business/{business_id}/menus_shared/{menu_id}/products/{product_id})

Use `PUT /business/{business_id}/menus_shared/{menu_id}/products/{product_id}` to update the product association for one shared menu. The current public operation is `Product.update_menu_shared`.

The controller validates that the shared menu belongs to `business_id` and contains `product_id`. Business managers are limited through business ownership. The operation requires administrator or business-manager authentication.

This operation changes the `BusinessMenuProduct` association, not the base `Product`. Association fields can include `price`, `upselling`, `featured`, `enabled`, `inventoried`, `quantity`, and `snooze_until`. Omitted fields do not necessarily reset to `null`.

For related behavior, see [Shared menu features](https://docs.ordering.co/api-reference/guides/shares-menus-features/).

## OpenAPI reference

**Operation:** `PUT /business/{business_id}/menus_shared/{menu_id}/products/{product_id}`

**Path parameters**

| Name          | Type    | Required | Description |
| ------------- | ------- | -------- | ----------- |
| `business_id` | integer | Yes      | —           |
| `menu_id`     | integer | Yes      | —           |
| `product_id`  | integer | Yes      | —           |

**Request body fields**

| Name           | Type           | Required |
| -------------- | -------------- | -------- |
| `snooze_until` | string \| null | No       |

**Responses**

| Code | Description                           |
| ---- | ------------------------------------- |
| 200  | OK (Envelope)                         |
| 400  | Bad Request (ErrorResponse)           |
| 401  | Unauthorized                          |
| 404  | Not Found                             |
| 429  | Too Many Requests (ErrorResponse)     |
| 500  | Internal Server Error (ErrorResponse) |
| 503  | Service Unavailable (ErrorResponse)   |

[Open this operation in the API reference](https://docs.ordering.co/api-reference/#tag/business/PUT/business/{business_id}/menus_shared/{menu_id}/products/{product_id})
