1、食谱TOP接口申请
1.1 定向申请地址
说明:目前只允许企业号进行申请;
http://my.open.taobao.com/common/applyIsv.htm?appTag=212&accessCode=E9780D2AC20DD170450FDBF555F67E3E
1.2 淘宝合作伙伴开发协议

1.3 填写开发者信息

1.4 创建食谱应用

1.5 申请TOP接口


2、SDK使用说明
2.1 选择需要的SDK版本进行构建

2.2 下载SDK并引入代码——JAVA演示
2.2.1 项目引入SDK包
(1)在项目resources目录下创建lib目录,将SDK包导入到该目录下
(2)pom中引入本地jar包
<dependency><groupId>ailib-iot</groupId><artifactId>sdk-java-auto</artifactId><version>1576072385423-20200612</version><scope>system</scope><systemPath>${project.basedir}/src/main/resources/lib/taobao-sdk-java-auto_1576072385423-20200612.jar</systemPath></dependency>
2.3 食谱TOP接口调用——JAVA演示
2.3.1 插入或更新食谱测试
说明:返回结果是businessRecipeId 行业食谱id;
/*** 插入或更新食谱测试*/public static void insertOrUpdateRecipeTest() throws ApiException {DefaultTaobaoClient client = new DefaultTaobaoClient("http://gw.api.taobao.com/router/rest", "30281416","4f9918cxxxxxxxxxxxxx6debcebaa");AlibabaAilabsIotBusinessRecipeInsertorupdateRequest request = new AlibabaAilabsIotBusinessRecipeInsertorupdateRequest();// 接口参数BusinessRecipeOpenParam businessRecipeOpenParam = new BusinessRecipeOpenParam();// 开放账号idbusinessRecipeOpenParam.setOpenAccountId("a2uDllguxxxxxxM3wkl+w==");// 食谱类型 0视频菜谱 1图文菜谱businessRecipeOpenParam.setRecipeType(1L);// 品类IdbusinessRecipeOpenParam.setDevTypeId(11L);// 食谱中文名称businessRecipeOpenParam.setRecipeNameCn("蜜瓜奶昔");// 食谱描述businessRecipeOpenParam.setDescription("蜜瓜富含膳食纤维,酸奶富含益生菌,两者均有助于肠道健康。");// 食谱图片ImageUrlParam recipeImage = new ImageUrlParam();recipeImage.setImg("http://www.xxx.com");businessRecipeOpenParam.setRecipeImage(recipeImage);// 食谱食材List<RecipeIngredientParam> recipeIngredientList = new ArrayList<>();RecipeIngredientParam recipeIngredientParam1 = new RecipeIngredientParam();recipeIngredientParam1.setName("蜜瓜");recipeIngredientParam1.setWeight("300g");recipeIngredientList.add(recipeIngredientParam1);RecipeIngredientParam recipeIngredientParam2 = new RecipeIngredientParam();recipeIngredientParam2.setName("酸奶");recipeIngredientParam2.setWeight("300g");recipeIngredientList.add(recipeIngredientParam2);businessRecipeOpenParam.setRecipeIngredientList(recipeIngredientList);request.setParamBusinessRecipeOpenParam(businessRecipeOpenParam);// 通用参数request.setTimestamp(System.currentTimeMillis());request.setTopApiVersion("2.0");request.setTopContentType("application/json");request.setTopHttpMethod("alibaba.ailabs.iot.business.recipe.insertorupdate");request.setTopResponseType("application/json");// 接口调用AlibabaAilabsIotBusinessRecipeInsertorupdateResponse response = client.execute(request);if (response.isSuccess()) {System.out.println(response.getBody());}}
2.3.2 插入或更新食谱步骤测试
说明:返回的是businessRecipeStepId 行业食谱步骤id;
/*** 插入或更新食谱步骤测试*/public static void insertOrUpdateRecipeStepTest() throws ApiException {DefaultTaobaoClient client = new DefaultTaobaoClient("http://gw.api.taobao.com/router/rest", "30281416","4f9918cxxxxxxxxxxxxx6debcebaa");AlibabaAilabsIotBusinessRecipestepInsertorupdateRequest request = new AlibabaAilabsIotBusinessRecipestepInsertorupdateRequest();// 接口参数BusinessRecipeStepOpenParam businessRecipeStepOpenParam = new BusinessRecipeStepOpenParam();// 开放账号IdbusinessRecipeStepOpenParam.setOpenAccountId("a2uDllguxxxxxxM3wkl+w==");// 行业食谱idbusinessRecipeStepOpenParam.setBusinessRecipeId(6L);// 指令标识:0不支持指令,1支持指令businessRecipeStepOpenParam.setActionFlag(1L);// 食谱步骤中文名businessRecipeStepOpenParam.setRecipeStepNameCn("开始制作");// 食谱步骤描述businessRecipeStepOpenParam.setDescription("根据食谱称量口口蜜瓜块,然后放入研磨腔内,并加入3杯(300g)酸奶,选择“奶昔”功能键,点击“启动”即可");// 食谱步骤顺序号businessRecipeStepOpenParam.setSequence(1L);// 食谱步骤图片com.taobao.api.request.AlibabaAilabsIotBusinessRecipestepInsertorupdateRequest.ImageUrlParam imageUrl = new com.taobao.api.request.AlibabaAilabsIotBusinessRecipestepInsertorupdateRequest.ImageUrlParam();imageUrl.setImg("http://www.xxx.com");businessRecipeStepOpenParam.setImageUrl(imageUrl);// 食谱步骤时间businessRecipeStepOpenParam.setRecipeStepTime(180L);businessRecipeStepOpenParam.setTips("请检查食材是否都放入研磨腔内");// 步骤指令列表List<BusinessRecipeStepActionOpenParam> recipeStepActionList = new ArrayList<>();BusinessRecipeStepActionOpenParam businessRecipeStepActionOpenParam1 = new BusinessRecipeStepActionOpenParam();// 指令名businessRecipeStepActionOpenParam1.setActionName("runTime");// 指令值businessRecipeStepActionOpenParam1.setActionValue("180");// 指令顺序号businessRecipeStepActionOpenParam1.setSequence(1L);recipeStepActionList.add(businessRecipeStepActionOpenParam1);BusinessRecipeStepActionOpenParam businessRecipeStepActionOpenParam2 = new BusinessRecipeStepActionOpenParam();// 指令名businessRecipeStepActionOpenParam2.setActionName("recipeAction");// 指令值businessRecipeStepActionOpenParam2.setActionValue("2191000151000330031E50000530031E500005700000");// 指令顺序号businessRecipeStepActionOpenParam2.setSequence(2L);recipeStepActionList.add(businessRecipeStepActionOpenParam2);businessRecipeStepOpenParam.setRecipeStepActionList(recipeStepActionList);request.setParamBusinessRecipeStepOpenParam(businessRecipeStepOpenParam);// 通用参数request.setTimestamp(System.currentTimeMillis());request.setTopApiVersion("2.0");request.setTopContentType("application/json");request.setTopHttpMethod("alibaba.ailabs.iot.business.recipe.insertorupdate");request.setTopResponseType("application/json");// 接口调用AlibabaAilabsIotBusinessRecipestepInsertorupdateResponse response = client.execute(request);if (response.isSuccess()) {System.out.println(response.getBody());}}
2.3.3 获取食谱分页数据
说明:返回结果是用户维度的食谱概要数据;
/*** 获取食谱分页数据** @throws ApiException*/public static void getRecipePageTest() throws ApiException {DefaultTaobaoClient client = new DefaultTaobaoClient("http://gw.api.taobao.com/router/rest", "30281416","4f9918cxxxxxxxxxxxxx6debcebaa");AlibabaAilabsIotBusinessRecipeGetpageRequest request = new AlibabaAilabsIotBusinessRecipeGetpageRequest();// 开放账号idrequest.setOpenAccountId("a2uDllguxxxxxxM3wkl+w==");// 分页页数request.setPageNum(1L);// 分页大小request.setPageSize(10L);// 通用参数request.setTimestamp(System.currentTimeMillis());request.setTopApiVersion("2.0");request.setTopContentType("application/json");request.setTopHttpMethod("alibaba.ailabs.iot.business.recipe.getdetail");request.setTopResponseType("application/json");// 接口调用AlibabaAilabsIotBusinessRecipeGetpageResponse response = client.execute(request);if (response.isSuccess()) {System.out.println(response.getBody());}}
2.3.4 获取食谱详情数据
/*** 获取食谱详情测试** @throws ApiException*/public static void getRecipeDetailTest() throws ApiException {DefaultTaobaoClient client = new DefaultTaobaoClient("http://gw.api.taobao.com/router/rest", "30281416","4f9918cxxxxxxxxxxxxx6debcebaa");AlibabaAilabsIotBusinessRecipeGetdetailRequest request = new AlibabaAilabsIotBusinessRecipeGetdetailRequest();// 开放账号idrequest.setOpenAccountId("a2uDllguxxxxxxM3wkl+w==");// 食谱idrequest.setBusinessRecipeId(1L);// 通用参数request.setTimestamp(System.currentTimeMillis());request.setTopApiVersion("2.0");request.setTopContentType("application/json");request.setTopHttpMethod("alibaba.ailabs.iot.business.recipe.getdetail");request.setTopResponseType("application/json");// 接口调用AlibabaAilabsIotBusinessRecipeGetdetailResponse response = client.execute(request);if (response.isSuccess()) {System.out.println(response.getBody());}}
3、补充文档
3.1 TOP接口操作文档
https://open.taobao.com/doc.htm?docId=101617&docType=1
3.2 OpenAccountId问题
请提供IOT开放平台账号邮箱给小二,由小二生成给到ISV;
3.3 厨电品类文档
https://www.aligenie.com/doc/357554/hiku59
