مدیریت منابع داده

Fitness REST API به شما امکان می دهد منابع داده را ایجاد، دریافت و به روز کنید. یک منبع داده نشان دهنده یک منبع منحصر به فرد از داده های حسگر است. شما از منابع داده برای درج داده های تناسب اندام در فروشگاه تناسب اندام استفاده می کنید و می توانید داده های تناسب اندام درج شده توسط یک منبع داده خاص را بازیابی کنید.

منابع داده توسط منبع Users.dataSources نشان داده می شوند.

یک منبع داده ایجاد کنید

این مثال نحوه ایجاد یک منبع داده جدید به نام "MyDataSource" را نشان می دهد که تعداد مراحل را افزایش می دهد.

روش HTTP
ارسال کنید
درخواست URL
https://www.googleapis.com/fitness/v1/users/me/dataSources
درخواست بدن
{
  "dataStreamName": "MyDataSource",
  "type": "derived",
  "application": {
    "detailsUrl": "http://example.com",
    "name": "Foo Example App",
    "version": "1"
  },
  "dataType": {
    "field": [
      {
        "name": "steps",
        "format": "integer"
      }
    ],
    "name": "com.google.step_count.delta"
  },
  "device": {
    "manufacturer": "Example Manufacturer",
    "model": "ExampleTablet",
    "type": "tablet",
    "uid": "1000001",
    "version": "1.0"
  }
}

پاسخ

اگر منبع داده با موفقیت ایجاد شود، پاسخ یک کد وضعیت 200 OK است. بدنه پاسخ حاوی یک نمایش JSON از منبع داده، از جمله ویژگی datasource.dataStreamId است که می توانید به عنوان شناسه منبع داده برای درخواست های بعدی استفاده کنید.

دستور Curl
$ curl --header "Authorization: Bearer ya29.yourtokenvalue" -X POST \
--header "Content-Type: application/json;encoding=utf-8" -d @createds.json \
"https://www.googleapis.com/fitness/v1/users/me/dataSources"

یک منبع داده خاص دریافت کنید

این مثال نشان می دهد که چگونه می توان منبع داده ("MyDataSource") را که در مثال قبلی ایجاد کردید، بازیابی کرد. هنگامی که یک منبع داده جدید ایجاد می کنید، dataStreamId شامل یک شناسه منحصر به فرد است (در این مثال ها به عنوان "1234567890" نشان داده شده است). این شماره پروژه توسعه‌دهنده شما است و برای همه درخواست‌هایی که با استفاده از آن حساب توسعه‌دهنده خاص انجام می‌شود یکسان خواهد بود. حتماً از dataStreamId از منبع داده ای که ایجاد کرده اید استفاده کنید.

روش HTTP
دریافت کنید
درخواست URL
https://www.googleapis.com/fitness/v1/users/me/dataSources/ derived:com.google.step_count.delta: 1234567890 :Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
درخواست بدن
هیچ کدام
پاسخ
اگر منبع داده وجود داشته باشد، پاسخ یک کد وضعیت 200 OK است. بدنه پاسخ حاوی یک نمایش JSON از منبع داده است.
دستور Curl
$ curl --header "Authorization: Bearer ya29.yourtokenvalue" -X GET 
--header "Content-Type: application/json;encoding=utf-8"
"https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource"

داده های جمع آوری شده را دریافت کنید

این مثال نشان می‌دهد که چگونه می‌توان از یک منبع داده خاص برای داده‌های انباشته پرس و جو کرد، در این مورد estimated_steps ، که منبع داده‌ای است که برای نمایش تعداد گام‌ها در برنامه Google Fit استفاده می‌شود. توجه داشته باشید که مهرهای زمانی در بدنه درخواست JSON بر حسب میلی ثانیه هستند.

روش HTTP
ارسال کنید
درخواست URL
https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate
درخواست بدن
{
  "aggregateBy": [{
    "dataSourceId":
      "derived:com.google.step_count.delta:com.google.android.gms:estimated_steps"
  }],
  "bucketByTime": { "durationMillis": 86400000 },
  "startTimeMillis": 1454284800000,
  "endTimeMillis": 1455062400000
}

پاسخ

اگر منبع(های) داده وجود داشته باشد، پاسخ یک کد وضعیت 200 OK است. بدنه پاسخ حاوی یک نمایش JSON از منبع داده است.

دستور Curl
$ curl --header "Authorization: Bearer ya29.yourtokenvalue" -X POST \
--header "Content-Type: application/json;encoding=utf-8" -d @aggregate.json \
"https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate"

یک منبع داده را به روز کنید

این مثال نحوه به روز رسانی نام و نسخه دستگاه را برای منبع داده نشان می دهد.

روش HTTP
قرار دادن
درخواست URL
https://www.googleapis.com/fitness/v1/users/me/dataSources/ derived:com.google.step_count.delta: 1234567890 :Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
درخواست بدن
{
  "dataStreamId": "derived:com.google.step_count.delta:1234567890:Example Manufacturer:ExampleTablet:1000001:MyDataSource",
  "dataStreamName": "MyDataSource",
  "type": "derived",
  "application": {
    "detailsUrl": "http://example.com",
    "name": "Foo Example App",
    "version": "1"
  },
  "dataType": {
    "field": [
      {
        "name": "steps",
        "format": "integer"
      }
    ],
    "name": "com.google.step_count.delta"
  },
  "device": {
    "manufacturer": "Example Manufacturer",
    "model": "ExampleTablet",
    "type": "tablet",
    "uid": "1000001",
    "version": "2.0"
  }
}

پاسخ

اگر منبع داده با موفقیت به روز شود، پاسخ یک کد وضعیت 200 OK است. بدنه پاسخ حاوی یک نمایش JSON از منبع داده است.

دستور Curl
$ curl --header "Authorization: Bearer ya29.yourtokenvalue" -X PUT \
--header "Content-Type: application/json;encoding=utf-8" -d @updateds.json \
"https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource"

یک منبع داده را حذف کنید

این مثال نحوه حذف یک منبع داده را نشان می دهد.

روش HTTP
حذف کنید
درخواست URL
https://www.googleapis.com/fitness/v1/users/me/dataSources/ derived:com.google.step_count.delta: 1234567890 :Example%20Manufacturer:ExampleTablet:1000001:MyDataSource
درخواست بدن
هیچ کدام
پاسخ
اگر منبع داده با موفقیت حذف شود، پاسخ یک کد وضعیت 200 OK است. بدنه پاسخ حاوی نمایش JSON از منبع داده است که حذف شده است.
دستور Curl
$ curl --header "Authorization: Bearer ya29.yourtokenvalue" -X DELETE \
--header "Content-Type: application/json;encoding=utf-8" \
"https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:1234567890:Example%20Manufacturer:ExampleTablet:1000001:MyDataSource"