bssopenapi-20230930/Sources/AlibabacloudBssOpenApi20230930/Client.swift (914 lines of code) (raw):
import Foundation
import Tea
import TeaUtils
import AlibabacloudOpenApi
import AlibabaCloudOpenApiUtil
import AlibabacloudEndpointUtil
open class Client : AlibabacloudOpenApi.Client {
public override init(_ config: AlibabacloudOpenApi.Config) throws {
try super.init(config)
self._endpointRule = "regional"
self._endpointMap = [
"cn-hangzhou": "business.aliyuncs.com",
"cn-shanghai": "business.aliyuncs.com",
"ap-southeast-1": "business.ap-southeast-1.aliyuncs.com",
"ap-northeast-1": "business.ap-southeast-1.aliyuncs.com",
"ap-northeast-2": "business.ap-southeast-1.aliyuncs.com",
"ap-northeast-2-pop": "business.ap-southeast-1.aliyuncs.com",
"ap-south-1": "business.ap-southeast-1.aliyuncs.com",
"ap-southeast-2": "business.ap-southeast-1.aliyuncs.com",
"ap-southeast-3": "business.ap-southeast-1.aliyuncs.com",
"ap-southeast-5": "business.ap-southeast-1.aliyuncs.com",
"cn-beijing": "business.aliyuncs.com",
"cn-beijing-finance-1": "business.aliyuncs.com",
"cn-beijing-finance-pop": "business.aliyuncs.com",
"cn-beijing-gov-1": "business.aliyuncs.com",
"cn-beijing-nu16-b01": "business.aliyuncs.com",
"cn-chengdu": "business.aliyuncs.com",
"cn-edge-1": "business.aliyuncs.com",
"cn-fujian": "business.aliyuncs.com",
"cn-haidian-cm12-c01": "business.aliyuncs.com",
"cn-hangzhou-bj-b01": "business.aliyuncs.com",
"cn-hangzhou-finance": "business.aliyuncs.com",
"cn-hangzhou-internal-prod-1": "business.aliyuncs.com",
"cn-hangzhou-internal-test-1": "business.aliyuncs.com",
"cn-hangzhou-internal-test-2": "business.aliyuncs.com",
"cn-hangzhou-internal-test-3": "business.aliyuncs.com",
"cn-hangzhou-test-306": "business.aliyuncs.com",
"cn-hongkong": "business.aliyuncs.com",
"cn-hongkong-finance-pop": "business.aliyuncs.com",
"cn-huhehaote": "business.aliyuncs.com",
"cn-huhehaote-nebula-1": "business.aliyuncs.com",
"cn-north-2-gov-1": "business.aliyuncs.com",
"cn-qingdao": "business.aliyuncs.com",
"cn-qingdao-nebula": "business.aliyuncs.com",
"cn-shanghai-et15-b01": "business.aliyuncs.com",
"cn-shanghai-et2-b01": "business.aliyuncs.com",
"cn-shanghai-finance-1": "business.aliyuncs.com",
"cn-shanghai-inner": "business.aliyuncs.com",
"cn-shanghai-internal-test-1": "business.aliyuncs.com",
"cn-shenzhen": "business.aliyuncs.com",
"cn-shenzhen-finance-1": "business.aliyuncs.com",
"cn-shenzhen-inner": "business.aliyuncs.com",
"cn-shenzhen-st4-d01": "business.aliyuncs.com",
"cn-shenzhen-su18-b01": "business.aliyuncs.com",
"cn-wuhan": "business.aliyuncs.com",
"cn-wulanchabu": "business.aliyuncs.com",
"cn-yushanfang": "business.aliyuncs.com",
"cn-zhangbei": "business.aliyuncs.com",
"cn-zhangbei-na61-b01": "business.aliyuncs.com",
"cn-zhangjiakou": "business.aliyuncs.com",
"cn-zhangjiakou-na62-a01": "business.aliyuncs.com",
"cn-zhengzhou-nebula-1": "business.aliyuncs.com",
"eu-central-1": "business.ap-southeast-1.aliyuncs.com",
"eu-west-1": "business.ap-southeast-1.aliyuncs.com",
"eu-west-1-oxs": "business.ap-southeast-1.aliyuncs.com",
"me-east-1": "business.ap-southeast-1.aliyuncs.com",
"rus-west-1-pop": "business.ap-southeast-1.aliyuncs.com",
"us-east-1": "business.ap-southeast-1.aliyuncs.com",
"us-west-1": "business.ap-southeast-1.aliyuncs.com"
]
try checkConfig(config as! AlibabacloudOpenApi.Config)
self._endpoint = try getEndpoint("bssopenapi", self._regionId ?? "", self._endpointRule ?? "", self._network ?? "", self._suffix ?? "", self._endpointMap ?? [:], self._endpoint ?? "")
}
public func getEndpoint(_ productId: String, _ regionId: String, _ endpointRule: String, _ network: String, _ suffix: String, _ endpointMap: [String: String], _ endpoint: String) throws -> String {
if (!TeaUtils.Client.empty(endpoint)) {
return endpoint as! String
}
if (!TeaUtils.Client.isUnset(endpointMap) && !TeaUtils.Client.empty(endpointMap[regionId as! String])) {
return endpointMap[regionId as! String] ?? ""
}
return try AlibabacloudEndpointUtil.Client.getEndpointRules(productId, regionId, endpointRule, network, suffix)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func addCouponDeductTagWithOptions(_ tmpReq: AddCouponDeductTagRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> AddCouponDeductTagResponse {
try TeaUtils.Client.validateModel(tmpReq)
var request: AddCouponDeductTagShrinkRequest = AddCouponDeductTagShrinkRequest([:])
AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request)
if (!TeaUtils.Client.isUnset(tmpReq.ecIdAccountIds)) {
request.ecIdAccountIdsShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.ecIdAccountIds, "EcIdAccountIds", "json")
}
if (!TeaUtils.Client.isUnset(tmpReq.tags)) {
request.tagsShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.tags, "Tags", "json")
}
var query: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.couponId)) {
query["CouponId"] = request.couponId ?? "";
}
if (!TeaUtils.Client.isUnset(request.ecIdAccountIdsShrink)) {
query["EcIdAccountIds"] = request.ecIdAccountIdsShrink ?? "";
}
if (!TeaUtils.Client.isUnset(request.nbid)) {
query["Nbid"] = request.nbid ?? "";
}
if (!TeaUtils.Client.isUnset(request.tagsShrink)) {
query["Tags"] = request.tagsShrink ?? "";
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"query": AlibabaCloudOpenApiUtil.Client.query(query)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "AddCouponDeductTag",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(AddCouponDeductTagResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(AddCouponDeductTagResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func addCouponDeductTag(_ request: AddCouponDeductTagRequest) async throws -> AddCouponDeductTagResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await addCouponDeductTagWithOptions(request as! AddCouponDeductTagRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func cancelFundAccountLowAvailableAmountAlarmWithOptions(_ request: CancelFundAccountLowAvailableAmountAlarmRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> CancelFundAccountLowAvailableAmountAlarmResponse {
try TeaUtils.Client.validateModel(request)
var body: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.fundAccountId)) {
body["FundAccountId"] = request.fundAccountId!;
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"body": AlibabaCloudOpenApiUtil.Client.parseToMap(body)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "CancelFundAccountLowAvailableAmountAlarm",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(CancelFundAccountLowAvailableAmountAlarmResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(CancelFundAccountLowAvailableAmountAlarmResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func cancelFundAccountLowAvailableAmountAlarm(_ request: CancelFundAccountLowAvailableAmountAlarmRequest) async throws -> CancelFundAccountLowAvailableAmountAlarmResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await cancelFundAccountLowAvailableAmountAlarmWithOptions(request as! CancelFundAccountLowAvailableAmountAlarmRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func createFundAccountTransferWithOptions(_ request: CreateFundAccountTransferRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> CreateFundAccountTransferResponse {
try TeaUtils.Client.validateModel(request)
var body: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.amount)) {
body["Amount"] = request.amount ?? "";
}
if (!TeaUtils.Client.isUnset(request.currency)) {
body["Currency"] = request.currency ?? "";
}
if (!TeaUtils.Client.isUnset(request.financeType)) {
body["FinanceType"] = request.financeType ?? "";
}
if (!TeaUtils.Client.isUnset(request.fromFundAccountId)) {
body["FromFundAccountId"] = request.fromFundAccountId!;
}
if (!TeaUtils.Client.isUnset(request.remark)) {
body["Remark"] = request.remark ?? "";
}
if (!TeaUtils.Client.isUnset(request.toFundAccountId)) {
body["ToFundAccountId"] = request.toFundAccountId!;
}
if (!TeaUtils.Client.isUnset(request.transferType)) {
body["TransferType"] = request.transferType ?? "";
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"body": AlibabaCloudOpenApiUtil.Client.parseToMap(body)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "CreateFundAccountTransfer",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(CreateFundAccountTransferResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(CreateFundAccountTransferResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func createFundAccountTransfer(_ request: CreateFundAccountTransferRequest) async throws -> CreateFundAccountTransferResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await createFundAccountTransferWithOptions(request as! CreateFundAccountTransferRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func deleteCouponDeductTagWithOptions(_ tmpReq: DeleteCouponDeductTagRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> DeleteCouponDeductTagResponse {
try TeaUtils.Client.validateModel(tmpReq)
var request: DeleteCouponDeductTagShrinkRequest = DeleteCouponDeductTagShrinkRequest([:])
AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request)
if (!TeaUtils.Client.isUnset(tmpReq.ecIdAccountIds)) {
request.ecIdAccountIdsShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.ecIdAccountIds, "EcIdAccountIds", "json")
}
if (!TeaUtils.Client.isUnset(tmpReq.tagKeys)) {
request.tagKeysShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.tagKeys, "TagKeys", "json")
}
var query: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.couponId)) {
query["CouponId"] = request.couponId ?? "";
}
if (!TeaUtils.Client.isUnset(request.ecIdAccountIdsShrink)) {
query["EcIdAccountIds"] = request.ecIdAccountIdsShrink ?? "";
}
if (!TeaUtils.Client.isUnset(request.nbid)) {
query["Nbid"] = request.nbid ?? "";
}
if (!TeaUtils.Client.isUnset(request.tagKeysShrink)) {
query["TagKeys"] = request.tagKeysShrink ?? "";
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"query": AlibabaCloudOpenApiUtil.Client.query(query)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "DeleteCouponDeductTag",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(DeleteCouponDeductTagResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(DeleteCouponDeductTagResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func deleteCouponDeductTag(_ request: DeleteCouponDeductTagRequest) async throws -> DeleteCouponDeductTagResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await deleteCouponDeductTagWithOptions(request as! DeleteCouponDeductTagRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func describeCouponWithOptions(_ tmpReq: DescribeCouponRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> DescribeCouponResponse {
try TeaUtils.Client.validateModel(tmpReq)
var request: DescribeCouponShrinkRequest = DescribeCouponShrinkRequest([:])
AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request)
if (!TeaUtils.Client.isUnset(tmpReq.ecIdAccountIds)) {
request.ecIdAccountIdsShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.ecIdAccountIds, "EcIdAccountIds", "json")
}
var query: [String: String] = AlibabaCloudOpenApiUtil.Client.query(TeaUtils.Client.toMap(request))
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"query": AlibabaCloudOpenApiUtil.Client.query(query)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "DescribeCoupon",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "GET",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(DescribeCouponResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(DescribeCouponResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func describeCoupon(_ request: DescribeCouponRequest) async throws -> DescribeCouponResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await describeCouponWithOptions(request as! DescribeCouponRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func describeCouponItemListWithOptions(_ tmpReq: DescribeCouponItemListRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> DescribeCouponItemListResponse {
try TeaUtils.Client.validateModel(tmpReq)
var request: DescribeCouponItemListShrinkRequest = DescribeCouponItemListShrinkRequest([:])
AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request)
if (!TeaUtils.Client.isUnset(tmpReq.ecIdAccountIds)) {
request.ecIdAccountIdsShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.ecIdAccountIds, "EcIdAccountIds", "json")
}
var query: [String: String] = AlibabaCloudOpenApiUtil.Client.query(TeaUtils.Client.toMap(request))
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"query": AlibabaCloudOpenApiUtil.Client.query(query)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "DescribeCouponItemList",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "GET",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(DescribeCouponItemListResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(DescribeCouponItemListResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func describeCouponItemList(_ request: DescribeCouponItemListRequest) async throws -> DescribeCouponItemListResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await describeCouponItemListWithOptions(request as! DescribeCouponItemListRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func getFundAccountAvailableAmountWithOptions(_ request: GetFundAccountAvailableAmountRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> GetFundAccountAvailableAmountResponse {
try TeaUtils.Client.validateModel(request)
var body: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.fundAccountId)) {
body["FundAccountId"] = request.fundAccountId ?? "";
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"body": AlibabaCloudOpenApiUtil.Client.parseToMap(body)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "GetFundAccountAvailableAmount",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(GetFundAccountAvailableAmountResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(GetFundAccountAvailableAmountResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func getFundAccountAvailableAmount(_ request: GetFundAccountAvailableAmountRequest) async throws -> GetFundAccountAvailableAmountResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await getFundAccountAvailableAmountWithOptions(request as! GetFundAccountAvailableAmountRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func getFundAccountCanAllocateCreditAmountWithOptions(_ request: GetFundAccountCanAllocateCreditAmountRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> GetFundAccountCanAllocateCreditAmountResponse {
try TeaUtils.Client.validateModel(request)
var body: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.fundAccountId)) {
body["FundAccountId"] = request.fundAccountId!;
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"body": AlibabaCloudOpenApiUtil.Client.parseToMap(body)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "GetFundAccountCanAllocateCreditAmount",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(GetFundAccountCanAllocateCreditAmountResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(GetFundAccountCanAllocateCreditAmountResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func getFundAccountCanAllocateCreditAmount(_ request: GetFundAccountCanAllocateCreditAmountRequest) async throws -> GetFundAccountCanAllocateCreditAmountResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await getFundAccountCanAllocateCreditAmountWithOptions(request as! GetFundAccountCanAllocateCreditAmountRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func getFundAccountCanRecycleAmountWithOptions(_ request: GetFundAccountCanRecycleAmountRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> GetFundAccountCanRecycleAmountResponse {
try TeaUtils.Client.validateModel(request)
var body: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.currency)) {
body["Currency"] = request.currency ?? "";
}
if (!TeaUtils.Client.isUnset(request.recycleFromFundAccountId)) {
body["RecycleFromFundAccountId"] = request.recycleFromFundAccountId ?? "";
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"body": AlibabaCloudOpenApiUtil.Client.parseToMap(body)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "GetFundAccountCanRecycleAmount",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(GetFundAccountCanRecycleAmountResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(GetFundAccountCanRecycleAmountResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func getFundAccountCanRecycleAmount(_ request: GetFundAccountCanRecycleAmountRequest) async throws -> GetFundAccountCanRecycleAmountResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await getFundAccountCanRecycleAmountWithOptions(request as! GetFundAccountCanRecycleAmountRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func getFundAccountCanTransferAmountWithOptions(_ request: GetFundAccountCanTransferAmountRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> GetFundAccountCanTransferAmountResponse {
try TeaUtils.Client.validateModel(request)
var body: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.currency)) {
body["Currency"] = request.currency ?? "";
}
if (!TeaUtils.Client.isUnset(request.fundAccountId)) {
body["FundAccountId"] = request.fundAccountId ?? "";
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"body": AlibabaCloudOpenApiUtil.Client.parseToMap(body)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "GetFundAccountCanTransferAmount",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(GetFundAccountCanTransferAmountResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(GetFundAccountCanTransferAmountResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func getFundAccountCanTransferAmount(_ request: GetFundAccountCanTransferAmountRequest) async throws -> GetFundAccountCanTransferAmountResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await getFundAccountCanTransferAmountWithOptions(request as! GetFundAccountCanTransferAmountRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func getFundAccountCanWithdrawAmountWithOptions(_ request: GetFundAccountCanWithdrawAmountRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> GetFundAccountCanWithdrawAmountResponse {
try TeaUtils.Client.validateModel(request)
var body: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.fundAccountId)) {
body["FundAccountId"] = request.fundAccountId!;
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"body": AlibabaCloudOpenApiUtil.Client.parseToMap(body)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "GetFundAccountCanWithdrawAmount",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(GetFundAccountCanWithdrawAmountResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(GetFundAccountCanWithdrawAmountResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func getFundAccountCanWithdrawAmount(_ request: GetFundAccountCanWithdrawAmountRequest) async throws -> GetFundAccountCanWithdrawAmountResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await getFundAccountCanWithdrawAmountWithOptions(request as! GetFundAccountCanWithdrawAmountRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func getFundAccountLowAvailableAmountAlarmWithOptions(_ request: GetFundAccountLowAvailableAmountAlarmRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> GetFundAccountLowAvailableAmountAlarmResponse {
try TeaUtils.Client.validateModel(request)
var body: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.fundAccountId)) {
body["FundAccountId"] = request.fundAccountId!;
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"body": AlibabaCloudOpenApiUtil.Client.parseToMap(body)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "GetFundAccountLowAvailableAmountAlarm",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(GetFundAccountLowAvailableAmountAlarmResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(GetFundAccountLowAvailableAmountAlarmResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func getFundAccountLowAvailableAmountAlarm(_ request: GetFundAccountLowAvailableAmountAlarmRequest) async throws -> GetFundAccountLowAvailableAmountAlarmResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await getFundAccountLowAvailableAmountAlarmWithOptions(request as! GetFundAccountLowAvailableAmountAlarmRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func getFundAccountTransactionDetailsWithOptions(_ tmpReq: GetFundAccountTransactionDetailsRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> GetFundAccountTransactionDetailsResponse {
try TeaUtils.Client.validateModel(tmpReq)
var request: GetFundAccountTransactionDetailsShrinkRequest = GetFundAccountTransactionDetailsShrinkRequest([:])
AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request)
if (!TeaUtils.Client.isUnset(tmpReq.transactionChannelList)) {
request.transactionChannelListShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.transactionChannelList, "TransactionChannelList", "json")
}
if (!TeaUtils.Client.isUnset(tmpReq.transactionTypeList)) {
request.transactionTypeListShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.transactionTypeList, "TransactionTypeList", "json")
}
var query: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.currentPage)) {
query["CurrentPage"] = request.currentPage!;
}
if (!TeaUtils.Client.isUnset(request.pageSize)) {
query["PageSize"] = request.pageSize!;
}
var body: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.billNumber)) {
body["BillNumber"] = request.billNumber ?? "";
}
if (!TeaUtils.Client.isUnset(request.channelTransactionNumber)) {
body["ChannelTransactionNumber"] = request.channelTransactionNumber ?? "";
}
if (!TeaUtils.Client.isUnset(request.endTime)) {
body["EndTime"] = request.endTime!;
}
if (!TeaUtils.Client.isUnset(request.fundAccountId)) {
body["FundAccountId"] = request.fundAccountId!;
}
if (!TeaUtils.Client.isUnset(request.startTime)) {
body["StartTime"] = request.startTime!;
}
if (!TeaUtils.Client.isUnset(request.transactionChannelListShrink)) {
body["TransactionChannelList"] = request.transactionChannelListShrink ?? "";
}
if (!TeaUtils.Client.isUnset(request.transactionDirection)) {
body["TransactionDirection"] = request.transactionDirection ?? "";
}
if (!TeaUtils.Client.isUnset(request.transactionNumber)) {
body["TransactionNumber"] = request.transactionNumber!;
}
if (!TeaUtils.Client.isUnset(request.transactionType)) {
body["TransactionType"] = request.transactionType ?? "";
}
if (!TeaUtils.Client.isUnset(request.transactionTypeListShrink)) {
body["TransactionTypeList"] = request.transactionTypeListShrink ?? "";
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"query": AlibabaCloudOpenApiUtil.Client.query(query),
"body": AlibabaCloudOpenApiUtil.Client.parseToMap(body)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "GetFundAccountTransactionDetails",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(GetFundAccountTransactionDetailsResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(GetFundAccountTransactionDetailsResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func getFundAccountTransactionDetails(_ request: GetFundAccountTransactionDetailsRequest) async throws -> GetFundAccountTransactionDetailsResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await getFundAccountTransactionDetailsWithOptions(request as! GetFundAccountTransactionDetailsRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func listCouponDeductTagWithOptions(_ tmpReq: ListCouponDeductTagRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> ListCouponDeductTagResponse {
try TeaUtils.Client.validateModel(tmpReq)
var request: ListCouponDeductTagShrinkRequest = ListCouponDeductTagShrinkRequest([:])
AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request)
if (!TeaUtils.Client.isUnset(tmpReq.ecIdAccountIds)) {
request.ecIdAccountIdsShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.ecIdAccountIds, "EcIdAccountIds", "json")
}
var query: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.couponId)) {
query["CouponId"] = request.couponId ?? "";
}
if (!TeaUtils.Client.isUnset(request.ecIdAccountIdsShrink)) {
query["EcIdAccountIds"] = request.ecIdAccountIdsShrink ?? "";
}
if (!TeaUtils.Client.isUnset(request.nbid)) {
query["Nbid"] = request.nbid ?? "";
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"query": AlibabaCloudOpenApiUtil.Client.query(query)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "ListCouponDeductTag",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(ListCouponDeductTagResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(ListCouponDeductTagResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func listCouponDeductTag(_ request: ListCouponDeductTagRequest) async throws -> ListCouponDeductTagResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await listCouponDeductTagWithOptions(request as! ListCouponDeductTagRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func listFundAccountWithOptions(_ request: ListFundAccountRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> ListFundAccountResponse {
try TeaUtils.Client.validateModel(request)
var query: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.nbid)) {
query["Nbid"] = request.nbid ?? "";
}
var body: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.queryOnlyInUse)) {
body["QueryOnlyInUse"] = request.queryOnlyInUse!;
}
if (!TeaUtils.Client.isUnset(request.queryOnlyManage)) {
body["QueryOnlyManage"] = request.queryOnlyManage!;
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"query": AlibabaCloudOpenApiUtil.Client.query(query),
"body": AlibabaCloudOpenApiUtil.Client.parseToMap(body)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "ListFundAccount",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(ListFundAccountResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(ListFundAccountResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func listFundAccount(_ request: ListFundAccountRequest) async throws -> ListFundAccountResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await listFundAccountWithOptions(request as! ListFundAccountRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func listFundAccountPayRelationWithOptions(_ request: ListFundAccountPayRelationRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> ListFundAccountPayRelationResponse {
try TeaUtils.Client.validateModel(request)
var query: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.currentPage)) {
query["CurrentPage"] = request.currentPage!;
}
if (!TeaUtils.Client.isUnset(request.nbid)) {
query["Nbid"] = request.nbid ?? "";
}
if (!TeaUtils.Client.isUnset(request.pageSize)) {
query["PageSize"] = request.pageSize!;
}
var body: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.fundAccountId)) {
body["FundAccountId"] = request.fundAccountId ?? "";
}
if (!TeaUtils.Client.isUnset(request.status)) {
body["Status"] = request.status ?? "";
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"query": AlibabaCloudOpenApiUtil.Client.query(query),
"body": AlibabaCloudOpenApiUtil.Client.parseToMap(body)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "ListFundAccountPayRelation",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(ListFundAccountPayRelationResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(ListFundAccountPayRelationResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func listFundAccountPayRelation(_ request: ListFundAccountPayRelationRequest) async throws -> ListFundAccountPayRelationResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await listFundAccountPayRelationWithOptions(request as! ListFundAccountPayRelationRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func setFundAccountCreditAmountWithOptions(_ request: SetFundAccountCreditAmountRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> SetFundAccountCreditAmountResponse {
try TeaUtils.Client.validateModel(request)
var body: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.creditAmount)) {
body["CreditAmount"] = request.creditAmount ?? "";
}
if (!TeaUtils.Client.isUnset(request.currency)) {
body["Currency"] = request.currency ?? "";
}
if (!TeaUtils.Client.isUnset(request.fundAccountId)) {
body["FundAccountId"] = request.fundAccountId!;
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"body": AlibabaCloudOpenApiUtil.Client.parseToMap(body)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "SetFundAccountCreditAmount",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(SetFundAccountCreditAmountResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(SetFundAccountCreditAmountResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func setFundAccountCreditAmount(_ request: SetFundAccountCreditAmountRequest) async throws -> SetFundAccountCreditAmountResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await setFundAccountCreditAmountWithOptions(request as! SetFundAccountCreditAmountRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func setFundAccountLowAvailableAmountAlarmWithOptions(_ request: SetFundAccountLowAvailableAmountAlarmRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> SetFundAccountLowAvailableAmountAlarmResponse {
try TeaUtils.Client.validateModel(request)
var body: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.fundAccountId)) {
body["FundAccountId"] = request.fundAccountId!;
}
if (!TeaUtils.Client.isUnset(request.thresholdAmount)) {
body["ThresholdAmount"] = request.thresholdAmount ?? "";
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"body": AlibabaCloudOpenApiUtil.Client.parseToMap(body)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "SetFundAccountLowAvailableAmountAlarm",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(SetFundAccountLowAvailableAmountAlarmResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(SetFundAccountLowAvailableAmountAlarmResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func setFundAccountLowAvailableAmountAlarm(_ request: SetFundAccountLowAvailableAmountAlarmRequest) async throws -> SetFundAccountLowAvailableAmountAlarmResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await setFundAccountLowAvailableAmountAlarmWithOptions(request as! SetFundAccountLowAvailableAmountAlarmRequest, runtime as! TeaUtils.RuntimeOptions)
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func setSavingPlanUserDeductRuleWithOptions(_ tmpReq: SetSavingPlanUserDeductRuleRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> SetSavingPlanUserDeductRuleResponse {
try TeaUtils.Client.validateModel(tmpReq)
var request: SetSavingPlanUserDeductRuleShrinkRequest = SetSavingPlanUserDeductRuleShrinkRequest([:])
AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request)
if (!TeaUtils.Client.isUnset(tmpReq.ecIdAccountIds)) {
request.ecIdAccountIdsShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.ecIdAccountIds, "EcIdAccountIds", "json")
}
if (!TeaUtils.Client.isUnset(tmpReq.userDeductRules)) {
request.userDeductRulesShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.userDeductRules, "UserDeductRules", "json")
}
var query: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.ecIdAccountIdsShrink)) {
query["EcIdAccountIds"] = request.ecIdAccountIdsShrink ?? "";
}
if (!TeaUtils.Client.isUnset(request.nbid)) {
query["Nbid"] = request.nbid ?? "";
}
var body: [String: Any] = [:]
if (!TeaUtils.Client.isUnset(request.spnInstanceCode)) {
body["SpnInstanceCode"] = request.spnInstanceCode ?? "";
}
if (!TeaUtils.Client.isUnset(request.userDeductRulesShrink)) {
body["UserDeductRules"] = request.userDeductRulesShrink ?? "";
}
var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([
"query": AlibabaCloudOpenApiUtil.Client.query(query),
"body": AlibabaCloudOpenApiUtil.Client.parseToMap(body)
])
var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([
"action": "SetSavingPlanUserDeductRule",
"version": "2023-09-30",
"protocol": "HTTPS",
"pathname": "/",
"method": "POST",
"authType": "AK",
"style": "RPC",
"reqBodyType": "formData",
"bodyType": "json"
])
if (TeaUtils.Client.isUnset(self._signatureVersion) || !TeaUtils.Client.equalString(self._signatureVersion, "v4")) {
var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(SetSavingPlanUserDeductRuleResponse(), tmp)
}
else {
var tmp: [String: Any] = try await execute(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions)
return Tea.TeaConverter.fromMap(SetSavingPlanUserDeductRuleResponse(), tmp)
}
}
@available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
public func setSavingPlanUserDeductRule(_ request: SetSavingPlanUserDeductRuleRequest) async throws -> SetSavingPlanUserDeductRuleResponse {
var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:])
return try await setSavingPlanUserDeductRuleWithOptions(request as! SetSavingPlanUserDeductRuleRequest, runtime as! TeaUtils.RuntimeOptions)
}
}