social / pragma.account / AccountService / authenticateV1 /

authenticateV1 #

suspend fun authenticateV1(session: ServiceSession, request: AccountRpc.AuthenticateV1Request): AccountRpc.AuthenticateV1Response

Authenticates a user against an IdentityProvider and returns SessionTokens used for gateway authentication.

This will only authenticate the user with the social shard and therefore only return a social session token.

Warning: This endpoint bypasses the login queue and is intended for web clients only. Usage of this endpoint in a game client is strongly discouraged.

References

Plugins

  • IdentityProvider.canAuthenticate
  • IdentityProvider.validate - PragmaResultErrors returned are just thrown as PragmaExceptions
  • AccountPlugin.onAccountLogin - Called when the user successfully authenticates, including when the user is created

PragmaApplicationErrors

  • AccountRpc.NotFoundApplicationError when no account is associated with the IdentityProvider account.

PragmaResultErrors

  • PragmaError.AccountService_IdProviderMissing when authenticating with an unknown or unconfigured IdentityProvider.
  • PragmaError.AccountService_IdProviderAuthenticationDisabled when authenticating with a disabled IdentityProvider.
  • PragmaError.AccountService_Unauthorized when trying to authenticate with an unexpected session type
  • PragmaError.AccountService_Error when failing to create authentication tokens