diff --git a/app/controllers/api/account.php b/app/controllers/api/account.php index 6c90441afb..2f724419a1 100644 --- a/app/controllers/api/account.php +++ b/app/controllers/api/account.php @@ -540,7 +540,11 @@ App::get('/v1/account/sessions/oauth2/:provider/redirect') Authorization::setRole('user:' . $user->getId()); - $dbForProject->updateDocument('users', $user->getId(), $user); + try { + $dbForProject->updateDocument('users', $user->getId(), $user); + } catch (Duplicate $th) { + throw new Exception('Account already exists', 409, Exception::USER_ALREADY_EXISTS); + } $session = $dbForProject->createDocument('sessions', $session ->setAttribute('$read', ['user:' . $user->getId()])