开放能力配置接口
收藏
我的收藏1.名词解释
扩展点、消息通知在本文统称为:开放能力。
配置扩展点、消息的回调地址统称为:配置实现。
实现配置界面【抖音开放平台-控制台-开发-解决方案配置】统称为:实现界面。
实现配置界面如下:
2.背景说明
目前各行业对外的开放能力的定义、权限、实现等功能统一收拢到行业运营平台进行管理。
配置实现的步骤为:1.解决方案实现配置 2.发布上线。
部分开发者管理着大量的小程序,界面操作配置较为耗时,因此提供 OpenAPI 一键完成开放能力配置。
3.前置条件
使用此接口需要满足以下条件:
- •小程序已获取开放能力所属能力包的权限,可联系运营人员配置授权。
- •小程序所属行业的解决方案ID,在上图实现界面的解决方案详情内有展示。
- •小程序获取scope.PermissionKey的授权:open.industry.solution.parent。(小程序入驻完成时会自动授权)。
4.接口列表
4.1 配置开放能力实现接口
该接口用于一键配置解决方案中的扩展点、消息的回调地址,并对小程序进行自动发布。
4.1.1 基本信息
4.1.2 字段说明
名称 | 类型 | 是否必须 | 描述 | 示例值 |
operator | string | 是 | 当次请求操作人 | 小王 |
release_reason | string | 是 | 发布原因 140字以内 | 配置团购行业扩展点实现地址 |
industry_impl_list | List<IndustryImpl> | 是 | 各行业的实现数据 | [{IndustryImpl1},{IndustryImpl2}] 不设置时传 [ ] |
app_config_item_list | List<AppConfigItem> | 是 | 小程序配置项列表 | [{AppConfigItem1},{AppConfigItem2}] 不设置时传 [ ] |
IndustryImpl 字段说明
名称 | 类型 | 是否必须 | 描述 | 示例值 |
solution_id | string | 是 | 解决方案ID 实现配置界面进入解决方案详情页获取 | 7271144788200628539 |
open_ability_impl_list | List<OpenAbilityImpl> | 是 | 当前解决方案内包含的开放能力的具体实现列表 | [{OpenAbilityImpl1},{OpenAbilityImpl2}] |
OpenAbilityImpl 字段说明
名称 | 类型 | 是否必须 | 描述 | 示例值 |
ability_identity | string | 是 | 开放能力唯一标识 获取方式:行业模板详情-选择某个扩展点-点击右上角实现说明文档-唯一标识 | /msg/trade/payment/notify |
is_delete | bool | 是 | 是否删除当前生效的实现地址 | false |
test_url | string | 否 is_delete为false时,必填 | 测试地址 256字符以内 | https协议: 抖音云协议: {"protocol":"douyincloud","env_id":"env-xxxx","service_id":"1ijxxabj","call_back_path":"/api/trade/query_marketing_info_from_merchant"} |
prod_url | string | 否 is_delete为false时,必填 | 正式地址 256字符以内 | https协议: 抖音云协议: {"protocol":"douyincloud","env_id":"env-xxxx","service_id":"1ijxxabj","call_back_path":"/api/trade/query_marketing_info_from_merchant"} |
ability_type | int64 | 是 | 开放能力类型:1为扩展点,2为消息 | 1 |
impl_name | string | 是 | 实现名称,随意填写,128字符以内 | 预下单扩展点实现配置 |
OpenAbilityImpl.AbilityIdentity 部分值
AppConfigItem 字段说明
名称 | 类型 | 是否必须 | 描述 | 示例值 |
identity | string | 是 | 配置项唯一标识 | AppConfigItem.Identity枚举目前仅支持 /cfg/trade/fulfillment/qrcode_redirect 核销组件二维码跳转地址 |
value | string | 是 | 配置项对应值 |
4.1.3 请求示例
4.1.4 响应参数
4.2 查询生效中配置接口
该接口用于查询小程序的行业模板配置数据。
4.2.1 基本信息
4.2.2 字段说明
名称 | 类型 | 是否必须 | 描述 | 示例值 |
solution_id_list | List<string> | 是 | 解决方案ID列表 | ["7271144788200628539","7271144788200628249"] |
4.2.3 请求示例
curl --location --request POST 'https://open.douyin.com/api/industry/v1/solution/query_impl' \ --header 'Content-Type: application/json' --header 'access-token:clt.0f51f1a0011058c85760f19ef19b9920iBDHujfbsmHrAmsHlAMkhLxGCCpM' --data-raw='{ "solution_id_list":["7271144788200628539","7271144788200628249"] }'
4.2.4 响应参数
请求结构体字段说明
名称 | 类型 | 是否必须 | 描述 | 示例值 |
solution_eff_ability_impl_list | List<SolutionEffAbilityImpl> | 是 | 解决方案生效的实现数据列表 | [{SolutionEffAbilityImpl1},{SolutionEffAbilityImpl2}] |
app_config_item_list | List<AppConfigitem> | 是 | 小程序配置项列表 | [{AppConfigItem1},{AppConfigItem2}] |
extra | ExtraBody | 是 | 参见通用参数 | |
SolutionEffAbilityImpl 字段说明
名称 | 类型 | 是否必须 | 描述 | 示例值 |
solution_id | string | 是 | 解决方案生效的实现数据列表 | 7271144788200628539 |
extension_ability_impl_list | List<EffAbilityimpl> | 是 | 指定模板内扩展点生效数据 | [{EffAbilityImpl1},{EffAbilityImpl2}] |
message_ability_impl_list | List<EffAbilityimpl> | 是 | 指定模板内消息配置数据 | [{EffAbilityImpl1},{EffAbilityImpl2}] |
EffAbilityImpl 字段说明
名称 | 类型 | 是否必须 | 描述 | 示例值 |
ability_identity | string | 是 | 开放能力唯一标识 | /msg/trade/payment/notify |
protocol_type | int64 | 是 | 通信协议类型:HTTP=1 RPC=2 (该字段已废弃,目前支持测试与生产地址使用不同的协议类型) | 1 |
name | string | 是 | 实现名称 | 这是实现名称哟 |
test_url | string | 是 | 测试地址 | https协议: 抖音云协议: {"protocol":"douyincloud","env_id":"env-xxxx","service_id":"1ijxxabj","call_back_path":"/api/trade/query_marketing_info_from_merchant"} |
prod_url | string | 是 | 正式地址 | https协议: 抖音云协议: {"protocol":"douyincloud","env_id":"env-xxxx","service_id":"1ijxxabj","call_back_path":"/api/trade/query_marketing_info_from_merchant"} |
app_id | string | 是 | 小程序ID | ttcfdbb96650e33355 |
industry_code | string | 否 | 行业编码 | general_industry |
AppConfigItem 字段说明
名称 | 类型 | 是否必须 | 描述 | 示例值 |
identity | string | 是 | 配置项唯一标识 | AppConfigItem.Identity枚举目前仅支持 /cfg/trade/fulfillment/qrcode_redirect 核销组件二维码跳转地址 |
value | string | 是 | 配置项对应值 |
响应示例:
{ "extra": { "error_code": 0, "description": "", "sub_error_code": 0, "sub_description": "success", "logid": "02168674325065300000000000000000000ffff0a9a6263be866c", "now": 1686743253 }, "solution_eff_ability_impl_list": [ { "extension_ability_impl_list": [ { "ability_identity": "/ext/common/test/runtime_field_test", "app_id": "tt0feb7956908c100401", "industry_code": "test-stress", "name": "Tesla自动化_solution_open_api扩展点", "prod_url": "https://open-platform-qa-boe.byted.org/api/trade/common/v2/custom_debug", "protocol_type": 1, "test_url": "https://open-platform-qa-boe.byted.org/api/trade/common/v2/dev/custom_debug" }, { "app_id": "tt0feb7956908c100401", "industry_code": "test-stress", "name": "压测扩展点", "prod_url": "https://open-platform-qa-boe.byted.org/api/trade/common/v2/custom_debug", "protocol_type": 1, "test_url": "https://open-platform-qa-boe.byted.org/api/trade/common/v2/dev/custom_debug", "ability_identity": "/ext/common/test/stress" } ], "message_ability_impl_list": [ { "protocol_type": 1, "test_url": "https://open-platform-qa-boe.byted.org/api/trade/common/v2/dev/custom_debug", "ability_identity": "/msg/common/test/runtime_field_test", "app_id": "tt0feb7956908c100401", "industry_code": "test-stress", "name": "Tesla自动化_solution_open_api消息", "prod_url": "https://open-platform-qa-boe.byted.org/api/trade/common/v2/custom_debug" } ], "solution_id": "7271144788200628249" } ], "app_config_item_list": [ { "identity": "/cfg/trade/fulfillment/qrcode_redirect", "value": "https://ss.com/app/open/delivery_qrcode_redirect" } ], "data": { "error_code": 0, "description": "" } }