Google Health API에 대한 액세스 권한은 Google Cloud를 통해 제공됩니다. API를 사용 설정하고 Google 계정을 승인하려면 Google Cloud 프로젝트가 필요합니다.
기존 Fitbit API 개발자이든 Google Health API를 처음 사용하는 개발자이든 API를 호출하려면 이 단계를 완료해야 합니다.
프로젝트 및 OAuth 클라이언트 만들기
API 사용 설정 및 OAuth 2.0 클라이언트 ID 가져오기 버튼을 사용하여 Google Health API 를 사용 설정하고 OAuth 2.0 클라이언트 ID를 가져옵니다.
- Google Health API에 사용하려는 기존 Google Cloud 프로젝트가 있는 경우 먼저 해당 프로젝트의 관리자 계정에 로그인해야 합니다. 그런 다음 버튼을 클릭한 후 사용 가능한 프로젝트 목록에서 기존 프로젝트를 선택합니다. 그렇지 않으면 새 프로젝트를 만듭니다.
- '호출 위치'를 묻는 메시지가 표시되면 웹 서버 를 선택합니다.
- 승인된 리디렉션 URI 의 값으로 https://www.google.com 을 입력합니다. OAuth 2.0을 사용하여 승인 코드를 가져오려면 리디렉션 URI가 필요합니다.
- 설정이 완료되면 OAuth 2.0 클라이언트 ID 및 클라이언트 보안 비밀번호 값을 복사하고 사용자 인증 정보 JSON을 로컬 머신에 다운로드 합니다.
Google Cloud 프로젝트를 수동으로 설정하거나 설정을 확인하고 사용자 인증 정보를 다시 가져오려면 다음 단계를 따르세요.
Google 콘솔을 사용하여 OAuth 2.0을 설정하는 방법에 관한 자세한 내용은 OAuth 2.0을 사용하여 Google API에 액세스를 참고하세요.
테스트 사용자 추가
기본적으로 새로 생성된 OAuth 클라이언트는 테스트 및 프로덕션 목적으로 사용자 수가 100명으로 제한된 미확인 상태입니다. 이 기간 동안 승인을 사용 설정하려면 각 사용자의 이메일 주소를 프로젝트 구성의 테스트 사용자 목록에 수동으로 추가해야 합니다.
잠재고객 페이지에서 테스트 사용자 목록을 업데이트합니다.
- 이 페이지에서 "게시 상태"가 테스트로 설정되고 "사용자 유형"이 외부로 설정된 것을 확인할 수 있습니다.
- '테스트 사용자' 섹션에서 + 사용자 추가를 클릭합니다. 앱에 의료 데이터에 액세스할 수 있는 권한을 부여할 수 있도록 허용해야 하는 테스트 사용자의 이메일 주소를 입력합니다.
- 저장 을 클릭합니다.
Google Health API로 100명 이상의 사용자를 지원하려면 서드 파티 보안 검토를 완료해야 합니다. 자세한 내용은 OAuth 앱 인증 고객센터를 참고하세요.
범위 추가
데이터 액세스 페이지에서 클라이언트가 호출할 수 있는 범위를 지정해야 합니다.
- 이 페이지에서 범위 추가 또는 삭제 를 클릭합니다.
- API 열에서 'Google Health API'를 검색합니다. 애플리케이션에 필요한 범위를 선택합니다.
- 필요한 범위를 모두 선택한 후 업데이트 를 클릭하여 데이터 액세스 페이지로 돌아갑니다.
- 저장 을 클릭합니다.
클라이언트 ID 설정을 완료했으며 이제 Google Health API를 호출할 수 있습니다.
OAuth2 클라이언트 라이브러리
일반적인 프레임워크와 통합하는 데 사용되는 사용 가능한 OAuth2 클라이언트 라이브러리 목록은 OAuth 2.0을 사용하여 Google API에 액세스를 참고하세요.
갱신 토큰
지속적인 사용자 재인증 없이 Google API에 장기적으로 액세스하려면 애플리케이션에서 갱신 토큰을 사용해야 합니다. 필요한 특정 HTTP 요청 및 매개변수를 비롯한 포괄적인 구현 세부정보는 Google ID 플랫폼 문서를 참고하세요.
갱신 토큰을 액세스 토큰으로 교환하려면 Google OAuth 2.0 토큰 엔드포인트에 HTTPS POST 호출을 실행합니다. 다음 스니펫은 요청 및 응답의 예를 보여줍니다.
요청
curl -L -X POST 'https://oauth2.googleapis.com/token' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'client_id=client-id&client_secret=client-secret&refresh_token=refresh-token&grant_type=refresh_token'
응답
{
"access_token": "access-token",
"expires_in": 3599,
"scope": "scope-list",
"token_type": "Bearer",
"refresh_token": "refresh-token",
"refresh_token_expires_in": 112154
}테스트 중 토큰 동작
Google Cloud 프로젝트의 게시 상태에 따라 갱신 토큰이 어떻게 동작하는지 알아두세요.
- 테스트 모드: OAuth 동의 화면이 '테스트' 게시 상태로 구성된 경우 발급된 갱신 토큰은 시간 기반이며 7일 후에 만료됩니다. 이 기간 동안 만료일에 도달할 때까지 유효하고 새 액세스 토큰을 가져오는 데 사용할 수 있는 단일 갱신 토큰을 받게 됩니다.
- 게시된 모드: 앱이 '프로덕션 중' 상태로 이동되면 갱신 토큰은 일반적으로 취소되거나 장기간 (일반적으로 6개월) 사용되지 않는 한 만료되지 않습니다.
원활한 사용자 환경을 위해 프로덕션 환경으로 이동하기 전에 애플리케이션을 게시하여 7일 토큰 만료를 방지하세요.