# metering整合 ## Service 根據上次討論,會有三個Service,分別為EAM、MOM與DPM。每個Service中又包含了三個料號,每個料號內含一個Service。 說明時先暫以Service-metric來當做其料號 | Service | pn | | ------- | ------ | | EAM | EAM-User | | | EAM-Object | | | EAM-Tag | | MOM | MOM-User | | | MOM-Object | | | MOM-Tag | | DPM | DPM-User | | | DPM-Object | | | DPM-Tag | ## 用量發送 ### 格式 Time不帶的話即為當下,consumerId為唯一不可重覆的id [POST] PATH: /v2/{pn}/collection 範例: pn為EAM-User,measure為User,consumerId(用戶)為"abc"和"def",用量分別為17與34,用Post發送至/v2/EAM-User/collection ```json= { "time": 1657100193000, //epoch ms格式,不帶為當下 "usages": [ { "consumerId": "abc", "measuredUsage": [ { "measure": "User", "quantity": 17 } ] }, { "consumerId": "def", "measuredUsage": [ { "measure": "User", "quantity": 34 } ] } ] } ``` ## 用量查詢 [GET] PATH: /v2/{pn}/usages granularity: 可為raw、hourly、daily與monthly。因為是要取得User的最後記錄,這裡帶monthly就好 consumerId: 指定查詢某些用,可以用","分隔來查詢多個,如: consumerId1,consumerId2 範例: 查詢pn為EAM-User所有的用量 GET /v2/EAM-User/usages。 |query parameters| value| |---|---| |granularity|monthly| 如果要指定某id,例如:指定abc,可以多帶consumerId為abc ```json= { "usages": [ { "consumerId": "abc", "data": [ { "date": "2022-07-01 00:00:00 +0800 CST", "dateEpoch": 1656604800000, "usages": [ { "metricName": "User", "quantity": 17 } ] } ] }, { "consumerId": "def", "data": [ { "date": "2022-07-01 00:00:00 +0800 CST", "dateEpoch": 1656604800000, "usages": [ { "metricName": "User", "quantity": 34 } ] } ] } ] } ``` ## 測試環境 Swagger https://api-mg-eks002.labs.wise-paas.com/public/apidoc/index.html# SSO: http://api-sso-ensaas.labs.wise-paas.com Client Token: client_id: usage-00000000014 client_secret: ZGJiNTQyMjMtNTIyZC0xMWVhLTkyMDEtMDI1MDQxMDAwMDAx-usage