API переносимости данных позволяет создавать приложения, которые запрашивают у пользователя разрешение на перемещение копии данных из сервисов Google в ваше приложение. Это обеспечивает переносимость данных и облегчает переключение услуг.
Если вы ищете информацию о том, как пользователи передают данные, см. раздел Как поделиться копией своих данных с третьим лицом .
Предварительные условия
Прежде чем выпускать ваше приложение, оно должно быть одобрено Google.
Вам также следует убедиться, что API переносимости данных доступен пользователям в вашем регионе. Список поддерживаемых стран и регионов см. в разделе « Общие вопросы» на странице «Отправка копии своих данных третьему лицу».
Рабочий процесс разработчика
Ниже приведены шаги, которые необходимо выполнить для создания приложения, использующего API переносимости данных.
Реализуйте поток согласия OAuth для пользователя. В этом примере пользователь предоставляет доступ к видеоданным YouTube.
Пользователь нажимает «Импортировать видео с YouTube» и входит в свою учетную запись Google.
Приложение перенаправляет пользователя на URL-адрес согласия OAuth. Обратите внимание, что этот пример URL-адреса упрощен и в нем отсутствуют некоторые параметры:
https://accounts.google.com/o/oauth2/v2/auth?scope=https://www.googleapis.com/auth/dataportability.myactivity.youtube
Пользователь нажимает «Далее» на экране согласия OAuth, соглашается поделиться своими данными и предоставляет доступ к учетной записи.
Пользователь перенаправляется в приложение.
Разработчик получает токен OAuth для пользователя.
Ваше приложение вызывает
InitiatePortabilityArchive(resources = ["myactivity.youtube"])
с прикрепленным токеном OAuth, который содержит эту область OAuth:https://www.googleapis.com/auth/dataportability.myactivity.youtube
Этот вызов запускает процесс создания архива данных. Вы должны запустить архив переносимости в течение 24 часов после авторизации пользователя.
Ваше приложение вызывает
GetPortabilityArchiveState(job_id)
с прикрепленным токеном OAuth, который содержит эту область OAuth:https://www.googleapis.com/auth/dataportability.myactivity.youtube
Вы можете вызвать этот метод несколько раз, чтобы получить статус задания архивирования. Метод возвращает состояние задания. Если состояние ЗАВЕРШЕНО, архив готов и предоставлены подписанные URL-адреса облачного хранилища. Обратите внимание, что время, необходимое для выполнения запроса на архивирование, может варьироваться от минут до часов в зависимости от размера данных.
Загрузите архив данных, используя подписанные URL-адреса.
Вызовите
ResetAuthorization()
с прикрепленным токеном OAuth, чтобы сбросить исчерпанные ресурсы и удалить все разрешения OAuth.
Дополнительные сведения об использовании методов API переносимости данных см. в разделе Вызов методов API переносимости данных .
Как пользователи взаимодействуют с приложением API переносимости данных
На этой диаграмме показано, как пользователи взаимодействуют с приложением, интегрированным с API переносимости данных.
Во-первых, пользователю предоставляется возможность получить свои данные.
Затем пользователь входит в свою учетную запись Google.
Затем пользователь нажимает «Далее» , когда ему предлагается поделиться своими данными, и нажимает «Понятно», когда ему предлагается принять политику конфиденциальности.
Затем пользователю отображается экран согласия OAuth, который позволяет приложению получить доступ к его данным. Параметры здесь соответствуют настроенным вами областям OAuth.
После разрешения доступа начнется импорт данных. В зависимости от размера данных выполнение запроса может занять от нескольких минут до нескольких часов.