Property Schemas for Alexa.Cooking APIs
The Alexa.Cooking
interfaces use property schemas to define cooking information. For details about cooking skills, see Build Smart Home Skills for Cooking Appliances.
Property definition
When you include properties in a cooking interface, you can express the property as an object or a string.
Example property object
{
"name": "cookingMode",
"value": "DEFROST"
}
Example property string
"cookingMode": "DEFROST"
CookingMode
The CookingMode
property represents the cooking mode for a cooking appliance, such as a microwave oven. CookingMode
can be an object or a string.
Property | Description | Type |
---|---|---|
cookingMode |
A predefined cooking mode, such as BOIL or REHEAT . For the list of valid values, see CookingMode Values. |
String |
CookingMode object format
You can use the full object format for the CookingMode
. Alexa always sends the CookingMode
to your lambda function in the object format.
Example object format
"cookingMode":
{
"value": "BAKE"
}
CookingMode string format
You can also abbreviate CookingMode
as a string.
Example string format
"cookingMode": "REHEAT"
CookingMode values
Use one of the following predefined string values for CookingMode
.
AIR_FRY
, BAKE
, BLANCH
, BOIL
, BREW
, BROIL
, CONVECTION_BAKE
, CONVECTION_BROIL
, CONVECTION_ROAST
, CONVECTION_STEAM
, CURE
, DEFROST
, DEHYDRATE
, FERMENT
, FRY
, GRILL
, INCUBATE
, MELT
, MICROWAVE
, OFF
, PRESET
, PRESSURE
, PROOF
, REHEAT
, ROAST
, SAUTE
, SEAR
, SLOW_COOK
, SMOKE
, SOFTEN
, SOUS_VIDE
, STEAM
, STIR_FRY
, TOAST
, WARM
Include the following values, if applicable:
- Include the cooking mode
OFF
to indicate when the appliance is off. - Use the cooking mode
PRESET
if your appliance supports preset modes or other automated cooking. For details, see Alexa.Cooking.PresetController.
CUSTOM
mode is deprecated. Use a predefined value instead.CookingStatus values
CookingStatus
represents the state of your appliance or the state of the food that your appliance is cooking. Some cooking statuses can trigger an announcement to the user.
The following table shows the valid values for CookingStatus
.
Cooking status value | Description | Resulting announcement |
---|---|---|
COOKING |
Indicates that the appliance is in use, such as baking, cooking, broiling. | No announcement generated. |
PREHEATING |
Indicates the appliance is preheating. | No announcement generated. |
PREHEATING_COMPLETED |
Indicates the appliance reached the requested temperature. | "Your <appliance friendlyName> has preheated." |
FOOD_TARGET_TEMPERATURE_REACHED |
Indicates the food reached it's target cooking temperature. | "Your food in the <appliance friendlyName> has reached target temperature." |
COOKING_COMPLETED |
Indicates the cooking time completed and the food is ready. | "Your food in the <appliance friendlyName> is ready." |
NOT_IN_USE |
Indicates the appliance isn't in use. | No announcement generated. |
READY |
Indicates the appliance is ready to use. | "Your <appliance friendlyName> is ready to use." |
FoodItem
FoodItem
represents a food item.
Property | Description | Type |
---|---|---|
foodName |
The name of the food, such as steak . |
String |
foodQuantity |
The amount of the food. | A food quantity object. |
Example FoodItem
{
"name": "foodItem",
"value": {
"foodName": "Copper river salmon",
"foodQuantity": {
"@type": "Weight",
"value": 2.5,
"unit": "POUND"
}
}
}
FoodQuantity
Use foodQuantity
to represent a quantity of food. Use the @type
field to indicate the type of quantity: food count, volume, or weight.
Example foodQuantity with count
"foodQuantity":
{
"@type": "FoodCount",
"value": 12
}
Example foodQuantity with volume
"foodQuantity":
{
"@type": "Volume",
"value": 1.25,
"unit": "LITER"
},
Example foodQuantity with weight
"foodQuantity":
{
"@type": "Weight",
"value": 2.5,
"unit": "POUND"
},
Related topics
Last updated: Apr 08, 2025