diff --git a/app/config/errors.php b/app/config/errors.php index c999ddba5..47bb6d834 100644 --- a/app/config/errors.php +++ b/app/config/errors.php @@ -136,6 +136,11 @@ return [ 'description' => 'The current project has exceeded the maximum number of users. Please check your user limit in the Appwrite console.', 'code' => 501, ], + Exception::USER_CONSOLE_COUNT_EXCEEDED => [ + 'name' => Exception::USER_CONSOLE_COUNT_EXCEEDED, + 'description' => 'Sign up to the console is restricted. You can contact an administrator to update console sign up restrictions by setting _APP_CONSOLE_WHITELIST_ROOT to "disabled".', + 'code' => 501, + ], Exception::USER_JWT_INVALID => [ 'name' => Exception::USER_JWT_INVALID, 'description' => 'The JWT token is invalid. Please check the value of the X-Appwrite-JWT header to ensure the correct token is being used.', diff --git a/app/controllers/api/account.php b/app/controllers/api/account.php index ee7dc076d..4d9dd364f 100644 --- a/app/controllers/api/account.php +++ b/app/controllers/api/account.php @@ -215,6 +215,9 @@ App::post('/v1/account') $total = $dbForProject->count('users', max: APP_LIMIT_USERS); if ($total >= $limit) { + if ('console' === $project->getId()) { + throw new Exception(Exception::USER_CONSOLE_COUNT_EXCEEDED); + } throw new Exception(Exception::USER_COUNT_EXCEEDED); } } diff --git a/src/Appwrite/Extend/Exception.php b/src/Appwrite/Extend/Exception.php index 7d56f5a38..1c5692cd9 100644 --- a/src/Appwrite/Extend/Exception.php +++ b/src/Appwrite/Extend/Exception.php @@ -63,6 +63,7 @@ class Exception extends \Exception /** Users */ public const USER_COUNT_EXCEEDED = 'user_count_exceeded'; + public const USER_CONSOLE_COUNT_EXCEEDED = 'user_console_count_exceeded'; public const USER_JWT_INVALID = 'user_jwt_invalid'; public const USER_ALREADY_EXISTS = 'user_already_exists'; public const USER_BLOCKED = 'user_blocked';