API Google Health использует надежную и стандартизированную структуру для управления доступом к пользовательским данным и обеспечения их безопасности. Ключевым компонентом этой модернизации является переход от устаревшей системы авторизации Fitbit (FOT) к Google OAuth 2.0. Этот переход позволяет разработчикам использовать стандартные библиотеки аутентификации Google, упрощая реализацию и предоставляя пользователям привычный и централизованный интерфейс для управления своими разрешениями.
Регистрация приложения
Все приложения Google Health API должны быть зарегистрированы с помощью консоли Google Cloud , которая служит центральным центром для управления всеми вашими приложениями Google.
Инструкции по регистрации вашего приложения см. в разделе «Начало работы ». Вот какие отличия вы заметите при регистрации приложений.
| Веб-API Fitbit | API Google Health | |
| Общедоступная ссылка(и) | https://dev.fitbit.com/apps | https://console.cloud.google.com |
| Добавление нового приложения | Нажмите «Зарегистрировать новое приложение» . |
|
| Основная информация | Поля для заполнения:
| Поля для заполнения:
|
| Типы приложений | Разработчику необходимо выбрать:
|
|
| Идентификатор клиента | Регистрируется при сохранении настроек приложения. | Зарегистрировано отдельно |
| Тип доступа | Доступ на чтение и запись контролируется на уровне приложения. | Доступ на чтение и запись контролируется на уровне области действия. |
| Дополнительные URL-адреса |
|
|
Реализация OAuth
Приложения Google Health API поддерживают только клиентские библиотеки Google OAuth2 . Клиентские библиотеки доступны для популярных фреймворков, что упрощает реализацию OAuth 2.0. Различия между библиотеками Google OAuth2 и библиотеками OAuth2 с открытым исходным кодом заключаются в следующем:
| Веб-API Fitbit | API Google Health | |
| Поддержка библиотеки OAuth2 | Открытый исходный код | Библиотеки клиента Google OAuth2 |
| Функциональность | Несогласованность на разных платформах | Единообразный интерфейс на всех платформах |
| URL авторизации | https://www.fitbit.com/oauth2/authorize | https://accounts.google.com/o/oauth2/v2/auth |
| URL токена | https://api.fitbit.com/oauth2/token | https://oauth2.googleapis.com/token |
| Пожизненный срок действия токена доступа | 8 часов | 1 час |
| Размер токена доступа | 1024 байта | 2048 байт |
| Токен обновления | Токены обновления генерируются при использовании потока предоставления кода авторизации. Для пользователя может быть сгенерирован только один токен обновления. Токены никогда не истекают и могут быть использованы только один раз. | Для генерации токена обновления строка авторизации должна содержать параметр запроса "access_type=offline". Для одного пользователя можно создать несколько токенов обновления. Токены обновления могут быть ограничены по времени. Они истекают, если не использовались в течение 6 месяцев, если пользователю был предоставлен доступ на основе времени или если приложение находится в режиме "Тестирование". Дополнительные сведения см. в разделе "Срок действия токена обновления ". |
| Ответ токена | JSON-ответ содержит:
| JSON-ответ содержит:
Для получения идентификатора пользователя используйте конечную точку users.getIdentity . |
Повторная аутентификация пользователя (обязательное повторное согласие)
Пользователям Fitbit необходимо повторно подтвердить согласие на вашу новую интеграцию, поскольку ваше приложение использует другую библиотеку OAuth. Передача токенов доступа и токенов обновления в API Google Health и их корректная работа невозможны.