调用PushMeteringData推送计量数据。

  • 目前不支持子账号调用该接口。
  • 请求参数全部需要URLEncode编码。
  • 云市场对每个InstanceId的请求限制为60秒一次, 每次请求支持写入的计量数据为100条。
  • 不支持跨商品的InstanceId批量推送,批量推送时请确保所有InstanceId来自同一个商品。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String PushMeteringData

系统规定参数。取值:PushMeteringData。

Metering String [{“InstanceId”:”1000001”,”StartTime”:”100000000”,”EndTime”:”100000010”,”Entities”:[{“Key”:”Frequency”,”Value”:”96”}]}]

示例中的参数说明如下:

  • InstanceId:云市场实例ID 。参数类型为String。
  • StartTime:计量开始时间。单位秒(格式为Unix时间戳)。参数类型为Long。
  • EndTime:计量结束时间。单位秒(格式为Unix时间戳)。参数类型为Long。
  • Entities:计量实体对象。参数类型为List<Map>。
    • Key:计量项属性名称。参数类型为String。
      • Frequency:使用次数(次)。
      • Period:使用小时时长(小时)。

        请求参数中的时长单位为秒,但是计费时需要转换为小时。即最终的计费单位为小时。

      • Storage:使用存储空间(Byte)。
      • NetworkOut:上行使用流量(Bit/s)。
      • NetworkIn:下行使用流量(Bit/s)。
      • Character:字符数(个)。
      • DailyActiveUser:日活跃用户数(DAU)。
      • PeriodMin:使用分钟时长(分钟)。
    • Value:计量数值(取值 >= 0)。参数类型为Integer。

说明

  • 如果商品设置为实时出账,StartTime和 EndTime为任意时间宽度均可以,但是EndTime一定要大于StartTime 。
  • 如果商品设置为非实时出账(即选择按小时、按天、按月等),StartTime和EndTime 的间隔必须大于5分钟。
  • 批量推送计量数据时,“InstanceId”属性必须为同一个商品所产生的实例,目前不支持多个商品的实例同时推送。

返回数据

名称 类型 示例值 描述
RequestId String 6EF60BEC-0242-43AF-BB20-270359FB54A7

请求ID

Success Boolean true

成功状态标识

示例

请求示例

http(s)://market.aliyuncs.com/?Action=PushMeteringData
&Metering=%5B%7B%22InstanceId%22%3A%221000001%22%2C%22StartTime%22%3A%22100000000%22%2C%22EndTime%22%3A%22100000010%22%2C%22Entities%22%3A%5B%7B%22Key%22%3A%22Frequency%22%2C%22Value%22%3A%2296%22%7D%5D%7D%5D
&<公共请求参数>

正常返回示例

XML 格式

<PushMeteringDataResponse>
  <RequestId>6EF60BEC-0242-43AF-BB20-270359FB54A7</RequestId>
  <Success>true</Success>
</PushMeteringDataResponse>

JSON 格式

{
    "RequestId": "6EF60BEC-0242-43AF-BB20-270359FB54A7",
    "Success": "true"
}

错误码

HttpCode 错误码 错误信息 描述
500 UnknownError An error occurred while processing your request. 未知错误
500 Service.Flow.Control The rate throttling threshold has been exceeded. 请求超过流控限制
500 Invalid.Parameter The specified parameter is invalid. 请求参数错误
500 Invalid.Parameter.Instance The specified Instance parameter is invalid. Instance 参数请求错误
500 Invalid.Parameter.Metering The specified Metering parameter is invalid. Metering 参数请求错误
500 Metering.Data.Exceeded The number of metering entities must not exceed 100. Metering entities 不能超过 100 个
500 Permission.Denied You are not authorized to call the API operation. Contact the API developer to add your account to the API user whitelist. 没有调用权限,请联系接口负责人添加白名单

访问错误中心查看更多错误码。