В разделе 4.2 проекта протокола OAuth 2.0 указано, что сервер авторизации может возвращать как access_token (который используется для аутентификации с ресурсом), так и refresh_token, который используется исключительно для создания нового access_token:
https://tools.ietf.org/html/rfc6749#section-4.2
Почему есть оба? Почему бы просто не сделать access_token последним до тех пор, пока refresh_token и не иметь refresh_token?