开放能力配置接口

收藏
我的收藏

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": "" } }