管理中心
我的

订阅数据

Health Service Kit云提供了订阅通知机制,当用户数据发生变化时,实时通知开发者,以便应用拥有用户的最新数据。

说明

请使用企业开发者账号注册订阅通知能力,不支持个人开发者申请订阅。

当前支持数据事件订阅和场景事件订阅。

  • 数据事件订阅:包括但不限于用户的账号、运动记录、采样数据、健康记录等数据变化事件,使用步骤请参见数据事件订阅。
  • 场景事件订阅:包括但不限于用户的场景目标事件,使用步骤请参见场景事件订阅。

基础概念

订阅交互流程

流程说明:当用户数据发生变化时,实时通知开发者,以便应用拥有用户的最新数据。

  1. 开发者需要在联盟卡片上注册成为订阅者。
  2. Health Service Kit服务端保存开发者应用订阅者信息。
  3. 开发者应用接入Health Service Kit,订阅事件生成订阅记录。
  4. Health Service Kit服务端保存用户的订阅记录信息。
  5. 用户数据发生变化,实时通知(Notification)开发者应用。
  6. 开发者应用收到通知消息,向Health Service Kit服务端拉取最新的数据。
    说明
    • 开发者可前往Health Service Kit卡片,点击产品名称,查看回调地址、subscriberId等订阅者信息。
    • 注销订阅者信息后,已生成的订阅记录会被删除。开发者应用需在用户再次授权时,重新生成用户订阅记录。

订阅角色

展开

角色/组件

说明

订阅者

生态应用作为订阅者,当其用户数据更改时,Health Service Kit通知其服务端的回调地址。订阅者由Subscriber ID唯一标识。

事件

用户活动事件。包括用户取消授权、运动记录变化(更新、删除)、原子数据变化(更新、删除)等操作。

订阅记录

记录订阅者、用户、事件之间的关联关系。表示订阅者关注了用户的某个事件。订阅记录由Subscription ID唯一标识。

通知

Health Service Kit向订阅者回调地址发出的通知请求,通知订阅用户事件变化。

订阅事件

展开

事件类别(type)

事件子类别(subType)

事件类别ID(eventType)

描述

扩展元数据

USER_EVENT

用户账号事件

REVOKE_ALL

USER_EVENT$REVOKE_ALL

用户取消应用授权事件

无

DELETE_USER

USER_EVENT$DELETE_USER

用户销户事件

REFRESH_TOKEN_INVALID

USER_EVENT$REFRESH_TOKEN_INVALID

用户Refresh Token失效事件

ACTIVITY_RECORD_EVENT

用户运动记录事件

UPDATE

ACTIVITY_RECORD_EVENT$UPDATE

新增/更新运动记录事件

metaKey:

  • startTime:数据变化的开始时间
  • endTime:数据变化的结束时间
  • activityType:ActivityRecord活动类型
  • timeZone:时区

DELETE

ACTIVITY_RECORD_EVENT$DELETE

删除运动记录事件

metaKey:

  • startTime:数据变化的开始时间
  • endTime:数据变化的结束时间
  • activityType:ActivityRecord活动类型
  • timeZone:时区

SAMPLESET_EVENT

采样数据事件

UPDATE

SAMPLESET_EVENT$UPDATE${DATATYPE}

新增/更新采样数据事件

metaKey:

  • startTime:数据变化的开始时间
  • endTime:数据变化的结束时间
  • datatype:原子采样数据类型
  • timeZone:时区
  • recordDay:日统计记录日期

DELETE

SAMPLESET_EVENT$DELETE${DATATYPE}

删除采样数据事件

metaKey:

  • startTime:数据变化的开始时间
  • endTime:数据变化的结束时间
  • datatype:原子采样数据类型
  • timeZone:时区
  • recordDay:日统计记录日期

HEALTH_RECORD_EVENT

健康记录事件

UPDATE

HEALTH_RECORD_EVENT$UPDATE${DATATYPE}

新增/更新健康记录事件

metaKey:

  • startTime:数据变化的开始时间
  • endTime:数据变化的结束时间
  • datatype:健康记录数据类型
  • timeZone:时区

DELETE

HEALTH_RECORD_EVENT$DELETE${DATATYPE}

删除健康记录事件

metaKey:

  • startTime:数据变化的开始时间
  • endTime:数据变化的结束时间
  • datatype:健康记录数据类型
  • timeZone:时区

SCENARIO_GOAL_EVENT

场景目标事件

ACHIEVE

SCENARIO_GOAL_EVENT$ACHIEVE

场景目标达成事件

metaKey:

  • goalInfo:用户创建的原始目标信息
  • goalStatus:每单周期内,用户创建的每个目标达成状态列表
  • actualAchievedCount:实际达成次数累计
  • timeZone:时区

DEVICE_EVENT

GPRS设备事件

BIND

DEVICE_EVENT$BIND

设备绑定事件

metaKey:

deviceCode:设备绑定码

UNBIND

DEVICE_EVENT$UNBIND

设备解绑事件

CONNECTION_VERIFY_EVENT

连通性测试事件

VERIFY

CONNECTION_VERIFY_EVENT$VERIFY

回调URL连通性校验事件

无

SAMPLE_CONFIG_EVENT

配置变更事件

UPDATE

SAMPLE_CONFIG_EVENT$UPDATE

更新配置事件

metaKey:

  • type:配置类别
  • id:配置ID
  • modifiedTime:配置更新时间

HEALTH_ALARM_EVENT

健康预警事件

ATRIAL_PREMATURE_BEAT

HEALTH_ALARM_EVENT$ATRIAL_PREMATURE_BEAT

房性早搏预警事件

metaKey:

  • startTime:预警事件开始时间
  • endTime:预警事件结束时间
  • datatype:数据类型
  • timeZone:时区

VENTRICULAR_PREMATURE_BEAT

HEALTH_ALARM_EVENT$VENTRICULAR_PREMATURE_BEAT

室性早搏预警事件

metaKey:

  • startTime:预警事件开始时间
  • endTime:预警事件结束时间
  • datatype:数据类型
  • timeZone:时区

ATRIAL_FIBRILLATION

HEALTH_ALARM_EVENT$ATRIAL_FIBRILLATION

房颤预警事件

metaKey:

  • startTime:预警事件开始时间
  • endTime:预警事件结束时间
  • datatype:数据类型
  • timeZone:时区

TACHYCARDIA

HEALTH_ALARM_EVENT$TACHYCARDIA

心率过速预警事件

metaKey:

  • startTime:预警事件开始时间
  • endTime:预警事件结束时间
  • datatype:数据类型
  • timeZone:时区

BRADYCARDIA

HEALTH_ALARM_EVENT$BRADYCARDIA

心率过缓预警事件

metaKey:

  • startTime:预警事件开始时间
  • endTime:预警事件结束时间
  • datatype:数据类型
  • timeZone:时区

LOW_SPO2

HEALTH_ALARM_EVENT$LOW_SPO2

较低血氧提醒事件

metaKey:

  • startTime:预警事件开始时间
  • endTime:预警事件结束时间
  • datatype:数据类型
  • timeZone:时区

HYPERTHERMIA

HEALTH_ALARM_EVENT$HYPERTHERMIA

体温过高预警事件

metaKey:

  • startTime:预警事件开始时间
  • endTime:预警事件结束时间
  • datatype:数据类型
  • timeZone:时区

HYPOTHERMIA

HEALTH_ALARM_EVENT$HYPOTHERMIA

体温过低预警事件

metaKey:

  • startTime:预警事件开始时间
  • endTime:预警事件结束时间
  • datatype:数据类型
  • timeZone:时区
说明

当前健康预警事件仅支持部分开发者使用,如有需要,可提单或者发送邮件至hihealth@huawei.com进行咨询。

支持订阅的华为运动健康App数据类型

展开

事件类别

数据类型

活动类型/数据类型

描述

用户运动记录事件

运动记录

请参见运动类型常量

请参见运动类型常量

采样数据事件

个人信息采样数据

com.huawei.instantaneous.body_weight

体重

健康采样数据

com.huawei.instantaneous.blood_glucose

血糖

com.huawei.instantaneous.blood_pressure

血压

com.huawei.instantaneous.spo2

血氧

com.huawei.instantaneous.heart_rate

心率

com.huawei.instantaneous.resting_heart_rate

静息心率

com.huawei.instantaneous.stress

压力

com.huawei.instantaneous.skin.temperature

皮肤温度

com.huawei.sleep.on_off_bed_record

睡眠上离床记录

com.huawei.instantaneous.body.temperature

体温

com.huawei.vo2max

最大摄氧量

com.huawei.obstructive_sleep_apnea

睡眠呼吸暂停

com.huawei.emotion

情绪

com.huawei.heart_rate_variability

心率变异性

com.huawei.instantaneous.breathe_rate

呼吸率

运动采样数据

com.huawei.continuous.steps.delta

步数

com.huawei.continuous.distance.delta

距离

com.huawei.continuous.calories.burnt

卡路里

com.huawei.continuous.exercise_intensity.v2

中高强度

运动统计数据

com.huawei.continuous.steps.total

总步数

com.huawei.continuous.distance.total

总距离

com.huawei.continuous.calories.burnt.total

卡路里统计

com.huawei.continuous.exercise_intensity.v2.statistics

中高强度统计

健康记录事件

健康记录数据

com.huawei.continuous.ecg_record

ECG心电测量记录

com.huawei.health.record.sleep

睡眠记录

com.huawei.health.record.menstrual_cycle

女性生理周期

com.huawei.health.record.tachycardia

心率过速

com.huawei.health.record.bradycardia

心率过缓

com.huawei.health.record.arrhythmia_result

心律失常结果

com.huawei.health.record.dynamic_bp

动态血压

支持场景目标事件的数据类型

SCENARIO_GOAL_EVENT当前支持总步数。

展开

数据类型

描述

支持的目标类型

com.huawei.continuous.steps.total

总步数

测量值目标:MetricGoal

持续时间目标:DurationGoal

支持健康预警事件的数据类型

展开

数据类型

描述

使用场景

com.huawei.continuous.ecg_record

ECG心电测量记录

若只关注心电异常事件,可针对心电异常类别选择对应健康预警事件

com.huawei.health.record.tachycardia

心率过速

参考心率过速和过缓,目前仅支持部分开发者使用。

com.huawei.health.record.bradycardia

心率过缓

com.huawei.health.record.lowSpo2Alert

低血氧

参考低血氧,目前仅支持部分开发者使用。

com.huawei.health.record.hyperthermia

体温过高

参考体温过高,目前仅支持部分开发者使用。

使用订阅功能

注册成为订阅者

在联盟卡片申请Health Service Kit服务时,选择已经创建的产品,勾选注册订阅通知能力。可选择HTTP订阅方式,填写回调通知地址,并通过测试连通性来检查回调地址是否连通。

或者选择端侧订阅方式,填写应用包名与Action,如果您的使用场景满足如下条件:

1. 使用端侧订阅方式

2. 订阅事件类型是场景目标事件

3. 使用apk与apk间信息通知

请参考扩展能力服务开发指南。

说明
  • 建议开发者在接收订阅事件通知时,获取事件通知请求头内的内容签名做验证。验签内容参见:签名内容组成。
  • 签名验证通过,并且请开发者确认该应用的订阅回调地址的HTTP状态码为204,否则将返回404表示回调地址连通性检验失败。
  • 开发者填写的回调地址请使用HTTPS协议,并且回调地址请以全小写字母"/healthkit/notifications"结尾。
  • 订阅者对通知事件的处理建议异步到Health Service Kit云获取数据,避免耗时操作导致响应时延较高。
  • 给用户创建订阅记录时,每个用户只能关联一个订阅者ID。

当您选择HTTP订阅方式时,可选择添加多个回调地址信息,并赋予这些回调地址对应标签类别。例如:测试环境的回调地址、生产环境的回调地址。保存成功后,按照填写的回调地址,会生成对应回调地址的订阅者ID。当给用户创建订阅记录时,每个用户只能关联一个订阅者ID。

当您选择端侧订阅方式时,与HTTP订阅方式类似,支持多个Action的填写。

数据事件订阅

  1. 注册订阅记录。

    HTTP请求,请参见新增/更新订阅记录接口

    POST
    https://health-api.cloud.huawei.com/healthkit/v2/subscriptions

    请求示例

    POST
    https://health-api.cloud.huawei.com/healthkit/v2/subscriptions

    请求体

    POST
    https://health-api.cloud.huawei.com/healthkit/v2/subscriptions
    Content-Type: application/json
    Authorization: Bearer ***
    x-client-id: ***
    x-version: ***
    x-caller-trace-id: ***
    {
      "subscriberId": "08666998-78f6-46b9-8620-faa06cdbac2b",
      "eventTypes": [
          // 订阅用户运动记录变化事件
          {
              "type": "ACTIVITY_RECORD_EVENT",
              "subType": "UPDATE",
              "eventType": "ACTIVITY_RECORD_EVENT$UPDATE"
          },
          // 订阅用户运动记录删除事件
          {
              "type": "ACTIVITY_RECORD_EVENT",
              "subType": "DELETE",
              "eventType": "ACTIVITY_RECORD_EVENT$DELETE"
          },
          // 订阅采样数据变化事件,以订阅体重数据为例
          {
              "type": "SAMPLESET_EVENT",
              "subType": "UPDATE",
              "eventType": "SAMPLESET_EVENT$UPDATE$com.huawei.instantaneous.body_weight"
          },
          // 订阅健康记录数据变化事件,以订阅睡眠记录数据为例
          {
              "type": "HEALTH_RECORD_EVENT",
              "subType": "UPDATE",
              "eventType": "HEALTH_RECORD_EVENT$UPDATE$com.huawei.health.record.sleep"
          }
      ]
    }

    响应体

    HTTP/1.1 200 OK
    Content-type: application/json;charset=utf-8
    [
        {
            "appId": "101524371",
            "eventType": "ACTIVITY_RECORD_EVENT$UPDATE",
            "subscriberId": "a2613ab0-19d8-4126-b18f-7779405b5992",
            "subscriptionId": "0924d8d1-6d4a-4f81-99b9-b96b1a0c970c",
            "goalInfo": "null",
    	"alarmThreshold": "null",
            "subscriptionMode": 0,
    	"type": "ACTIVITY_RECORD_EVENT",
    	"subType": "UPDATE",
            "openId": "MDFAMTAxNTI0MzcxQGQ0Y2M3N2UxZTVmNjcxNWFkMWQ5Y2JjYjlmZDZiaNTY3QDVhNmNkY2FiaMTFhYzc4NDk4NDI0MzJiaNjg0MzViaYmUyMGEzZjZkNzUzYWVjM2Q5ZTgwYWM5NTgzNmY"
        },
        {
            "appId": "101524371",
            "eventType": "ACTIVITY_RECORD_EVENT$DELETE",
            "subscriberId": "a2613ab0-19d8-4126-b18f-7779405b5992",
            "subscriptionId": "641eeec8-a9c1-4c4c-9789-4963b92a6c46",
            "goalInfo": "null",
    	"alarmThreshold": "null",
            "subscriptionMode": 0,
    	"type": "ACTIVITY_RECORD_EVENT",
    	"subType": "DELETE",
            "openId": "MDFAMTAxNTI0MzcxQGQ0Y2M3N2UxZTVmNjcxNWFkMWQ5Y2JjYjlmZDZiaNTY3QDVhNmNkY2FiaMTFhYzc4NDk4NDI0MzJiaNjg0MzViaYmUyMGEzZjZkNzUzYWVjM2Q5ZTgwYWM5NTgzNmY"
        },
        {
            "appId": "101524371",
            "eventType": "SAMPLESET_EVENT$UPDATE$com.huawei.instantaneous.body_weight",
            "subscriberId": "a2613ab0-19d8-4126-b18f-7779405b5992",
            "subscriptionId": "536sfgc8-a6c1-3tt5c-9369-2643b92g7g46",
            "goalInfo": "null",
    	"alarmThreshold": "null",
            "subscriptionMode": 0,
    	"type": "SAMPLESET_EVENT",
    	"subType": "UPDATE",
            "openId": "MDFAMTAxNTI0MzcxQGQ0Y2M3N2UxZTVmNjcxNWFkMWQ5Y2JjYjlmZDZiaNTY3QDVhNmNkY2FiaMTFhYzc4NDk4NDI0MzJiaNjg0MzViaYmUyMGEzZjZkNzUzYWVjM2Q5ZTgwYWM5NTgzNmY"
        },
        {
            "appId": "101524371",
            "eventType": "HEALTH_RECORD_EVENT$UPDATE$com.huawei.health.record.sleep",
            "subscriberId": "a2613ab0-19d8-4126-b18f-7779405b5992",
            "subscriptionId": "138sfdc8-a6c1-7yt5c-9759-26e33dhh5g67",
            "goalInfo": "null",
    	"alarmThreshold": "null",
            "subscriptionMode": 0,
    	"type": "HEALTH_RECORD_EVENT",
    	"subType": "UPDATE",
            "openId": "MDFAMTAxNTI0MzcxQGQ0Y2M3N2UxZTVmNjcxNWFkMWQ5Y2JjYjlmZDZiaNTY3QDVhNmNkY2FiaMTFhYzc4NDk4NDI0MzJiaNjg0MzViaYmUyMGEzZjZkNzUzYWVjM2Q5ZTgwYWM5NTgzNmY"
        }
    ]

  2. 事件通知。

    订阅者对事件通知处理建议:

    • 建议使用签名验证。
    • 签名验证通过,返回204 No Content; 否则返回404 不支持。
    • 回调地址使用HTTPS协议。
    • 订阅者对通知事件的处理:异步到Health Service Kit云获取数据,避免耗时操作导致响应时延较高。

    HTTP请求,请参见订阅事件通知接口

    POST
    https://www.example.com/healthkit/notifications

    请求示例

    POST
    https://www.example.com/healthkit/notifications

    请求体

    POST
    https://www.example.com/healthkit/notifications
    Content-Type: application/json
    x-notification-signature: ***
    {
        "eventTime":1607514090688,
        "eventType":"ACTIVITY_RECORD_EVENT$UPDATE",
        "metaData":[
            {
                "metaKey":"startTime",
                "metaValue":"1606856007879" // 更新数据的开始时间
            },
            {
                "metaKey":"endTime",
                "metaValue":"1606916007879"  // 更新数据的结束时间
            },
            {
                "metaKey":"activityType",    // 更新数据的类型
                "metaValue":"1"
            }
        ],
        "openId":"MDFAMTAxNTI0MzcxQGQ0Y2M3N2UxZTVmNjcxNWFkMWQ5Y2JjYjlmZDZiaNTY3QDVhNmNkY2FiaMTFhYzc4NDk4NDI0MzJiaNjg0MzViaYmUyMGEzZjZkNzUzYWVjM2Q5ZTgwYWM5NTgzNmY"
    }

    响应体

    HTTP/1.1 204 No Content
    Content-type: application/json;charset=utf-8

  3. 拉取数据。

    根据推送过来的消息通知,向Health Service Kit服务端拉取数据,可以参见多日步数统计场景示例或者读取运动记录数据场景示例。

场景事件订阅

  1. 注册订阅记录。

    HTTP请求,请参见新增/更新订阅记录接口

    POST
    https://health-api.cloud.huawei.com/healthkit/v2/subscriptions

    请求示例

    POST
    https://health-api.cloud.huawei.com/healthkit/v2/subscriptions

    请求体

    POST
    https://health-api.cloud.huawei.com/healthkit/v2/subscriptions
    Content-Type: application/json
    Authorization: Bearer ***
    x-client-id: ***
    x-version: ***
    x-caller-trace-id: ***
    {
      "subscriberId": "08666998-78f6-46b9-8620-faa06cdbac2b",
      "eventTypes": [
            {
                "type": "SCENARIO_GOAL_EVENT",
                "subType": "ACHIEVE",
                "eventType": "SCENARIO_GOAL_EVENT$ACHIEVE",
                "goalInfo": {
                    "createTime": 1654660859105,
                    "startDay": 20220608,  // 目标开始计算日期,注意需晚于目标创建日期
                    "recurrence": {
                        "unit": 1,  // 周期单位:日
                        "count": 30, // 整个周期30天
                        "expectedAchievedCount": 28
                    },
                    "goals": [
                        {
                            "goalType": 1,
                            "metricGoal": {
                                "value": 10000, // 设置达标值10000步
                                "fieldName": "steps",
                                "dataType": "com.huawei.continuous.steps.total"
                            }
                        }
                    ]
                }
            }
        ]
    }

    响应体

    HTTP/1.1 200 OK
    Content-type: application/json;charset=utf-8
    [
        {
    	"appId": "101524371",
    	"eventType": "SCENARIO_GOAL_EVENT$ACHIEVE",
    	"subscriberId": "1b57117f-8a7a-4584-b90e-149039216af6",
    	"subscriptionId": "3a82f885-97bf-47f8-84d1-21e558fe6e99",
    	"openId": "MDFAMTAxNTI0MzcxQGQ0Y2M3N2UxZTVmNjcxNWFkMWQ5Y2JjYjlmZDZiaNTY3QDVhNmNkY2FiaMTFhYzc4NDk4NDI0MzJiaNjg0MzViaYmUyMGEzZjZkNzUzYWVjM2Q5ZTgwYWM5NTgzNmY",
    	"goalInfo": "{\"createTime\":1654660859105,\"goals\":[{\"goalType\":1,\"metricGoal\":{\"dataType\":\"com.huawei.continuous.steps.total\",\"fieldName\":\"steps\",\"value\":10000.0}}],\"recurrence\":{\"count\":30,\"expectedAchievedCount\":28,\"unit\":1},\"startDay\":20220608}",
    	"alarmThreshold": "null",
    	"subscriptionMode": 0,
    	"type": "SCENARIO_GOAL_EVENT",
    	"subType": "ACHIEVE"
        }
    ]

  2. 达标事件通知。

    订阅者对事件通知处理建议:

    • 建议使用签名验证。
    • 签名验证通过,返回204 No Content; 否则返回404 不支持。
    • 回调地址使用HTTPS协议。
    • 订阅者对通知事件的处理:异步到Health Service Kit云获取数据,避免耗时操作导致响应时延较高。

    HTTP请求,请参见订阅事件通知接口

    POST
    https://www.example.com/healthkit/notifications

    请求示例

    POST
    https://www.example.com/healthkit/notifications

    请求体

    POST
    https://www.example.com/healthkit/notifications
    Content-Type: application/json
    x-notification-signature: ***
    [{
    	"appId": "101524371",
    	"subscriptionId": "3a82f885-97bf-47f8-84d1-21e558fe6e99",
    	"periodIndex": 0,
    	"periodStartDay": 20220608,
    	"periodEndDay": 20220608,
    	"goalAchieve": [{
    		"goalType": 1,
    		"metricGoal": {
    			"value": 10000.0,
    			"fieldName": "steps",
    			"dataType": "com.huawei.continuous.steps.total"
    		},
    		"achievedFlag": true //已达标
    	}
        ]
    }
    响应体
    HTTP/1.1 204 No Content
    Content-type: application/json;charset=utf-8

  3. (非必要步骤)若需要查询某个场景事件订阅记录,对应的单周期内的目标达成结果值,可使用如下接口查询。

    HTTP请求,请参见查询场景事件结果。

    GET
    https://health-api.cloud.huawei.com/healthkit/v2/subscriptions/3a82f885-97bf-47f8-84d1-21e558fe6e99/achievedRecord

    请求示例

    GET
    https://health-api.cloud.huawei.com/healthkit/v2/subscriptions/3a82f885-97bf-47f8-84d1-21e558fe6e99/achievedRecord

    请求体

    无
    响应体
    HTTP/1.1 200 OK
    Content-type: application/json;charset=utf-8
    [    
        {
    	"openId": "MDFAMTAxNTI0MzcxQGQ0Y2M3N2UxZTVmNjcxNWFkMWQ5Y2JjYjlmZDZiaNTY3QDVhNmNkY2FiaMTFhYzc4NDk4NDI0MzJiaNjg0MzViaYmUyMGEzZjZkNzUzYWVjM2Q5ZTgwYWM5NTgzNmY",
    	"appId": "101524371",
    	"subscriptionId": "3a82f885-97bf-47f8-84d1-21e558fe6e99",
    	"periodIndex": 0,
    	"periodStartDay": 20220608,
    	"periodEndDay": 20220608,
    	"goalAchieve": [{
    		"goalType": 1,
    		"metricGoal": {
    			"value": 10000.0,  // 设定的目标值
    			"fieldName": "steps",
    			"dataType": "com.huawei.continuous.steps.total"
    		},
    		"achievedResult": "20023",  // 实际值
    		"achievedFlag": true // 已达标标记
    	}]
        },
        {
    	"openId": "MDFAMTAxNTI0MzcxQGQ0Y2M3N2UxZTVmNjcxNWFkMWQ5Y2JjYjlmZDZiaNTY3QDVhNmNkY2FiaMTFhYzc4NDk4NDI0MzJiaNjg0MzViaYmUyMGEzZjZkNzUzYWVjM2Q5ZTgwYWM5NTgzNmY",
    	"appId": "101524371",
    	"subscriptionId": "3a82f885-97bf-47f8-84d1-21e558fe6e99",
    	"periodIndex": 1,
    	"periodStartDay": 20220609,
    	"periodEndDay": 20220609,
    	"goalAchieve": [{
    		"goalType": 1,
    		"metricGoal": {
    			"value": 10000.0,  // 设定的目标值
    			"fieldName": "steps",
    			"dataType": "com.huawei.continuous.steps.total"
    		},
    		"achievedResult": "9800",  // 实际值
    		"achievedFlag": false // 未达标标记
    	}]
        }
    ]