開始使用 REST API

本教學課程說明如何啟用 Fitness REST API 存取權並取得 OAuth 存取權 權杖,並透過 HTTP 要求叫用 API 方法。

如要使用 Fitness REST API,請務必瞭解 符合 REST 樣式的網路服務 和 JSON 表示法。

申請 Google 帳戶

您必須擁有 Google 帳戶,才能使用 Fitness REST API。 如果您已經有帳戶,則已準備就緒。你也可能需要完成 建立測試用的個別 Google 帳戶。

要求 OAuth 2.0 用戶端 ID

請按照下列步驟申請 Fitness API 的 OAuth 2.0 用戶端 ID。

  1. 前往 Google API 控制台。
  2. 選取專案,或建立新專案。使用同一個專案存取 Android 和 REST 版本
  3. 點選「繼續」以啟用 Fitness API。
  4. 按一下「前往憑證」。
  5. 按一下「New credentials」,然後選取「OAuth Client ID」。
  6. 在「Application type」(應用程式類型) 下方,選取 [Web application] (網頁應用程式)。
  7. 在「授權的 JavaScript 來源」下方輸入網站的基準網址 要求的來源 (例如 https://developers.google.com 是 OAuth Playground 使用的網址)。
  8. 在「授權的重新導向 URI」下方,輸入回應的網站網址 將由 Google 處理 (例如 https://developers.google.com/oauthplayground 是 OAuth Playground 使用的網址)。
  9. 點選「建立」。清單中會顯示新的 OAuth 2.0 用戶端 ID 和密鑰 設定專案 IDOAuth 2.0 用戶端 ID 是由一串字元組成的字串 如下所示:

    780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com

在 OAuth Playground 中試用 REST API

要瞭解 提交 HTTP 要求並觀察回應內容, 完全不必撰寫用戶端程式碼

如何在 OAuth Playground 中授權 Fitness REST API:

  1. 前往 OAuth Playground。
  2. 在「步驟 1 選取與」授權 API、展開健身 v1,然後選取 要使用的健身範圍
  3. 按一下「Authorize APIs」(授權 API) 按鈕,選取要授予的 Google API 控制台專案 ,並在系統提示時按一下「允許」。你將可存取 修改與所選 Google API 控制台帳戶相關聯的資料。
  4. 請按一下「Exchange License code for token」按鈕。OAuth Playground 會自動在 Authorization: 中加入此標頭 要求標頭。請注意,存取權杖時 的有效期限為 60 分鐘 (3600 秒)。

提交 HTTP 要求

以下範例說明如何傳送 HTTP 要求,以列出所有清單 以及建立新的資料來源適合健身 REST 的 API,則 URI 格式為:

https://www.googleapis.com/fitness/v1/resourcePath?parameters

如要列出所有可用資料來源:

  1. 在「HTTP Method」中,選取「GET」。
  2. 在「Request URI」中,輸入 https://www.googleapis.com/fitness/v1/users/me/dataSources。
  3. 按一下「傳送要求」。

要求和回應會顯示在頁面右側。如果 要求成功後,回應會顯示上一個 使用 JSON 格式的範例

如何建立資料來源:

  1. 在「HTTP Method」中選取「POST」。
  2. 在「Request URI」中,輸入 https://www.googleapis.com/fitness/v1/users/me/dataSources。
  3. 按一下「輸入要求主體」。
  4. 在「Request Body」視窗中,複製並貼上下列 JSON:

    {
      "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"
      }
    }
    
    
  5. 在「Request Body」視窗中,按一下「Close」。

  6. 按一下「傳送要求」。

要求和回應會顯示在頁面右側。要求 OAuth 存取權杖包含在 Authorization 標頭中:

Authorization: Bearer ya29.OAuthTokenValue

如果要求成功,回應的第一行為:

HTTP/1.1 200 OK

使用 cURL 存取 Fit REST API

您可以使用 cURL 指令列工具存取 Fit REST API。您必須具備 OAuth 存取權杖才能提出要求 使用 cURL (請參閱上方的操作說明)。 請注意,存取權杖會在一小時後失效。以下範例顯示 簡單的 bash 指令碼,列出所有資料來源。

#!/bin/bash
ACCESS_TOKEN=""
curl \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  https://www.googleapis.com/fitness/v1/users/me/dataSources

後續步驟

如要進一步瞭解 REST API,請參閱下列頁面: