antchain-bot 1.10.34__py3-none-any.whl → 1.11.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -21904,6 +21904,931 @@ class PublishDevicecorpThingmodelResponse(TeaModel):
21904
21904
  return self
21905
21905
 
21906
21906
 
21907
+ class SignDigitalkeyWithholdRequest(TeaModel):
21908
+ def __init__(
21909
+ self,
21910
+ auth_token: str = None,
21911
+ product_instance_id: str = None,
21912
+ personal_product_code: str = None,
21913
+ product_code: str = None,
21914
+ channel: str = None,
21915
+ return_url: str = None,
21916
+ external_logon_id: str = None,
21917
+ alipay_user_id: str = None,
21918
+ sign_scene: str = None,
21919
+ external_agreement_no: str = None,
21920
+ sign_validity_period: str = None,
21921
+ effect_time: int = None,
21922
+ ):
21923
+ # OAuth模式下的授权token
21924
+ self.auth_token = auth_token
21925
+ self.product_instance_id = product_instance_id
21926
+ # 个人签约产品码
21927
+ self.personal_product_code = personal_product_code
21928
+ # 销售产品码
21929
+ self.product_code = product_code
21930
+ # 请按当前接入的方式进行填充,且输入值必须为文档中的参数取值范围。 扫码或者短信页面签约需要拼装http的请求地址访问中间页面,钱包h5页面签约可直接拼接scheme的请求地址
21931
+ self.channel = channel
21932
+ # 支付宝App主动回跳商户App里指定的页面 http/https 路径。建议商户使用 https。
21933
+ self.return_url = return_url
21934
+ # 用户在商户网站的登录账号,用于在签约页面展示
21935
+ self.external_logon_id = external_logon_id
21936
+ # 支付宝用户ID
21937
+ self.alipay_user_id = alipay_user_id
21938
+ # 商户签约号,代扣协议中标示用户的唯一签约号(确保在商户系统中唯一)。 格式规则:支持大写小写字母和数字,最长32位。 商户系统按需自定义传入,如果同一用户在同一产品码、同一签约场景下,签订了多份代扣协议,那么需要指定并传入该值
21939
+ self.sign_scene = sign_scene
21940
+ # 商户签约号,代扣协议中标示用户的唯一签约号(确保在商户系统中唯一)。 格式规则:支持大写小写字母和数字,最长32位。 商户系统按需自定义传入,如果同一用户在同一产品码、同一签约场景下,签订了多份代扣协议,那么需要指定并传入该值
21941
+ self.external_agreement_no = external_agreement_no
21942
+ # 当前用户签约请求的协议有效周期。 整形数字加上时间单位的协议有效期,从发起签约请求的时间开始算起。 目前支持的时间单位: 1. d:天 2. m:月 如果未传入,默认为长期有效。
21943
+ self.sign_validity_period = sign_validity_period
21944
+ # 签约有效时间限制,单位是秒,有效范围是0-86400,商户传入此字段会用商户传入的值否则使用支付宝侧默认值,在有效时间外进行签约,会进行安全拦截;(备注:此字段适用于需要开通安全防控的商户,且依赖商户传入生成签约时的时间戳字段timestamp)
21945
+ self.effect_time = effect_time
21946
+
21947
+ def validate(self):
21948
+ self.validate_required(self.personal_product_code, 'personal_product_code')
21949
+ self.validate_required(self.product_code, 'product_code')
21950
+ self.validate_required(self.channel, 'channel')
21951
+ self.validate_required(self.return_url, 'return_url')
21952
+ self.validate_required(self.external_logon_id, 'external_logon_id')
21953
+ self.validate_required(self.sign_scene, 'sign_scene')
21954
+ self.validate_required(self.external_agreement_no, 'external_agreement_no')
21955
+
21956
+ def to_map(self):
21957
+ _map = super().to_map()
21958
+ if _map is not None:
21959
+ return _map
21960
+
21961
+ result = dict()
21962
+ if self.auth_token is not None:
21963
+ result['auth_token'] = self.auth_token
21964
+ if self.product_instance_id is not None:
21965
+ result['product_instance_id'] = self.product_instance_id
21966
+ if self.personal_product_code is not None:
21967
+ result['personal_product_code'] = self.personal_product_code
21968
+ if self.product_code is not None:
21969
+ result['product_code'] = self.product_code
21970
+ if self.channel is not None:
21971
+ result['channel'] = self.channel
21972
+ if self.return_url is not None:
21973
+ result['return_url'] = self.return_url
21974
+ if self.external_logon_id is not None:
21975
+ result['external_logon_id'] = self.external_logon_id
21976
+ if self.alipay_user_id is not None:
21977
+ result['alipay_user_id'] = self.alipay_user_id
21978
+ if self.sign_scene is not None:
21979
+ result['sign_scene'] = self.sign_scene
21980
+ if self.external_agreement_no is not None:
21981
+ result['external_agreement_no'] = self.external_agreement_no
21982
+ if self.sign_validity_period is not None:
21983
+ result['sign_validity_period'] = self.sign_validity_period
21984
+ if self.effect_time is not None:
21985
+ result['effect_time'] = self.effect_time
21986
+ return result
21987
+
21988
+ def from_map(self, m: dict = None):
21989
+ m = m or dict()
21990
+ if m.get('auth_token') is not None:
21991
+ self.auth_token = m.get('auth_token')
21992
+ if m.get('product_instance_id') is not None:
21993
+ self.product_instance_id = m.get('product_instance_id')
21994
+ if m.get('personal_product_code') is not None:
21995
+ self.personal_product_code = m.get('personal_product_code')
21996
+ if m.get('product_code') is not None:
21997
+ self.product_code = m.get('product_code')
21998
+ if m.get('channel') is not None:
21999
+ self.channel = m.get('channel')
22000
+ if m.get('return_url') is not None:
22001
+ self.return_url = m.get('return_url')
22002
+ if m.get('external_logon_id') is not None:
22003
+ self.external_logon_id = m.get('external_logon_id')
22004
+ if m.get('alipay_user_id') is not None:
22005
+ self.alipay_user_id = m.get('alipay_user_id')
22006
+ if m.get('sign_scene') is not None:
22007
+ self.sign_scene = m.get('sign_scene')
22008
+ if m.get('external_agreement_no') is not None:
22009
+ self.external_agreement_no = m.get('external_agreement_no')
22010
+ if m.get('sign_validity_period') is not None:
22011
+ self.sign_validity_period = m.get('sign_validity_period')
22012
+ if m.get('effect_time') is not None:
22013
+ self.effect_time = m.get('effect_time')
22014
+ return self
22015
+
22016
+
22017
+ class SignDigitalkeyWithholdResponse(TeaModel):
22018
+ def __init__(
22019
+ self,
22020
+ req_msg_id: str = None,
22021
+ result_code: str = None,
22022
+ result_msg: str = None,
22023
+ sub_code: str = None,
22024
+ sub_msg: str = None,
22025
+ data: str = None,
22026
+ ):
22027
+ # 请求唯一ID,用于链路跟踪和问题排查
22028
+ self.req_msg_id = req_msg_id
22029
+ # 结果码,一般OK表示调用成功
22030
+ self.result_code = result_code
22031
+ # 异常信息的文本描述
22032
+ self.result_msg = result_msg
22033
+ # 明细返回码
22034
+ self.sub_code = sub_code
22035
+ # 明细返回码描述
22036
+ self.sub_msg = sub_msg
22037
+ # 生成的签约链接地址
22038
+ self.data = data
22039
+
22040
+ def validate(self):
22041
+ pass
22042
+
22043
+ def to_map(self):
22044
+ _map = super().to_map()
22045
+ if _map is not None:
22046
+ return _map
22047
+
22048
+ result = dict()
22049
+ if self.req_msg_id is not None:
22050
+ result['req_msg_id'] = self.req_msg_id
22051
+ if self.result_code is not None:
22052
+ result['result_code'] = self.result_code
22053
+ if self.result_msg is not None:
22054
+ result['result_msg'] = self.result_msg
22055
+ if self.sub_code is not None:
22056
+ result['sub_code'] = self.sub_code
22057
+ if self.sub_msg is not None:
22058
+ result['sub_msg'] = self.sub_msg
22059
+ if self.data is not None:
22060
+ result['data'] = self.data
22061
+ return result
22062
+
22063
+ def from_map(self, m: dict = None):
22064
+ m = m or dict()
22065
+ if m.get('req_msg_id') is not None:
22066
+ self.req_msg_id = m.get('req_msg_id')
22067
+ if m.get('result_code') is not None:
22068
+ self.result_code = m.get('result_code')
22069
+ if m.get('result_msg') is not None:
22070
+ self.result_msg = m.get('result_msg')
22071
+ if m.get('sub_code') is not None:
22072
+ self.sub_code = m.get('sub_code')
22073
+ if m.get('sub_msg') is not None:
22074
+ self.sub_msg = m.get('sub_msg')
22075
+ if m.get('data') is not None:
22076
+ self.data = m.get('data')
22077
+ return self
22078
+
22079
+
22080
+ class UnbindDigitalkeyWithholdRequest(TeaModel):
22081
+ def __init__(
22082
+ self,
22083
+ auth_token: str = None,
22084
+ product_instance_id: str = None,
22085
+ alipay_user_id: str = None,
22086
+ personal_product_code: str = None,
22087
+ sign_scene: str = None,
22088
+ external_agreement_no: str = None,
22089
+ ):
22090
+ # OAuth模式下的授权token
22091
+ self.auth_token = auth_token
22092
+ self.product_instance_id = product_instance_id
22093
+ # 用户的支付宝账号对应的支付宝唯一用户号,以 2088 开头的 16 位纯数字组成。
22094
+ self.alipay_user_id = alipay_user_id
22095
+ # 协议产品码,商户和支付宝签约时确定,不同业务场景对应不同的签约产品码,解约时传入签约时的产品码,销售产品码,商户代扣场景固定为 GENERAL_WITHHOLDING_P。
22096
+ self.personal_product_code = personal_product_code
22097
+ # 签约协议场景,商户和支付宝签约时确定,解约时,传入签约指定的场景信息。
22098
+ self.sign_scene = sign_scene
22099
+ # 代扣协议中标示用户的唯一签约号(确保在商户系统中唯一),传入签约时传入的签约号。
22100
+ self.external_agreement_no = external_agreement_no
22101
+
22102
+ def validate(self):
22103
+ self.validate_required(self.alipay_user_id, 'alipay_user_id')
22104
+ self.validate_required(self.personal_product_code, 'personal_product_code')
22105
+ self.validate_required(self.sign_scene, 'sign_scene')
22106
+ self.validate_required(self.external_agreement_no, 'external_agreement_no')
22107
+
22108
+ def to_map(self):
22109
+ _map = super().to_map()
22110
+ if _map is not None:
22111
+ return _map
22112
+
22113
+ result = dict()
22114
+ if self.auth_token is not None:
22115
+ result['auth_token'] = self.auth_token
22116
+ if self.product_instance_id is not None:
22117
+ result['product_instance_id'] = self.product_instance_id
22118
+ if self.alipay_user_id is not None:
22119
+ result['alipay_user_id'] = self.alipay_user_id
22120
+ if self.personal_product_code is not None:
22121
+ result['personal_product_code'] = self.personal_product_code
22122
+ if self.sign_scene is not None:
22123
+ result['sign_scene'] = self.sign_scene
22124
+ if self.external_agreement_no is not None:
22125
+ result['external_agreement_no'] = self.external_agreement_no
22126
+ return result
22127
+
22128
+ def from_map(self, m: dict = None):
22129
+ m = m or dict()
22130
+ if m.get('auth_token') is not None:
22131
+ self.auth_token = m.get('auth_token')
22132
+ if m.get('product_instance_id') is not None:
22133
+ self.product_instance_id = m.get('product_instance_id')
22134
+ if m.get('alipay_user_id') is not None:
22135
+ self.alipay_user_id = m.get('alipay_user_id')
22136
+ if m.get('personal_product_code') is not None:
22137
+ self.personal_product_code = m.get('personal_product_code')
22138
+ if m.get('sign_scene') is not None:
22139
+ self.sign_scene = m.get('sign_scene')
22140
+ if m.get('external_agreement_no') is not None:
22141
+ self.external_agreement_no = m.get('external_agreement_no')
22142
+ return self
22143
+
22144
+
22145
+ class UnbindDigitalkeyWithholdResponse(TeaModel):
22146
+ def __init__(
22147
+ self,
22148
+ req_msg_id: str = None,
22149
+ result_code: str = None,
22150
+ result_msg: str = None,
22151
+ sub_code: str = None,
22152
+ sub_msg: str = None,
22153
+ ):
22154
+ # 请求唯一ID,用于链路跟踪和问题排查
22155
+ self.req_msg_id = req_msg_id
22156
+ # 结果码,一般OK表示调用成功
22157
+ self.result_code = result_code
22158
+ # 异常信息的文本描述
22159
+ self.result_msg = result_msg
22160
+ # 明细返回码
22161
+ self.sub_code = sub_code
22162
+ # 明细返回码描述
22163
+ self.sub_msg = sub_msg
22164
+
22165
+ def validate(self):
22166
+ pass
22167
+
22168
+ def to_map(self):
22169
+ _map = super().to_map()
22170
+ if _map is not None:
22171
+ return _map
22172
+
22173
+ result = dict()
22174
+ if self.req_msg_id is not None:
22175
+ result['req_msg_id'] = self.req_msg_id
22176
+ if self.result_code is not None:
22177
+ result['result_code'] = self.result_code
22178
+ if self.result_msg is not None:
22179
+ result['result_msg'] = self.result_msg
22180
+ if self.sub_code is not None:
22181
+ result['sub_code'] = self.sub_code
22182
+ if self.sub_msg is not None:
22183
+ result['sub_msg'] = self.sub_msg
22184
+ return result
22185
+
22186
+ def from_map(self, m: dict = None):
22187
+ m = m or dict()
22188
+ if m.get('req_msg_id') is not None:
22189
+ self.req_msg_id = m.get('req_msg_id')
22190
+ if m.get('result_code') is not None:
22191
+ self.result_code = m.get('result_code')
22192
+ if m.get('result_msg') is not None:
22193
+ self.result_msg = m.get('result_msg')
22194
+ if m.get('sub_code') is not None:
22195
+ self.sub_code = m.get('sub_code')
22196
+ if m.get('sub_msg') is not None:
22197
+ self.sub_msg = m.get('sub_msg')
22198
+ return self
22199
+
22200
+
22201
+ class PayDigitalkeyWithholdRequest(TeaModel):
22202
+ def __init__(
22203
+ self,
22204
+ auth_token: str = None,
22205
+ product_instance_id: str = None,
22206
+ out_trade_no: str = None,
22207
+ subject: str = None,
22208
+ alipay_user_id: str = None,
22209
+ product_code: str = None,
22210
+ total_amount: int = None,
22211
+ deduct_permission: str = None,
22212
+ agreement_no: str = None,
22213
+ timeout_express: str = None,
22214
+ async_type: str = None,
22215
+ ):
22216
+ # OAuth模式下的授权token
22217
+ self.auth_token = auth_token
22218
+ self.product_instance_id = product_instance_id
22219
+ # 商户订单号,需要保证不重复
22220
+ self.out_trade_no = out_trade_no
22221
+ # 订单标题
22222
+ self.subject = subject
22223
+ # 签约时支付宝返回的用户ID
22224
+ self.alipay_user_id = alipay_user_id
22225
+ # 销售产品码,商户代扣场景固定为GENERAL_WITHHOLDING
22226
+ self.product_code = product_code
22227
+ # 订单总金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000]
22228
+ self.total_amount = total_amount
22229
+ # 商户代扣扣款许可
22230
+ self.deduct_permission = deduct_permission
22231
+ # 代扣协议号, 对应于签约时,支付宝返回的协议
22232
+ self.agreement_no = agreement_no
22233
+ # 该笔订单允许的最晚付款时间,逾期将关闭交易,超时关闭交易无法继续付款。取值范围:1m~15d。m-分钟,h-小时,d-天,1c-当天 该参数数值不接受小数点, 如:1.5 h,可转换为 90m。
22234
+ self.timeout_express = timeout_express
22235
+ # 异步支付类型
22236
+ self.async_type = async_type
22237
+
22238
+ def validate(self):
22239
+ self.validate_required(self.out_trade_no, 'out_trade_no')
22240
+ self.validate_required(self.subject, 'subject')
22241
+ self.validate_required(self.alipay_user_id, 'alipay_user_id')
22242
+ self.validate_required(self.product_code, 'product_code')
22243
+ self.validate_required(self.total_amount, 'total_amount')
22244
+ self.validate_required(self.agreement_no, 'agreement_no')
22245
+ self.validate_required(self.async_type, 'async_type')
22246
+
22247
+ def to_map(self):
22248
+ _map = super().to_map()
22249
+ if _map is not None:
22250
+ return _map
22251
+
22252
+ result = dict()
22253
+ if self.auth_token is not None:
22254
+ result['auth_token'] = self.auth_token
22255
+ if self.product_instance_id is not None:
22256
+ result['product_instance_id'] = self.product_instance_id
22257
+ if self.out_trade_no is not None:
22258
+ result['out_trade_no'] = self.out_trade_no
22259
+ if self.subject is not None:
22260
+ result['subject'] = self.subject
22261
+ if self.alipay_user_id is not None:
22262
+ result['alipay_user_id'] = self.alipay_user_id
22263
+ if self.product_code is not None:
22264
+ result['product_code'] = self.product_code
22265
+ if self.total_amount is not None:
22266
+ result['total_amount'] = self.total_amount
22267
+ if self.deduct_permission is not None:
22268
+ result['deduct_permission'] = self.deduct_permission
22269
+ if self.agreement_no is not None:
22270
+ result['agreement_no'] = self.agreement_no
22271
+ if self.timeout_express is not None:
22272
+ result['timeout_express'] = self.timeout_express
22273
+ if self.async_type is not None:
22274
+ result['async_type'] = self.async_type
22275
+ return result
22276
+
22277
+ def from_map(self, m: dict = None):
22278
+ m = m or dict()
22279
+ if m.get('auth_token') is not None:
22280
+ self.auth_token = m.get('auth_token')
22281
+ if m.get('product_instance_id') is not None:
22282
+ self.product_instance_id = m.get('product_instance_id')
22283
+ if m.get('out_trade_no') is not None:
22284
+ self.out_trade_no = m.get('out_trade_no')
22285
+ if m.get('subject') is not None:
22286
+ self.subject = m.get('subject')
22287
+ if m.get('alipay_user_id') is not None:
22288
+ self.alipay_user_id = m.get('alipay_user_id')
22289
+ if m.get('product_code') is not None:
22290
+ self.product_code = m.get('product_code')
22291
+ if m.get('total_amount') is not None:
22292
+ self.total_amount = m.get('total_amount')
22293
+ if m.get('deduct_permission') is not None:
22294
+ self.deduct_permission = m.get('deduct_permission')
22295
+ if m.get('agreement_no') is not None:
22296
+ self.agreement_no = m.get('agreement_no')
22297
+ if m.get('timeout_express') is not None:
22298
+ self.timeout_express = m.get('timeout_express')
22299
+ if m.get('async_type') is not None:
22300
+ self.async_type = m.get('async_type')
22301
+ return self
22302
+
22303
+
22304
+ class PayDigitalkeyWithholdResponse(TeaModel):
22305
+ def __init__(
22306
+ self,
22307
+ req_msg_id: str = None,
22308
+ result_code: str = None,
22309
+ result_msg: str = None,
22310
+ sub_msg: str = None,
22311
+ sub_code: str = None,
22312
+ ):
22313
+ # 请求唯一ID,用于链路跟踪和问题排查
22314
+ self.req_msg_id = req_msg_id
22315
+ # 结果码,一般OK表示调用成功
22316
+ self.result_code = result_code
22317
+ # 异常信息的文本描述
22318
+ self.result_msg = result_msg
22319
+ # 明细返回码描述
22320
+ self.sub_msg = sub_msg
22321
+ # 明细返回码
22322
+ self.sub_code = sub_code
22323
+
22324
+ def validate(self):
22325
+ pass
22326
+
22327
+ def to_map(self):
22328
+ _map = super().to_map()
22329
+ if _map is not None:
22330
+ return _map
22331
+
22332
+ result = dict()
22333
+ if self.req_msg_id is not None:
22334
+ result['req_msg_id'] = self.req_msg_id
22335
+ if self.result_code is not None:
22336
+ result['result_code'] = self.result_code
22337
+ if self.result_msg is not None:
22338
+ result['result_msg'] = self.result_msg
22339
+ if self.sub_msg is not None:
22340
+ result['sub_msg'] = self.sub_msg
22341
+ if self.sub_code is not None:
22342
+ result['sub_code'] = self.sub_code
22343
+ return result
22344
+
22345
+ def from_map(self, m: dict = None):
22346
+ m = m or dict()
22347
+ if m.get('req_msg_id') is not None:
22348
+ self.req_msg_id = m.get('req_msg_id')
22349
+ if m.get('result_code') is not None:
22350
+ self.result_code = m.get('result_code')
22351
+ if m.get('result_msg') is not None:
22352
+ self.result_msg = m.get('result_msg')
22353
+ if m.get('sub_msg') is not None:
22354
+ self.sub_msg = m.get('sub_msg')
22355
+ if m.get('sub_code') is not None:
22356
+ self.sub_code = m.get('sub_code')
22357
+ return self
22358
+
22359
+
22360
+ class RefuseDigitalkeyWithholdRequest(TeaModel):
22361
+ def __init__(
22362
+ self,
22363
+ auth_token: str = None,
22364
+ product_instance_id: str = None,
22365
+ out_trade_no: str = None,
22366
+ refund_amount: int = None,
22367
+ out_request_no: str = None,
22368
+ ):
22369
+ # OAuth模式下的授权token
22370
+ self.auth_token = auth_token
22371
+ self.product_instance_id = product_instance_id
22372
+ # 订单支付时传入的商户订单号,不能和 trade_no同时为空。
22373
+ self.out_trade_no = out_trade_no
22374
+ # 需要退款的金额,该金额不能大于订单金额,单位为元,支持两位小数
22375
+ self.refund_amount = refund_amount
22376
+ # 标识一次退款请求,同一笔交易多次退款需要保证唯一。
22377
+ self.out_request_no = out_request_no
22378
+
22379
+ def validate(self):
22380
+ self.validate_required(self.out_trade_no, 'out_trade_no')
22381
+ self.validate_required(self.refund_amount, 'refund_amount')
22382
+ self.validate_required(self.out_request_no, 'out_request_no')
22383
+
22384
+ def to_map(self):
22385
+ _map = super().to_map()
22386
+ if _map is not None:
22387
+ return _map
22388
+
22389
+ result = dict()
22390
+ if self.auth_token is not None:
22391
+ result['auth_token'] = self.auth_token
22392
+ if self.product_instance_id is not None:
22393
+ result['product_instance_id'] = self.product_instance_id
22394
+ if self.out_trade_no is not None:
22395
+ result['out_trade_no'] = self.out_trade_no
22396
+ if self.refund_amount is not None:
22397
+ result['refund_amount'] = self.refund_amount
22398
+ if self.out_request_no is not None:
22399
+ result['out_request_no'] = self.out_request_no
22400
+ return result
22401
+
22402
+ def from_map(self, m: dict = None):
22403
+ m = m or dict()
22404
+ if m.get('auth_token') is not None:
22405
+ self.auth_token = m.get('auth_token')
22406
+ if m.get('product_instance_id') is not None:
22407
+ self.product_instance_id = m.get('product_instance_id')
22408
+ if m.get('out_trade_no') is not None:
22409
+ self.out_trade_no = m.get('out_trade_no')
22410
+ if m.get('refund_amount') is not None:
22411
+ self.refund_amount = m.get('refund_amount')
22412
+ if m.get('out_request_no') is not None:
22413
+ self.out_request_no = m.get('out_request_no')
22414
+ return self
22415
+
22416
+
22417
+ class RefuseDigitalkeyWithholdResponse(TeaModel):
22418
+ def __init__(
22419
+ self,
22420
+ req_msg_id: str = None,
22421
+ result_code: str = None,
22422
+ result_msg: str = None,
22423
+ sub_code: str = None,
22424
+ sub_msg: str = None,
22425
+ data: str = None,
22426
+ ):
22427
+ # 请求唯一ID,用于链路跟踪和问题排查
22428
+ self.req_msg_id = req_msg_id
22429
+ # 结果码,一般OK表示调用成功
22430
+ self.result_code = result_code
22431
+ # 异常信息的文本描述
22432
+ self.result_msg = result_msg
22433
+ # 明细返回码
22434
+ self.sub_code = sub_code
22435
+ # 明细返回码描述
22436
+ self.sub_msg = sub_msg
22437
+ # 退款返回信息
22438
+ self.data = data
22439
+
22440
+ def validate(self):
22441
+ pass
22442
+
22443
+ def to_map(self):
22444
+ _map = super().to_map()
22445
+ if _map is not None:
22446
+ return _map
22447
+
22448
+ result = dict()
22449
+ if self.req_msg_id is not None:
22450
+ result['req_msg_id'] = self.req_msg_id
22451
+ if self.result_code is not None:
22452
+ result['result_code'] = self.result_code
22453
+ if self.result_msg is not None:
22454
+ result['result_msg'] = self.result_msg
22455
+ if self.sub_code is not None:
22456
+ result['sub_code'] = self.sub_code
22457
+ if self.sub_msg is not None:
22458
+ result['sub_msg'] = self.sub_msg
22459
+ if self.data is not None:
22460
+ result['data'] = self.data
22461
+ return result
22462
+
22463
+ def from_map(self, m: dict = None):
22464
+ m = m or dict()
22465
+ if m.get('req_msg_id') is not None:
22466
+ self.req_msg_id = m.get('req_msg_id')
22467
+ if m.get('result_code') is not None:
22468
+ self.result_code = m.get('result_code')
22469
+ if m.get('result_msg') is not None:
22470
+ self.result_msg = m.get('result_msg')
22471
+ if m.get('sub_code') is not None:
22472
+ self.sub_code = m.get('sub_code')
22473
+ if m.get('sub_msg') is not None:
22474
+ self.sub_msg = m.get('sub_msg')
22475
+ if m.get('data') is not None:
22476
+ self.data = m.get('data')
22477
+ return self
22478
+
22479
+
22480
+ class QueryDigitalkeyWithholdRequest(TeaModel):
22481
+ def __init__(
22482
+ self,
22483
+ auth_token: str = None,
22484
+ product_instance_id: str = None,
22485
+ alipay_user_id: str = None,
22486
+ personal_product_code: str = None,
22487
+ sign_scene: str = None,
22488
+ external_agreement_no: str = None,
22489
+ ):
22490
+ # OAuth模式下的授权token
22491
+ self.auth_token = auth_token
22492
+ self.product_instance_id = product_instance_id
22493
+ # 用户的支付宝账号对应的支付宝唯一用户号,以 2088 开头的 16 位纯数字组成。
22494
+ self.alipay_user_id = alipay_user_id
22495
+ # 协议产品码,商户和支付宝签约时确定,不同业务场景对应不同的签约产品码,解约时传入签约时的产品码,销售产品码,商户代扣场景固定为 GENERAL_WITHHOLDING_P。
22496
+ self.personal_product_code = personal_product_code
22497
+ # 签约协议场景,商户和支付宝签约时确定,解约时,传入签约指定的场景信息。
22498
+ self.sign_scene = sign_scene
22499
+ # 代扣协议中标示用户的唯一签约号(确保在商户系统中唯一),传入签约时传入的签约号。
22500
+ self.external_agreement_no = external_agreement_no
22501
+
22502
+ def validate(self):
22503
+ self.validate_required(self.alipay_user_id, 'alipay_user_id')
22504
+ self.validate_required(self.personal_product_code, 'personal_product_code')
22505
+ self.validate_required(self.sign_scene, 'sign_scene')
22506
+ self.validate_required(self.external_agreement_no, 'external_agreement_no')
22507
+
22508
+ def to_map(self):
22509
+ _map = super().to_map()
22510
+ if _map is not None:
22511
+ return _map
22512
+
22513
+ result = dict()
22514
+ if self.auth_token is not None:
22515
+ result['auth_token'] = self.auth_token
22516
+ if self.product_instance_id is not None:
22517
+ result['product_instance_id'] = self.product_instance_id
22518
+ if self.alipay_user_id is not None:
22519
+ result['alipay_user_id'] = self.alipay_user_id
22520
+ if self.personal_product_code is not None:
22521
+ result['personal_product_code'] = self.personal_product_code
22522
+ if self.sign_scene is not None:
22523
+ result['sign_scene'] = self.sign_scene
22524
+ if self.external_agreement_no is not None:
22525
+ result['external_agreement_no'] = self.external_agreement_no
22526
+ return result
22527
+
22528
+ def from_map(self, m: dict = None):
22529
+ m = m or dict()
22530
+ if m.get('auth_token') is not None:
22531
+ self.auth_token = m.get('auth_token')
22532
+ if m.get('product_instance_id') is not None:
22533
+ self.product_instance_id = m.get('product_instance_id')
22534
+ if m.get('alipay_user_id') is not None:
22535
+ self.alipay_user_id = m.get('alipay_user_id')
22536
+ if m.get('personal_product_code') is not None:
22537
+ self.personal_product_code = m.get('personal_product_code')
22538
+ if m.get('sign_scene') is not None:
22539
+ self.sign_scene = m.get('sign_scene')
22540
+ if m.get('external_agreement_no') is not None:
22541
+ self.external_agreement_no = m.get('external_agreement_no')
22542
+ return self
22543
+
22544
+
22545
+ class QueryDigitalkeyWithholdResponse(TeaModel):
22546
+ def __init__(
22547
+ self,
22548
+ req_msg_id: str = None,
22549
+ result_code: str = None,
22550
+ result_msg: str = None,
22551
+ sub_code: str = None,
22552
+ sub_msg: str = None,
22553
+ data: str = None,
22554
+ ):
22555
+ # 请求唯一ID,用于链路跟踪和问题排查
22556
+ self.req_msg_id = req_msg_id
22557
+ # 结果码,一般OK表示调用成功
22558
+ self.result_code = result_code
22559
+ # 异常信息的文本描述
22560
+ self.result_msg = result_msg
22561
+ # 明细返回码
22562
+ self.sub_code = sub_code
22563
+ # 明细返回码描述
22564
+ self.sub_msg = sub_msg
22565
+ # 协议查询返回信息
22566
+ self.data = data
22567
+
22568
+ def validate(self):
22569
+ pass
22570
+
22571
+ def to_map(self):
22572
+ _map = super().to_map()
22573
+ if _map is not None:
22574
+ return _map
22575
+
22576
+ result = dict()
22577
+ if self.req_msg_id is not None:
22578
+ result['req_msg_id'] = self.req_msg_id
22579
+ if self.result_code is not None:
22580
+ result['result_code'] = self.result_code
22581
+ if self.result_msg is not None:
22582
+ result['result_msg'] = self.result_msg
22583
+ if self.sub_code is not None:
22584
+ result['sub_code'] = self.sub_code
22585
+ if self.sub_msg is not None:
22586
+ result['sub_msg'] = self.sub_msg
22587
+ if self.data is not None:
22588
+ result['data'] = self.data
22589
+ return result
22590
+
22591
+ def from_map(self, m: dict = None):
22592
+ m = m or dict()
22593
+ if m.get('req_msg_id') is not None:
22594
+ self.req_msg_id = m.get('req_msg_id')
22595
+ if m.get('result_code') is not None:
22596
+ self.result_code = m.get('result_code')
22597
+ if m.get('result_msg') is not None:
22598
+ self.result_msg = m.get('result_msg')
22599
+ if m.get('sub_code') is not None:
22600
+ self.sub_code = m.get('sub_code')
22601
+ if m.get('sub_msg') is not None:
22602
+ self.sub_msg = m.get('sub_msg')
22603
+ if m.get('data') is not None:
22604
+ self.data = m.get('data')
22605
+ return self
22606
+
22607
+
22608
+ class CancelDigitalkeyWithholdRequest(TeaModel):
22609
+ def __init__(
22610
+ self,
22611
+ auth_token: str = None,
22612
+ product_instance_id: str = None,
22613
+ out_trade_no: str = None,
22614
+ ):
22615
+ # OAuth模式下的授权token
22616
+ self.auth_token = auth_token
22617
+ self.product_instance_id = product_instance_id
22618
+ # 商户传入外部交易订单号
22619
+ self.out_trade_no = out_trade_no
22620
+
22621
+ def validate(self):
22622
+ self.validate_required(self.out_trade_no, 'out_trade_no')
22623
+
22624
+ def to_map(self):
22625
+ _map = super().to_map()
22626
+ if _map is not None:
22627
+ return _map
22628
+
22629
+ result = dict()
22630
+ if self.auth_token is not None:
22631
+ result['auth_token'] = self.auth_token
22632
+ if self.product_instance_id is not None:
22633
+ result['product_instance_id'] = self.product_instance_id
22634
+ if self.out_trade_no is not None:
22635
+ result['out_trade_no'] = self.out_trade_no
22636
+ return result
22637
+
22638
+ def from_map(self, m: dict = None):
22639
+ m = m or dict()
22640
+ if m.get('auth_token') is not None:
22641
+ self.auth_token = m.get('auth_token')
22642
+ if m.get('product_instance_id') is not None:
22643
+ self.product_instance_id = m.get('product_instance_id')
22644
+ if m.get('out_trade_no') is not None:
22645
+ self.out_trade_no = m.get('out_trade_no')
22646
+ return self
22647
+
22648
+
22649
+ class CancelDigitalkeyWithholdResponse(TeaModel):
22650
+ def __init__(
22651
+ self,
22652
+ req_msg_id: str = None,
22653
+ result_code: str = None,
22654
+ result_msg: str = None,
22655
+ sub_code: str = None,
22656
+ sub_msg: str = None,
22657
+ data: str = None,
22658
+ ):
22659
+ # 请求唯一ID,用于链路跟踪和问题排查
22660
+ self.req_msg_id = req_msg_id
22661
+ # 结果码,一般OK表示调用成功
22662
+ self.result_code = result_code
22663
+ # 异常信息的文本描述
22664
+ self.result_msg = result_msg
22665
+ # 明细返回码
22666
+ self.sub_code = sub_code
22667
+ # 明细返回码描述
22668
+ self.sub_msg = sub_msg
22669
+ # 撤销返回信息
22670
+ self.data = data
22671
+
22672
+ def validate(self):
22673
+ pass
22674
+
22675
+ def to_map(self):
22676
+ _map = super().to_map()
22677
+ if _map is not None:
22678
+ return _map
22679
+
22680
+ result = dict()
22681
+ if self.req_msg_id is not None:
22682
+ result['req_msg_id'] = self.req_msg_id
22683
+ if self.result_code is not None:
22684
+ result['result_code'] = self.result_code
22685
+ if self.result_msg is not None:
22686
+ result['result_msg'] = self.result_msg
22687
+ if self.sub_code is not None:
22688
+ result['sub_code'] = self.sub_code
22689
+ if self.sub_msg is not None:
22690
+ result['sub_msg'] = self.sub_msg
22691
+ if self.data is not None:
22692
+ result['data'] = self.data
22693
+ return result
22694
+
22695
+ def from_map(self, m: dict = None):
22696
+ m = m or dict()
22697
+ if m.get('req_msg_id') is not None:
22698
+ self.req_msg_id = m.get('req_msg_id')
22699
+ if m.get('result_code') is not None:
22700
+ self.result_code = m.get('result_code')
22701
+ if m.get('result_msg') is not None:
22702
+ self.result_msg = m.get('result_msg')
22703
+ if m.get('sub_code') is not None:
22704
+ self.sub_code = m.get('sub_code')
22705
+ if m.get('sub_msg') is not None:
22706
+ self.sub_msg = m.get('sub_msg')
22707
+ if m.get('data') is not None:
22708
+ self.data = m.get('data')
22709
+ return self
22710
+
22711
+
22712
+ class NotifyDigitalkeyWithholdRequest(TeaModel):
22713
+ def __init__(
22714
+ self,
22715
+ auth_token: str = None,
22716
+ product_instance_id: str = None,
22717
+ out_request_no: str = None,
22718
+ total_amount: int = None,
22719
+ agreement_no: str = None,
22720
+ ):
22721
+ # OAuth模式下的授权token
22722
+ self.auth_token = auth_token
22723
+ self.product_instance_id = product_instance_id
22724
+ # 商户请求号。 由商家自定义,64个字符以内,仅支持字母、数字、下划线且需保证在商户端不重复
22725
+ self.out_request_no = out_request_no
22726
+ # 订单总金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000]
22727
+ self.total_amount = total_amount
22728
+ # 代扣协议号, 对应于签约时,支付宝返回的协议
22729
+ self.agreement_no = agreement_no
22730
+
22731
+ def validate(self):
22732
+ self.validate_required(self.out_request_no, 'out_request_no')
22733
+ self.validate_required(self.total_amount, 'total_amount')
22734
+ self.validate_required(self.agreement_no, 'agreement_no')
22735
+
22736
+ def to_map(self):
22737
+ _map = super().to_map()
22738
+ if _map is not None:
22739
+ return _map
22740
+
22741
+ result = dict()
22742
+ if self.auth_token is not None:
22743
+ result['auth_token'] = self.auth_token
22744
+ if self.product_instance_id is not None:
22745
+ result['product_instance_id'] = self.product_instance_id
22746
+ if self.out_request_no is not None:
22747
+ result['out_request_no'] = self.out_request_no
22748
+ if self.total_amount is not None:
22749
+ result['total_amount'] = self.total_amount
22750
+ if self.agreement_no is not None:
22751
+ result['agreement_no'] = self.agreement_no
22752
+ return result
22753
+
22754
+ def from_map(self, m: dict = None):
22755
+ m = m or dict()
22756
+ if m.get('auth_token') is not None:
22757
+ self.auth_token = m.get('auth_token')
22758
+ if m.get('product_instance_id') is not None:
22759
+ self.product_instance_id = m.get('product_instance_id')
22760
+ if m.get('out_request_no') is not None:
22761
+ self.out_request_no = m.get('out_request_no')
22762
+ if m.get('total_amount') is not None:
22763
+ self.total_amount = m.get('total_amount')
22764
+ if m.get('agreement_no') is not None:
22765
+ self.agreement_no = m.get('agreement_no')
22766
+ return self
22767
+
22768
+
22769
+ class NotifyDigitalkeyWithholdResponse(TeaModel):
22770
+ def __init__(
22771
+ self,
22772
+ req_msg_id: str = None,
22773
+ result_code: str = None,
22774
+ result_msg: str = None,
22775
+ sub_code: str = None,
22776
+ sub_msg: str = None,
22777
+ data: str = None,
22778
+ ):
22779
+ # 请求唯一ID,用于链路跟踪和问题排查
22780
+ self.req_msg_id = req_msg_id
22781
+ # 结果码,一般OK表示调用成功
22782
+ self.result_code = result_code
22783
+ # 异常信息的文本描述
22784
+ self.result_msg = result_msg
22785
+ # 明细返回码
22786
+ self.sub_code = sub_code
22787
+ # 明细返回码描述
22788
+ self.sub_msg = sub_msg
22789
+ # 预通知返回内容
22790
+ self.data = data
22791
+
22792
+ def validate(self):
22793
+ pass
22794
+
22795
+ def to_map(self):
22796
+ _map = super().to_map()
22797
+ if _map is not None:
22798
+ return _map
22799
+
22800
+ result = dict()
22801
+ if self.req_msg_id is not None:
22802
+ result['req_msg_id'] = self.req_msg_id
22803
+ if self.result_code is not None:
22804
+ result['result_code'] = self.result_code
22805
+ if self.result_msg is not None:
22806
+ result['result_msg'] = self.result_msg
22807
+ if self.sub_code is not None:
22808
+ result['sub_code'] = self.sub_code
22809
+ if self.sub_msg is not None:
22810
+ result['sub_msg'] = self.sub_msg
22811
+ if self.data is not None:
22812
+ result['data'] = self.data
22813
+ return result
22814
+
22815
+ def from_map(self, m: dict = None):
22816
+ m = m or dict()
22817
+ if m.get('req_msg_id') is not None:
22818
+ self.req_msg_id = m.get('req_msg_id')
22819
+ if m.get('result_code') is not None:
22820
+ self.result_code = m.get('result_code')
22821
+ if m.get('result_msg') is not None:
22822
+ self.result_msg = m.get('result_msg')
22823
+ if m.get('sub_code') is not None:
22824
+ self.sub_code = m.get('sub_code')
22825
+ if m.get('sub_msg') is not None:
22826
+ self.sub_msg = m.get('sub_msg')
22827
+ if m.get('data') is not None:
22828
+ self.data = m.get('data')
22829
+ return self
22830
+
22831
+
21907
22832
  class QueryIotplatformPurchaseorderRequest(TeaModel):
21908
22833
  def __init__(
21909
22834
  self,
@@ -35637,6 +36562,119 @@ class ExecThingServiceResponse(TeaModel):
35637
36562
  return self
35638
36563
 
35639
36564
 
36565
+ class CallbackThingServicebyeventRequest(TeaModel):
36566
+ def __init__(
36567
+ self,
36568
+ auth_token: str = None,
36569
+ product_instance_id: str = None,
36570
+ scene: str = None,
36571
+ biz_type: str = None,
36572
+ submit_date: str = None,
36573
+ data_model_id: str = None,
36574
+ content: str = None,
36575
+ ):
36576
+ # OAuth模式下的授权token
36577
+ self.auth_token = auth_token
36578
+ self.product_instance_id = product_instance_id
36579
+ # 场景码
36580
+ self.scene = scene
36581
+ # 业务类型,同一个scene下可以有不同的业务类型,此字段用于区分业务类型
36582
+ self.biz_type = biz_type
36583
+ # 回复日期
36584
+ self.submit_date = submit_date
36585
+ # 物模型服务回复数据的模型ID
36586
+ self.data_model_id = data_model_id
36587
+ # 物模型服务回复数据的内容,格式遵循dataModelId约定的格式
36588
+ self.content = content
36589
+
36590
+ def validate(self):
36591
+ self.validate_required(self.scene, 'scene')
36592
+ self.validate_required(self.data_model_id, 'data_model_id')
36593
+ self.validate_required(self.content, 'content')
36594
+
36595
+ def to_map(self):
36596
+ _map = super().to_map()
36597
+ if _map is not None:
36598
+ return _map
36599
+
36600
+ result = dict()
36601
+ if self.auth_token is not None:
36602
+ result['auth_token'] = self.auth_token
36603
+ if self.product_instance_id is not None:
36604
+ result['product_instance_id'] = self.product_instance_id
36605
+ if self.scene is not None:
36606
+ result['scene'] = self.scene
36607
+ if self.biz_type is not None:
36608
+ result['biz_type'] = self.biz_type
36609
+ if self.submit_date is not None:
36610
+ result['submit_date'] = self.submit_date
36611
+ if self.data_model_id is not None:
36612
+ result['data_model_id'] = self.data_model_id
36613
+ if self.content is not None:
36614
+ result['content'] = self.content
36615
+ return result
36616
+
36617
+ def from_map(self, m: dict = None):
36618
+ m = m or dict()
36619
+ if m.get('auth_token') is not None:
36620
+ self.auth_token = m.get('auth_token')
36621
+ if m.get('product_instance_id') is not None:
36622
+ self.product_instance_id = m.get('product_instance_id')
36623
+ if m.get('scene') is not None:
36624
+ self.scene = m.get('scene')
36625
+ if m.get('biz_type') is not None:
36626
+ self.biz_type = m.get('biz_type')
36627
+ if m.get('submit_date') is not None:
36628
+ self.submit_date = m.get('submit_date')
36629
+ if m.get('data_model_id') is not None:
36630
+ self.data_model_id = m.get('data_model_id')
36631
+ if m.get('content') is not None:
36632
+ self.content = m.get('content')
36633
+ return self
36634
+
36635
+
36636
+ class CallbackThingServicebyeventResponse(TeaModel):
36637
+ def __init__(
36638
+ self,
36639
+ req_msg_id: str = None,
36640
+ result_code: str = None,
36641
+ result_msg: str = None,
36642
+ ):
36643
+ # 请求唯一ID,用于链路跟踪和问题排查
36644
+ self.req_msg_id = req_msg_id
36645
+ # 结果码,一般OK表示调用成功
36646
+ self.result_code = result_code
36647
+ # 异常信息的文本描述
36648
+ self.result_msg = result_msg
36649
+
36650
+ def validate(self):
36651
+ pass
36652
+
36653
+ def to_map(self):
36654
+ _map = super().to_map()
36655
+ if _map is not None:
36656
+ return _map
36657
+
36658
+ result = dict()
36659
+ if self.req_msg_id is not None:
36660
+ result['req_msg_id'] = self.req_msg_id
36661
+ if self.result_code is not None:
36662
+ result['result_code'] = self.result_code
36663
+ if self.result_msg is not None:
36664
+ result['result_msg'] = self.result_msg
36665
+ return result
36666
+
36667
+ def from_map(self, m: dict = None):
36668
+ m = m or dict()
36669
+ if m.get('req_msg_id') is not None:
36670
+ self.req_msg_id = m.get('req_msg_id')
36671
+ if m.get('result_code') is not None:
36672
+ self.result_code = m.get('result_code')
36673
+ if m.get('result_msg') is not None:
36674
+ self.result_msg = m.get('result_msg')
36675
+ return self
36676
+
36677
+
35640
36678
  class ExecThingsdidOneapiRequest(TeaModel):
35641
36679
  def __init__(
35642
36680
  self,