diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 0db669b45d98..12fdc0689132 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -736,4 +736,18 @@ class UserController extends BaseController return $this->itemResponse($user->fresh()); } + + public function disconnectOauth(DisconnectUserMailerRequest $request, User $user) + { + $user->oauth_user_id = null; + $user->oauth_provider_id = null; + $user->oauth_user_token_expiry = null; + $user->oauth_user_token = null; + $user->oauth_user_refresh_token = null; + $user->save(); + + return $this->itemResponse($user->fresh()); + + } + } diff --git a/routes/api.php b/routes/api.php index efc891eaaafb..93a127673d6d 100644 --- a/routes/api.php +++ b/routes/api.php @@ -332,6 +332,7 @@ Route::group(['middleware' => ['throttle:api', 'api_db', 'token_auth', 'locale'] Route::post('users/bulk', [UserController::class, 'bulk'])->name('users.bulk')->middleware('password_protected'); Route::post('/users/{user}/invite', [UserController::class, 'invite'])->middleware('password_protected'); Route::post('/users/{user}/disconnect_mailer', [UserController::class, 'disconnectOauthMailer']); + Route::post('/users/{user}/disconnect_oauth', [UserController::class, 'disconnectOauth']); Route::post('/user/{user}/reconfirm', [UserController::class, 'reconfirm']); Route::resource('webhooks', WebhookController::class);