计算
弹性云服务器 ECS
Flexus云服务
裸金属服务器 BMS
弹性伸缩 AS
镜像服务 IMS
专属主机 DeH
函数工作流 FunctionGraph
云手机服务器 CPH
Huawei Cloud EulerOS
网络
虚拟私有云 VPC
弹性公网IP EIP
虚拟专用网络 VPN
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
VPC终端节点 VPCEP
云连接 CC
企业路由器 ER
企业交换机 ESW
全球加速 GA
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
边缘安全 EdgeSec
威胁检测服务 MTD
CDN与智能边缘
内容分发网络 CDN
CloudPond云服务
智能边缘云 IEC
迁移
主机迁移服务 SMS
对象存储迁移服务 OMS
云数据迁移 CDM
迁移中心 MGC
大数据
MapReduce服务 MRS
数据湖探索 DLI
表格存储服务 CloudTable
云搜索服务 CSS
数据接入服务 DIS
数据仓库服务 GaussDB(DWS)
数据治理中心 DataArts Studio
数据可视化 DLV
数据湖工厂 DLF
湖仓构建 LakeFormation
企业应用
云桌面 Workspace
应用与数据集成平台 ROMA Connect
云解析服务 DNS
专属云
专属计算集群 DCC
IoT物联网
IoT物联网
设备接入 IoTDA
智能边缘平台 IEF
用户服务
账号中心
费用中心
成本中心
资源中心
企业管理
工单管理
国际站常见问题
ICP备案
我的凭证
支持计划
客户运营能力
合作伙伴支持计划
专业服务
区块链
区块链服务 BCS
Web3节点引擎服务 NES
解决方案
SAP
高性能计算 HPC
视频
视频直播 Live
视频点播 VOD
媒体处理 MPC
实时音视频 SparkRTC
数字内容生产线 MetaStudio
存储
对象存储服务 OBS
云硬盘 EVS
云备份 CBR
存储容灾服务 SDRS
高性能弹性文件服务 SFS Turbo
弹性文件服务 SFS
云硬盘备份 VBS
云服务器备份 CSBS
数据快递服务 DES
专属分布式存储服务 DSS
容器
云容器引擎 CCE
容器镜像服务 SWR
应用服务网格 ASM
华为云UCS
云容器实例 CCI
管理与监管
云监控服务 CES
统一身份认证服务 IAM
资源编排服务 RFS
云审计服务 CTS
标签管理服务 TMS
云日志服务 LTS
配置审计 Config
资源访问管理 RAM
消息通知服务 SMN
应用运维管理 AOM
应用性能管理 APM
组织 Organizations
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
应用身份管理服务 OneAccess
数据库
云数据库 RDS
文档数据库服务 DDS
数据管理服务 DAS
数据复制服务 DRS
云数据库 GeminiDB
云数据库 GaussDB
分布式数据库中间件 DDM
数据库和应用迁移 UGO
云数据库 TaurusDB
人工智能
人脸识别服务 FRS
图引擎服务 GES
图像识别 Image
内容审核 Moderation
文字识别 OCR
AI开发平台ModelArts
图像搜索 ImageSearch
对话机器人服务 CBS
华为HiLens
视频智能分析服务 VIAS
语音交互服务 SIS
应用中间件
分布式缓存服务 DCS
API网关 APIG
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
多活高可用服务 MAS
事件网格 EG
企业协同
华为云会议 Meeting
云通信
消息&短信 MSGSMS
云生态
合作伙伴中心
云商店
开发者工具
SDK开发指南
API签名指南
Terraform
华为云命令行工具服务 KooCLI
其他
产品价格详情
系统权限
管理控制台
客户关联华为云合作伙伴须知
消息中心
公共问题
开发与运维
应用管理与运维平台 ServiceStage
软件开发生产线 CodeArts
需求管理 CodeArts Req
部署 CodeArts Deploy
性能测试 CodeArts PerfTest
编译构建 CodeArts Build
流水线 CodeArts Pipeline
制品仓库 CodeArts Artifact
测试计划 CodeArts TestPlan
代码检查 CodeArts Check
代码托管 CodeArts Repo
云应用引擎 CAE
开天aPaaS
云消息服务 KooMessage
云手机服务 KooPhone
云空间服务 KooDrive
本文导读

按需使用量推送(新)

更新时间:2024-10-11 GMT+08:00

接口说明

用户在云商店开通按需资源并产生使用量后,ISV需通过此接口返回用户的实际使用量话单,云商店获取话单后根据使用量计费并对用户扣费。

说明:

SDK请参考《获取SDK》

如何获取AK/SK请参考《AK/SK认证说明》

URI

POST https://mkt-intl.myhuaweicloud.com/api/mkp-openapi-public/global/v1/isv/usage-data(公网)

请求消息

请求参数说明请参见下表:

请求方法:POST

参数

是否必选

类型

最大字符长度

说明

signature

String

1000

@Header

接口签名(base64(hmacSHA256(ISV对接秘钥,ts={ts}&nonce={nonce}&body={body})))

此处body按自然排序后参与签名

ts

String

20

@Header

接口请求时的unix时间戳(毫秒数)

nonce

String

64

@Header

安全随机数

usage_records

List<UsagePushData>

1000

业务使用量纪录集合,UsagePushData个数不得超过1000。

表1 UsagePushData

参数

是否必选

参数类型

最大字符长度

描述

instance_id

String

64

产品实例ID(注意:使用按需接口返回的)

record_time

String

17

使用量记录生成时间(UTC),格式为:

yyyyMMdd'T'HHmmss'Z'

begin_time

String

17

计量开始时间(UTC),格式为:

yyyyMMdd'T'HHmmss'Z'

end_time

String

17

计量结束时间(UTC),格式为:

yyyyMMdd'T'HHmmss'Z'

usage_value

String

20

使用量具体值,最多支持4位有效小数,需为大于0的数值

metering_sn

String

64

ISV话单记录唯一性标识,建议是随机码

relate_pkg_instance

String

64

用完即停套餐包场景下话单必传,需要传递当前用量对应的扣减包实例ID

请求消息示例:

Post {domain}/api/mkp-openapi-public/global/v1/isv/usage-data 
Content-Type:application/json 
nonce: 6c63c221-1f6b-4141-8ff4-22f5dfe82b65 
ts: 1709690865879 
signature: gikLsIgimIscagwSamClFJ1CFT4QprHSDHW… 
{  
    "usage_records": [  
        {  
            "instance_id": "7f141bf1-aec8-4859-8323-fb3a8ad50721",  
            "record_time": "20220809T091000Z",  
            "begin_time": "20220809T080000Z",  
            "end_time": "20220809T090000Z",  
            "usage_value": "99", 
            "metering_sn": "6c75c177b5fe4b8cbb6fc2aa33facfcd"  
        },  
        {  
            "instance_id": "7f141bf1-aec8-4859-8323-fb3a8ad50721",   
            "record_time": "20220809T091000Z",  
            "begin_time": "20220809T080000Z",  
            "end_time": "20220809T090000Z",  
            "usage_value": "999", 
            "metering_sn": "6c75c177b5fe4b8cbb6fc2aa33facfcb" 
        }  
    ]  
}
说明:

1、接口调用上传时,如果话单数据异常,不会在接口层进行报错;后台定时任务会对上传的数据进行校验和处理,生成可以使用的话单数据。如果后台数据处理失败,需要商家重新进行上报。

异常数据可以在 “卖家中心>交易管理>话单管理” 进行查看!

2、话单上报周期要求:

  • 按小时计费

    需要至少每小时上报一次话单数据,且最好在消费时间下一个小时的0-15分钟内完成上报,譬如,用户消费时间在13:25,最好在14:00-14:15内上报,这样能及时给用户扣费,否则就会出现扣费延迟,如果无法实现实时上报,需要在2小时完成上报

  • 按天计费

    推荐每小时将已经明确的用量话单上报到云商店,如果必须每天汇总上报一次,需要保证必须在次日的00:00-00:15内完成上报,最大不能超过01:00,否则用户的扣费会延迟到下一天

3、话单数据上报要求:

  • 资源未关闭
  • 话单开始时间(begin_time)≥资源开始时间
  • 话单开始时间(begin_time)≤话单结束时间(end_time)≤ 话单上报时间
  • 资源关闭后:
  • 话单结束时间(end_time)≤资源关闭时间

4、话单上报中的时间为UTC 时间,与北京时间相差 8 小时;

5、同一个记录的时间,即begin_time 和end_time 时间都一致的情况下,如多次上报记录,会被识别为重复话单,只会处理第一条数据,一旦话单采集后形成正式账单将无法逆向错误话单(话单采集时间:按天计费为每天凌晨1点,按小时计费为每小时15分)。

重复话单将视为异常,异常数据可以在 “卖家中心>交易管理>话单管理” 进行查看!

6、使用量推送接口使用按需接口返回的实例ID,不能使用套餐包返回的实例ID。

响应消息

响应参数说明请参见下表:

参数

是否必选

类型

最大字符长度

说明

error_code

M

String

6

调用结果码。

具体请参见调用结果码说明

error_msg

O

String

255

调用结果描述。

data

O

AbnormalUsageDataInfo

  

返回异常话单错误信息

表2 AbnormalUsageDataInfo

参数

是否必选

参数类型

最大字符长度

描述

abnormal_usage_data

List<AbnormalUsageData>

1000

异常话单列表

表3 AbnormalUsageData

参数

是否必选

参数类型

最大字符长度

描述

metering_sn

String

64

ISV话单记录唯一性标识

error_code

String

16

话单级错误码

001:实例不存在;

002:时间格式异常;

003:用量异常;

004:缺少话单唯一标识;

005:话单唯一标识重复

006:实例对应的商品已退市

007:话单时间已过期

009:实例与ISV不匹配

010:话单重复

011:话单时间范围无效

012:实例非按需资源

013:实例资源状态异常

014:实例资源已关闭

015:话单开始时间小于资源开通时间

016:实例资源开通中

017:用完即停场景下,relate_pkg_instance为空

018:用完即停场景下,relate_pkg_instance不合法,实例不存在或与instance_id不匹配

error_msg

String

255

话单错误描述

错误码:

表4 AbnormalUsageData

http状态码

error_code

error_msg

描述

200

MKT.0000

Success

请求成功

500

94060001

System error!

其它服务内部错误

401

94060002

Auth failed!

输入参数校验失败

参数范围超限,非法值或格式错误

400

94060004

Param invalid

参数无效

输入非接口定义的参数,多参数或少必选参数

比如:传递非法数值、没有实例id等

400

94060005

Time format error

时间格式错误

400

94060006

TimeStamp invalid

时间戳无效

401

94060007

Signature invalid

签名校验失败

400

94060008

Replay error

请求重放错误

500

94060009

Failed to report usage data

话单调用失败

401

94060010

Isv status invalid

ISV状态无效

200

94060999

Failed

该错误码时,会返回话单级错误信息,详见响应示例

当您调用API时,如果遇到“APIGW”开头的错误码,请参见API网关错误码进行处理。

响应消息示例:

  
{  
   "error_code":"MKT.0000",  
   "error_msg":"Success"  
} 
  
{ 
    "error_code": "94060999", 
    "error_msg": "Failed", 
    "data": { 
        "abnormal_usage_data": [ 
            { 
                "error_code": "005", 
                "error_msg": "METERING_SN_DUPLICATE", 
                "metering_sn": "6c75c177b5fe4b8cbb6fc2aa33facfcb" 
            } 
        ] 
    } 
} 
 

我们使用cookie来确保您的高速浏览体验。继续浏览本站,即表示您同意我们使用cookie。 详情

文档反馈

文档反馈

意见反馈

0/500

标记内容

同时提交标记内容