alipay.open.public.personalized.menu.create(个性化菜单创建) 在线调试(沙箱环境)

开发者可使用该接口创建个性化菜单,当生活号用户标签信息命中该菜单的标签规则时,用户将会看到该套菜单。个性化菜单创建完成后立即生效,用户支付宝客户端版本低于10.0.12时,若创建的是icon菜单,也会以文本菜单的形式展示。

公共参数

请求地址

环境HTTPS请求地址
正式环境 https://openapi.alipay.com/gateway.do

公共请求参数

参数 类型 是否必填最大长度描述示例值
app_id String 32 支付宝分配给开发者的应用ID 2014072300007148
method String 128 接口名称 alipay.open.public.personalized.menu.create
format String 40 仅支持JSON JSON
charset String 10 请求使用的编码格式,如utf-8,gbk,gb2312等 utf-8
sign_type String 10 商户生成签名字符串所使用的签名算法类型,目前支持RSA2和RSA,推荐使用RSA2 RSA2
sign String 344 商户请求参数的签名串,详见签名 详见示例
timestamp String 19 发送请求的时间,格式"yyyy-MM-dd HH:mm:ss" 2014-07-24 03:07:50
version String 3 调用的接口版本,固定为:1.0 1.0
app_auth_token String 40 详见应用授权概述
biz_content String 请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递,具体参照各产品快速接入文档

请求参数

参数 类型 是否必填 最大长度 描述 示例值
button ButtonObject[] 可选 一级菜单列表。如果是文本菜单,最多有4个一级菜单,若开发者在后台打开了"咨询反馈"的开关,则只能有3个一级菜单;如果是 ICON 菜单信息,最多有80个一级菜单(忽略二级菜单)
name String 必填 12 菜单名称,icon菜单名称不超过5个汉字,文本菜单名称不超过9个汉字,编码格式为GBK 最新优惠
action_type String 特殊可选 12 菜单类型:
out——事件型菜单;
link——链接型菜单;
tel——点击拨打电话;
map——点击查看地图;
consumption——点击查看用户与生活号管理员账号之间的消费记录
link
action_param String 特殊可选 256 当actionType为link时,该参数为url链接;
当actionType为out时,该参数为用户自定义参数;
当actionType为tel时,该参数为电话号码。
当action_type为map时,该参数为查看地图的关键字。
当action_type为consumption时,该参数可不传。
该参数最长255个字符,不允许冒号等特殊字符。
http://m.alipay.com
icon String 特殊可选 64 icon图片url,必须是http协议的url,尺寸为60X60,最大不超过5M,请先调用 图片上传接口获得图片url http://xxxx/test.jpg
sub_button SubButton[] 特殊可选 4096 二级菜单数组,若sub_button为空,则一级菜单必须指定action_type和action_param的值。若文本菜单,二级菜单个数可以为1~5个,若 ICON 菜单,二级菜单个数可以为空
name String 必填 12 菜单名称,icon菜单名称不超过5个汉字,文本菜单名称不超过9个汉字,编码格式为GBK 流量查询
action_type String 必填 12 菜单类型:
out——事件型菜单;
link——链接型菜单;
tel——点击拨打电话;
map——点击查看地图;
consumption——点击查看用户与生活号管理员账号之间的消费记录
link
action_param String 必填 256 当actionType为link时,该参数为url链接;
当actionType为out时,该参数为用户自定义参数;
当actionType为tel时,该参数为电话号码。
当action_type为map时,该参数为查看地图的关键字。
当action_type为consumption时,该参数可不传。
该参数最长255个字符,不允许冒号等特殊字符。
http://m.alipay.com
icon String 可选 64 icon图片url,必须是http协议的url,尺寸为60X60,最大不超过5M,请先调用 图片上传接口获得图片url http://example.com/test.jpg
label_rule LabelRule[] 必选 标签规则,目前限定只能传入1条,在个性化菜单创建成功后,满足该标签规则的用户进入生活号首页,将看到该套菜单。
label_id String 必填 32 标签id 10000
operator String 必填 10 目前支持EQ(等于)、BETWEEN(范围)、IN(包含)三种操作符;每个标签支持的运算符可以通过标签列表查询接口获得。该字段允许为空,默认运算符为IN EQ
label_value String 必填 120 标签值,当有多个取值时用英文","分隔,不允许传入下划线"_"、竖线"|"或者空格" "和方括号"["、"]" 山东,浙江
type String 可选 10 菜单类型,支持值为icon:icon型菜单,text:文本型菜单,不传时默认为"text",当传值为"icon"时,菜单节点的icon字段必传。 text

响应参数

参数 类型 是否必填 最大长度 描述 示例值
menu_key String 必填 32 该套个性化菜单key 100000

请求示例

AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do","app_id","your private_key","json","GBK","alipay_public_key","RSA2");
AlipayOpenPublicPersonalizedMenuCreateRequest request = new AlipayOpenPublicPersonalizedMenuCreateRequest();
request.setBizContent("{" +
"      \"button\":[{" +
"        \"name\":\"最新优惠\"," +
"\"action_type\":\"link\"," +
"\"action_param\":\"http://m.alipay.com\"," +
"\"icon\":\"http://xxxx/test.jpg\"," +
"          \"sub_button\":[{" +
"            \"name\":\"流量查询\"," +
"\"action_type\":\"link\"," +
"\"action_param\":\"http://m.alipay.com\"," +
"\"icon\":\"http://example.com/test.jpg\"" +
"            }]" +
"        }]," +
"      \"label_rule\":[{" +
"        \"label_id\":\"10000\"," +
"\"operator\":\"EQ\"," +
"\"label_value\":\"山东,浙江\"" +
"        }]," +
"\"type\":\"text\"" +
"  }");
AlipayOpenPublicPersonalizedMenuCreateResponse response = alipayClient.execute(request);
if(response.isSuccess()){
System.out.println("调用成功");
} else {
System.out.println("调用失败");
}

响应示例

{
    "alipay_open_public_personalized_menu_create_response": {
        "code": "10000",
        "msg": "Success",
        "menu_key": "100000"
    },
    "sign": "ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
}

异常示例

{
    "alipay_open_public_personalized_menu_create_response": {
        "code": "20000",
        "msg": "Service Currently Unavailable",
        "sub_code": "isp.unknow-error",
        "sub_msg": "系统繁忙"
    },
    "sign": "ERITJKEIJKJHKKKKKKKHJEREEEEEEEEEEE"
}

业务错误码

公共错误码

错误码错误描述解决方案
ILLEGAL_BIZ_PARAMS 无效的业务参数 检查业务参数是否合法
BUTTON_IS_EMPTY 菜单为空 菜单不能为空
BUTTON_COUNT_LIMIT 一级菜单数量超限 最多只能有4个一级菜单,若咨询反馈开关打开了,最多只能有3个一级菜单
MENU_TITLE_EMPTY 菜单标题为空 菜单标题不能为空
MENU_TITLE_OUT_OF_LENGTH 菜单标题长度超限 菜单标题长度超限,ICON菜单标题不能超过5个汉字,文本菜单标题不能超过9个汉字,编码格式为GBK
MENU_TYPE_NOTFOUND 菜单type不在支持范围之内 菜单type不在支持范围之内
MENU_SUB_OUT_OF_NUM 二级菜单个数超限 二级菜单最多只能有5个
ICON_IS_EMPTY icon字段为空 当type为“icon”时,icon字段不能为空
ACTION_PARAM_IS_EMPTY action_param字段为空 除CONSUMPTION类型外的其他菜单,action_param不能为空
ICON_IS_INVALID icon图片不合法 icon图片url不合法,必须是http协议的url,尺寸为60X60,最大不超过5M
ICON_SIZE_ERROR icon图片尺寸不合法 icon图片必须为60x60
ICON_TOO_LARGE icon图片过大 icon图片最大不能超过5MB
ICON_TYPE_INVALID icon图片类型不合法 icon图片格式只支持jpg和png
LABEL_RULES_IS_EMPTY 标签规则为空 标签规则不能为空
RULE_COUNT_INVALID 标签规则数量超限 最多只能支持一个标签
LABEL_ID_IS_EMPTY 标签id为空 标签id不能为空
LABEL_VALUE_IS_EMPTY 标签值为空 标签值不能为空
LABEL_VALUE_INVALID 标签值不合法 标签值不能包含下划线"_"、竖线"|"、和空格
LABEL_NOT_EXISTS 标签不存在 应用没有这个标签
MENU_SECURITY_FORBID 菜单中含有非法字符或链接 菜单中含有非法字符或链接,请检查
onlineServer