Completing sign-in…

Exchanging the authorization code for tokens, then returning to the portal.