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
CookingMode
represents the cooking mode for a cooking appliance, such as a microwave oven. CookingMode
can be an object or a string.
Field | Description | Type |
---|---|---|
cookingMode |
A predefined cooking mode, such as BOIL or REHEAT , or a manufacturer's custom mode. For the list of valid values, see CookingMode Values. |
String |
customName |
The manufacturer's name for the predefined or custom cooking mode. When you use a predefined mode, such as BOIL , you can include this field to specify the manufacturer's custom name for the predefined mode. When you use the CUSTOM mode, you must include this field to specify the manufacturer's custom name for a mode that isn't represented by a predefined mode. For an example discovery response with a custom mode, see Cooking discovery response |
String |
customName
attribute, you must contact your Amazon representative to make sure that Alexa recognizes the custom name.CookingMode Object Format
You can use the full object format for the CookingMode
. You must use the object format to include the optional customName
attribute. Alexa always sends the CookingMode
to your lambda function in the object format.
Example object format
"cookingMode":
{
"value": "BAKE"
}
Example object format with custom name
"cookingMode":
{
"value": "BOIL",
"customName": "QUICK_BOIL"
}
Example object format with custom mode
"cookingMode":
{
"value": "CUSTOM",
"customName": "ABC_QUICK_REHEAT"
}
CookingMode String Format
You can also abbreviate CookingMode
as a string.
Example string format
"cookingMode": "REHEAT"
CookingMode Values
-
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. -
Use the cooking mode
CUSTOM
for modes that are specific to your appliance, such as trademarked modes. To specifyCUSTOM
cooking modes, use the object form, and include thecustomName
field. -
In addition, you can use the following predefined values for
CookingMode
. The values are strings.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
TIMECOOK
mode is deprecated. Use a more specific cooking mode, such as MICROWAVE
, 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.
Field | 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"
},
Last updated: Nov 22, 2023