The provider sends the browser back
No session: the address the OAuth app names (<the console's origin>/v1/auth/oauth/<provider>/callback), which the provider sends the browser to with the code and the state, or an error. Every answer is the console's page (303): signed in (a session's cookie) and on to the sign-in's next, or the user's settings of a link (#/me?linked=<provider>); or told why not, in the fragment: #/sign-in?oauth_error=<code>&message=<words> (#/me?… of a link). The codes: oauth_state_invalid (no flow of this browser has the state: forged, another browser's, back already, or older than ten minutes), oauth_denied (the provider says the user did not let the console in), oauth_code_refused (the provider did not take the code: used, or not with this sign-in's verifier), oauth_token_invalid (Google's ID token: not signed by one of its keys, for another client, from another issuer, expired, or with another nonce), oauth_provider_unavailable, provider_address_unverified (the provider's address is not verified there: GitHub's primary address, Google's email_verified), provider_link_needed (a user has the address, and the provider is not where its mail is: control/README.md, 用 GitHub、Google 登录), provider_linked_elsewhere, provider_already_linked, invalid_session (the session that asked for a link has ended), user_locked, rate_limited. A provider's user that is linked signs in as its user; one that is not is linked by the address only where the provider is the address's mail host (Google for Gmail and its Workspace domain), or makes a user of the address, with no password. The query's parameters are the provider's, and some it adds (Google's scope, authuser, prompt, hd): none is refused.
https://api.glac.ai/v1/auth/oauth/{provider}/callbackمعاملات المسار
معاملات الاستعلام
Returns
303
The console's page: signed in, or told why not.