У меня уже есть кнопки авторизации через Одноклассники и Mail.ru. Как мне перейти на единый сервис авторизации и смигрировать все связки с действующими аккаунтами на новый сервис авторизации?

Если ранее ваш сервис авторизовывал пользователей через OAuth OK или Mail с применением запросов back-2-back, необходимо мигрировать действующие аккаунты на единый сервис авторизации — после этого вы сможете получать информацию об идентификаторе пользователя внешнего OAuth-сервиса.

Миграция представляет собой сопоставление аккаунтов пользователя OK или Mail.ru с аккаунтом VK ID (новым или существующим), который будет использоваться при новом способе входа через ОК и Mail.ru, и создание связки между этими аккаунтами. Этот процесс не моментальный и производится постепенно для каждой отдельной учетной записи пользователя при его авторизации в ваш сервис.

Чтобы мигрировать учетную запись пользователя:

  1. Реализуйте процесс авторизации пользователя и получите Access token.

  2. Вызовите метод API userLinking.b2bGet (https://api.vk.com/method/userLinking.b2bGet) , используя в запросе сервисный токен приложения Service token и полученный пользовательский токен доступа user_access_token.

  3. Получите в ответе в параметре links идентификатор пользователя во внешнем OAuth-сервисе по этому Access token. Массив UserLinks содержит следующие атрибуты:

    a. user_id — идентификатор пользователя VK ID, для которого выдан токен;

    b. service_user_uuid — идентификатор пользователя во внешнем OAuth-сервисе;

    c. service_name — информация о внешнем OAuth-cервисе, через который пользователь выполнил вход. Принимает значения mail_ru или ok_ru

    Если для данного Access token отсутствует информация по внешнему пользователю, в ответе придет пустой список.

  4. На основании полученных идентификационных данных пользователя выполните доработки своего сервиса и сопоставьте аккаунт пользователя OK или Mail.ru с аккаунтом VK ID.

Подробнее читайте в документации сервиса авторизации.