Update Item
POSThttps://api.uber.com/v2/eats/stores/{store_id}/menus/items/{item_id}
This Update Item endpoint updates an individual item within a menu. This allows you to make smaller edits without needing to send the entire menu. This endpoint performs sparse updates, meaning that it will only update a field if it is specified.
¶ Authorization
OAuth 2.0 Bearer token with the eats.store
scope. For more information, see Authentication.
¶ Path Parameters
Name | Type | Description |
---|---|---|
store_id |
string |
Unique identifier representing a store. |
item_id |
string |
Unique identifier representing an item. |
¶ Request Body Parameters
¶ Request Body Parameters - UpdateItemConfiguration
A configuration specifying how to update an item
Name | Type | Description |
---|---|---|
price_info |
PriceRules | (optional) Specifies the price to charge for ordering the item. Allows overrides dependant on the ordered item’s context |
suspension_info |
SuspensionRules | (optional) Suspends the item from sale, e.g. when out of stock, until a specified time. Allows overrides dependent on context |
menu_type |
string (enum) | (optional) Menu type to update, menus must be split by PUT api before using. Currently we only support item price and item availability differentiation. ALLOWED VALUES:
MENU_TYPE_FULFILLMENT_DELIVERY if not provided. NOTE: MENU_TYPE_FULFILLMENT_DINE_IN is enabled in Australia and NZ only |
product_info |
ProductInfo | (optional) Product identification information i.e. GTIN/UPC codes |
classifications |
Classifications | (optional) Classifications of an item for supplemental information |
beverage_info |
BeverageInfo | (optional) Additional information about food items. Such as caffeine amount |
physical_properties_info |
PhysicalPropertiesInfo | (optional) Additional product information related to products’ physical properties. ie. storage instructions, reusable packaging |
medication_info |
MedicationInfo | (optional) Additional information about medications |
nutritional_info |
NutritionalInfo | (optional) Specifies the nutritional info for an item |
selling_info |
SellingInfo | (optional) Defines the selling information for an item |
¶ Request Body Parameters - PriceRules
Specifies the price to charge for ordering the item.
Name | Type | Description |
---|---|---|
price |
int | Price of the item in the lowest local currency denomination, e.g. cents. |
core_price |
int | (optional) The intrinsic value of the item, in the lowest local currency denomination, e.g. cents. Used for refunds if the item is reported missing and in other cases where the intrinsic value of the item is needed. Must be >= price. Example Usage: A medium drink may be free (price=0) as part of a combo, but if reported missing the intrinsic value (corePrice) should be refunded to the customer. Can be set for Items and Modifier Options but currently only used for determining value of Modifier Options. |
container_deposit |
int | (optional) Metadata on the amount of deposit charged for returnable bottles/containers, in the lowest local currency denomination, e.g. cents. Only for metadata, does not affect price when ordering. |
overrides |
PriceOverride[] | (optional) Overrides for the price in different contexts. |
priced_by_unit |
MeasurementUnit | (optional) “per measurement” unit the item price is based on. |
Example Price Change Request
{
"price_info": {
"price": 1300, // price in cents
"overrides": [],
"container_deposit": 100 // container deposit in cents
}
}
Response
Status-Code: 204 No Content
¶ Request Body Parameters - PriceOverride
Overrides the item price in a specified context
Name | Type | Description |
---|---|---|
context_type |
string (enum) | Type of the context in which to override. ALLOWED VALUES:
|
context_value |
string | Identifying string (id) for the specified context. |
price |
int | Price of the item in the lowest local currency denomination, e.g. cents. |
¶ Request Body Parameters - SuspensionRules
Suspends the item from sale for a specified period of time.
Name | Type | Description |
---|---|---|
suspension |
Suspension | (optional) Any active suspension for the item. |
overrides |
SupensionOverride[] | (optional) Overrides for the suspension in different contexts. |
¶ Request Body Parameters - Suspension
Describes why, and until when, an item is suspended from sale.
Name | Type | Description |
---|---|---|
suspend_until |
int | (optional) The time at which the item will return to being available for sale, specified as a Unix timestamp in seconds since Jan 1, 1970. A null value, or time in the past, indicates that an item is available - otherwise it will be shown as “Sold Out” and unavailable to order. |
reason |
string | (optional) Describes the reason for the suspension. |
¶ Request Body Parameters - SuspensionOverride
Overrides an item’s suspension in a specified context.
Name | Type | Description |
---|---|---|
context_type |
string (enum) | Type of the context in which to override. ALLOWED VALUES:
|
context_value |
string | Identifying string (id) for the specified context. |
suspension |
Suspension | Suspension settings for the item in the context. |
¶ Request Body Parameters - ProductInfo
Product identification information i.e. UPC code
Name | Type | Description |
---|---|---|
target_market |
string | (optional) Target market for the product. ISO 3166 2-letter code: https://en.wikipedia.org/wiki/ISO_3166-1. In addition, values “ALL” (all markets) and “EU” (European Union) are also supported. |
gtin |
string | (optional) GTIN for product, which could be UPC/EAN code. |
plu |
string | (optional) If the product is fresh produce, it can be identified using PLU code. https://www.ifpsglobal.com/PLU-Codes |
merchant_id |
string | (optional) If product doesn’t have gtin or plu, item can be identified using merchant’s internal id. |
product_type |
string | (optional) The product type associated with the item. Can be set along with GITN/PLU/MerchantID. See list of product types |
product_traits |
[]string | (optional) A list of the product traits associated with the item. Can be set along with GITN/PLU/MerchantID. See list of product traits. |
countries_of_origin |
[]string | (optional) The countries of origin of the product |
¶ Request Body Parameters - Classifications
Specifies the classifications for an item.
Name | Type | Description |
---|---|---|
can_serve_alone |
boolean | (optional) Indicates whether the item can be served on its own. This has implications in alcohol markets because in certain cases, alcohol must be sold with an entree (it cannot be sold alone). In that case, we want to know whether each item can qualify as an entree. Alcoholic items that also qualify as entrees (e.g. beer braised chicken) can be sold alone. If an item is not alcoholic, we still want to know if it’s considered an entree so we can determine if, for example, the eater can buy a non-entree alcohol item and combine it with this one. |
is_vegetarian |
boolean | (optional) Not used anymore. Please use DietaryLabelInfo instead. |
alcoholic_items |
int | (optional) Indicates if an item is alcoholic, and if so, how much alcohol content there is. For example, an item “six-pack beer” should have alcoholic_items set to 6. A value of null or 0 indicates that the item is non-alcoholic. This field is only used in whitelisted alcohol markets. |
dietary_label_info |
DietaryLabelInfo | (optional) Contains dietary labels. |
instructions_for_use |
string | (optional) Instructions for use/prepare the product (max 200 characters) |
ingredients |
[]string | (optional) ingredients of the product (max 50 ingredients) |
additives |
[]string | (optional) List of additives in the product |
preparation_type |
string | (optional) Information on how the dish is prepared. Must be PREPACKAGED or empty. |
food_business_operator |
FoodBusinessOperator | (optional) Specifies the food business operator of the product. |
is_high_fat_salt_sugar |
boolean | (optional) Indicates whether the item contains high fat/salt/sugar. |
¶ Request Body Parameters - FoodBusinessOperator
Name | Type | Description |
---|---|---|
name |
string | Name of the food business operator. |
address |
string | Address of the food business operator. |
¶ Request Body Parameters - PhysicalPropertiesInfo
Additional product information related to products’ physical properties.
Name | Type | Description |
---|---|---|
reusable_packaging |
boolean | (optional) Indicates if the product comes in reusable packaging. |
storage_instructions |
string | (optional) Instructions for storage. (max 200 characters) |
¶ Request Body Parameters - BeverageInfo
Additional information about food items. Such as caffeine amount.
Name | Type | Description |
---|---|---|
caffeine_amount |
integer | (optional) Amount of caffeine in the beverage in milligrams (mg). |
alcohol_by_volume |
int | (optional) Percentage of alcohol in E2 format. ie. 1275 is 12.75% |
coffee_info |
CoffeeInfo | (optional) Specifies additional coffee info |
¶ Request Body Parameters - CoffeeInfo
Name | Type | Description |
---|---|---|
coffee_bean_origin |
[]string | (optional) List of countries of the coffee bean origin |
¶ Request Body Parameters - MedicationInfo
Name | Type | Description |
---|---|---|
medical_prescription_required |
boolean | (optional) Specifies if prescription is required for the medication. |
¶ Request Body Parameters - NutritionalInfo
Specifies the nutritional info for an item.
Name | Type | Description |
---|---|---|
calories |
EnergyInfo | (optional) Net energy content of the item, in calories |
kilojoules |
EnergyInfo | (optional) Net energy content of the item, in kilojoules |
serving_size |
MeasurementInterval | (optional) The amount per 1 serving size for a product. Ie. 100g per serving in a bag of chips |
number_of_servings |
int | (optional) The number of servings in the product ie. 3 servings for a 300g bag of chips with 100g per serving |
number_of_servings_interval |
Interval | (optional) The number of people the product serves (ie. serves 2-4 people) |
net_quantity |
MeasurementInterval | (optional) The net quantity of the product. Ie. 300g for a bag of chips |
calories_per_serving |
EnergyInfo | (optional) Energy content of the item per serving, in calories |
kilojoules_per_serving |
EnergyInfo | (optional) Energy content of the item per serving, in kilojoules |
fat |
NutrientInfo | (optional) Information on the fat nutrient of the item |
saturated_fatty_acids |
NutrientInfo | (optional) Information on the saturated fat nutrient of the item |
carbohydrates |
NutrientInfo | (optional) Information on the carbohydrates nutrient of the item |
sugar |
NutrientInfo | (optional) Information on the sugar nutrient of the item |
protein |
NutrientInfo | (optional) Information on the protein nutrient of the item |
salt |
NutrientInfo | (optional) Information on the salt nutrient of the item |
allergens |
[]string | (optional) List of allergens in the product |
¶ Request Body Parameters - MeasurementInterval
Name | Type | Description |
---|---|---|
measurement_type |
string | One of MEASUREMENT_TYPE_WEIGHT, MEASUREMENT_TYPE_VOLUME, MEASUREMENT_TYPE_COUNT - the measurement type of the interval |
weight_interval |
WeightInterval | The weight interval for the measurement. Must be set if measurement_type is MEASUREMENT_TYPE_WEIGHT |
volume_interval |
VolumeInterval | The volume interval for the measurement. Must be set if measurement_type is MEASUREMENT_TYPE_VOLUME |
count_interval |
CountInterval | The count interval for the measurement. Must be set if measurement_type is MEASUREMENT_TYPE_COUNT |
¶ Request Body Parameters - Interval
The interval can behave as a single value (not an interval) if lower is equal to upper.
Name | Type | Description |
---|---|---|
lower |
int | The lower value of the described closed interval. If undefined, the interval behaves as a left-unbounded/right-bounded closed interval. In E5 format ie. 123456 = 1.2345 |
upper |
int | (optional) The upper value of the described closed interval. If undefined, the interval behaves as a left-bounded/right-unbounded closed interval. In E5 format ie. 123456 = 1.2345 |
¶ Request Body Parameters - NutrientInfo
Name | Type | Description |
---|---|---|
amount |
WeightInterval | Amount of the nutrient per serving |
¶ Request Body Parameters - WeightInterval
The interval can behave as a single value (not an interval) if lower is equal to upper.
Name | Type | Description |
---|---|---|
interval |
Interval | The lower value of the described closed interval. If undefined, the interval behaves as a left-unbounded/right-bounded closed interval. In E5 format ie. 123456 = 1.2345 |
weight |
Weight | The weight in the interval |
¶ Request Body Parameters - VolumeInterval
The interval can behave as a single value (not an interval) if lower is equal to upper.
Name | Type | Description |
---|---|---|
interval |
Interval | The lower value of the described closed interval. If undefined, the interval behaves as a left-unbounded/right-bounded closed interval. In E5 format ie. 123456 = 1.2345 |
volume |
Volume | The volume in the interval |
¶ Request Body Parameters - CountInterval
The interval can behave as a single value (not an interval) if lower is equal to upper.
Name | Type | Description |
---|---|---|
interval |
Interval | The lower value of the described closed interval. If undefined, the interval behaves as a left-unbounded/right-bounded closed interval. In E5 format ie. 123456 = 1.2345 |
count |
Count | The count in the interval |
¶ Request Body Parameters - Weight
Name | Type | Description |
---|---|---|
unit_type |
string | One of WEIGHT_UNIT_TYPE_METRIC_GRAM, WEIGHT_UNIT_TYPE_METRIC_MICROGRAM, WEIGHT_UNIT_TYPE_METRIC_MILLIGRAM, WEIGHT_UNIT_TYPE_METRIC_KILOGRAM, WEIGHT_UNIT_TYPE_METRIC_TON, WEIGHT_UNIT_TYPE_IMPERIAL_AVOIRDUPOIS_OUNCE, WEIGHT_UNIT_TYPE_IMPERIAL_AVOIRDUPOIS_POUND. Must be set if unit_type is WEIGHT |
¶ Request Body Parameters - Volume
Name | Type | Description |
---|---|---|
unit_type |
string | One of VOLUME_UNIT_TYPE_METRIC_LITER, VOLUME_UNIT_TYPE_METRIC_MILLILITER, VOLUME_UNIT_TYPE_IMPERIAL_FLUID_OUNCE, VOLUME_UNIT_TYPE_IMPERIAL_PINT, VOLUME_UNIT_TYPE_IMPERIAL_GALLON, VOLUME_UNIT_TYPE_IMPERIAL_QUART, VOLUME_UNIT_TYPE_IMPERIAL_CUP, VOLUME_UNIT_TYPE_IMPERIAL_TABLESPOON, VOLUME_UNIT_TYPE_IMPERIAL_TEASPOON. Must be set if unit_type is VOLUME |
¶ Request Body Parameters - Count
Name | Type | Description |
---|---|---|
unit_type |
string | One of COUNT_UNIT_TYPE_CUSTOM, COUNT_UNIT_TYPE_PIECE, COUNT_UNIT_TYPE_SLICE, COUNT_UNIT_TYPE_TABLET, COUNT_UNIT_TYPE_CAPSULE. CUSTOM is for products that use a special unit like its own name as the count unit, e.g. 1 cookie, 1 candy bar. Must be set if unit_type is COUNT |
custom_unit |
string | Name of the custom unit (ie. 1 cookie) if the unit_type is CUSTOM |
¶ Request Body Parameters - EnergyInfo
Specifies the energy content of an item.
Name | Type | Description |
---|---|---|
energy_interval |
Interval | The lower value of the described closed interval. If undefined, the interval behaves as a left-unbounded/right-bounded closed interval. In E5 format ie. 123456 = 1.2345 |
lower_range |
int | (deprecated) The lower range of the energy content. This is used in various ways depending on the display_type. |
upper_range |
int | (deprecated) The upper range of the energy content. This is used in various ways depending on the display_type. |
display_type |
string | ALLOWED VALUES:
|
¶ Request Body Parameters - SellingInfo
Defines the selling information for an item.
Name | Type | Description |
---|---|---|
selling_options |
SellingOption[] | List containing information about how an item can be sold by. |
¶ Request Body Parameters - SellingOption
Contains the information about how an item can be sold by.
Name | Type | Description |
---|---|---|
sold_by_unit |
MeasurementUnit | (optional) Describes the measurement unit an item can be sold by. |
quantity_constraints |
SellingQuantityConstraint | (optional) Describes the constraints that an item has in a particular SellingOption. |
priced_by_to_sold_by_unit_conversion_info |
PricedByToSoldByUnitConversionInfo | (optional) Describes conversion info between “priced_by” and “sold_by” quantities. |
¶ Request Body Parameters - MeasurementUnit
Describes a measurement unit.
Name | Type | Description |
---|---|---|
measurement_type |
string (enum) | Describes the measurement unit an item can be sold by. ALLOWED VALUES:
MEASUREMENT_TYPE_INVALID if not provided. |
length_unit |
string (enum) | (optional) Describe in which unit the type MEASUREMENT_TYPE_LENGTH is measured in. Must be set if MEASUREMENT_TYPE_LENGTH is set. ALLOWED VALUES:
|
weight_unit |
string (enum) | (optional) Describe in which unit the type MEASUREMENT_TYPE_WEIGHT is measured in. Must be set if MEASUREMENT_TYPE_WEIGHT is set. ALLOWED VALUES:
|
volume_unit |
string (enum) | (optional) Describe in which unit the type MEASUREMENT_TYPE_VOLUME is measured in. Must be set if MEASUREMENT_TYPE_VOLUME is set. ALLOWED VALUES:
|
¶ Request Body Parameters - SellingQuantityConstraint
Describes the constraints that an item has in a particular SellingOption.
Name | Type | Description |
---|---|---|
min_permitted |
float | (optional) Minimum quantity of total items allowed (inclusive). Max precision: 5 decimal places after the decimal point (e.g 0.12345) |
max_permitted |
float | (optional) Maximum quantity of total items allowed (inclusive). Max precision: 5 decimal places after the decimal point (e.g 0.12345) |
increment |
float | (optional) Incremental quantity that is allowed on quantity adjustment. Max precision: 5 decimal places after the decimal point (e.g 0.12345) |
default_quantity |
float | (optional) Default quantity that would be pre-selected. Max precision: 5 decimal places after the decimal point (e.g 0.12345) |
¶ Request Body Parameters - PricedByToSoldByUnitConversionInfo
Describes conversion info between “priced_by” and “sold_by” quantities.
Name | Type | Description |
---|---|---|
conversion_rate |
float | (optional) The conversion ratio. Usage: “priced_by” quantity = “sold_by” quantity * conversionRate. Max precision: 5 decimal places after the decimal point (e.g 0.12345) |
¶ Request Body Example
POST /v2/eats/stores/{store_id}/menus/items/{item_id}
{
"suspension_info": {
"suspension": null,
"overrides": [
{
"context_type": "MODIFIER_GROUP",
"context_value": "size",
"suspension": {
"suspend_until": 8640000000,
"reason": null
}
}
]
},
"product_info": {
"target_market": "EU",
"gtin": "1354435445"
}
}
¶ Response
Status-Code: 204 No Content
This endpoint returns an empty response body.