REST API 시작하기

이 튜토리얼에서는 피트니스 REST API에 대한 액세스를 활성화하고, OAuth 액세스 토큰을 가져오고, HTTP 요청을 사용하여 API 메서드를 호출하는 방법을 보여줍니다.

피트니스 REST API를 사용하려면 RESTful 웹 서비스JSON 표현의 기본사항을 이해해야 합니다.

Google 계정 만들기

피트니스 REST API를 사용하려면 Google 계정이 필요합니다. 계정이 있는 경우 별도의 조치를 취할 필요가 없습니다. 테스트 목적으로 별도의 Google 계정을 만드는 것도 좋습니다.

OAuth 2.0 클라이언트 ID 요청

다음 단계에 따라 피트니스 API의 OAuth 2.0 클라이언트 ID를 요청하세요.

  1. Google API 콘솔로 이동합니다.
  2. 프로젝트를 선택하거나 새 프로젝트를 만드세요. 앱의 Android 및 REST 버전에 동일한 프로젝트를 사용합니다.
  3. 계속을 클릭하여 피트니스 API를 사용 설정합니다.
  4. 사용자 인증 정보로 이동을 클릭합니다.
  5. 새 사용자 인증 정보를 클릭한 후 OAuth 클라이언트 ID를 선택합니다.
  6. 애플리케이션 유형 아래에서 웹 애플리케이션을 선택합니다.
  7. 승인된 자바스크립트 원본에 요청을 보낸 사이트의 기본 URL을 입력합니다 (예: https://developers.google.com은 OAuth 플레이그라운드에서 사용하는 URL).
  8. 승인된 리디렉션 URI에서 응답을 처리할 사이트의 URL을 입력합니다 (예: https://developers.google.com/oauthplayground은 OAuth 플레이그라운드에서 사용하는 URL).
  9. 만들기를 클릭합니다. 새 OAuth 2.0 클라이언트 ID 및 보안 비밀이 프로젝트의 ID 목록에 표시됩니다. OAuth 2.0 클라이언트 ID는 다음과 같은 문자열입니다.

    780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com

OAuth 플레이그라운드에서 REST API 사용해 보기

OAuth 플레이그라운드는 클라이언트 코드를 작성하기 전에 HTTP 요청을 제출하고 응답을 관찰하여 피트니스 REST API에 익숙해지는 가장 쉬운 방법입니다.

OAuth 플레이그라운드에서 피트니스 REST API를 승인하려면 다음 안내를 따르세요.

  1. OAuth 플레이그라운드로 이동합니다.
  2. 1단계 선택 및 승인에서 피트니스 v1을 펼치고 사용할 피트니스 범위를 선택합니다.
  3. API 승인 버튼을 클릭하고 사용할 Google API 콘솔 프로젝트를 선택하고 메시지가 표시되면 허용을 클릭합니다. 선택한 Google API 콘솔 계정과 연결된 데이터에 액세스하고 수정할 수 있습니다.
  4. 토큰으로 승인 코드 교환 버튼을 클릭합니다. HTTP 요청을 제출할 때 OAuth 플레이그라운드는 Authorization: 요청 헤더에 이 헤더를 자동으로 포함합니다. 액세스 토큰은 60분 (3,600초) 후에 만료됩니다.

HTTP 요청 제출

다음 예에서는 사용 가능한 모든 데이터 소스를 나열하고 새 데이터 소스를 만드는 HTTP 요청을 보내는 방법을 보여줍니다. 피트니스 REST API의 URI 형식은 다음과 같습니다.

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

사용 가능한 모든 데이터 소스를 나열하려면 다음 안내를 따르세요.

  1. HTTP 메서드에서 GET을 선택합니다.
  2. 요청 URIhttps://www.googleapis.com/fitness/v1/users/me/dataSources을 입력합니다.
  3. 요청 보내기를 클릭합니다.

요청과 응답이 페이지 오른쪽에 표시됩니다. 요청이 성공하면 응답에 이전 예의 데이터 소스가 JSON 형식으로 표시됩니다.

데이터 소스를 만드는 방법은 다음과 같습니다.

  1. HTTP 메서드에서 POST를 선택합니다.
  2. 요청 URIhttps://www.googleapis.com/fitness/v1/users/me/dataSources을 입력합니다.
  3. 요청 본문 입력을 클릭합니다.
  4. 요청 본문 창에서 다음 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. 요청 본문 창에서 닫기를 클릭합니다.

  6. 요청 보내기를 클릭합니다.

요청과 응답이 페이지 오른쪽에 표시됩니다. 요청의 Authorization 헤더에 OAuth 액세스 토큰이 포함됩니다.

Authorization: Bearer ya29.OAuthTokenValue

요청이 성공하면 응답의 첫 번째 줄이 다음과 같습니다.

HTTP/1.1 200 OK

cURL을 사용하여 피트니스 REST API에 액세스

cURL 명령줄 도구를 사용하여 피트니스 REST API에 액세스할 수 있습니다. cURL을 사용하여 요청하려면 OAuth 액세스 토큰이 필요합니다 (앞의 안내 참조). 액세스 토큰은 1시간 후에 만료됩니다. 다음 예에서는 모든 데이터 소스를 나열하는 간단한 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에 대한 자세한 내용은 다음 페이지를 참조하세요.