User Timeouts
User timeouts temporarily prevent a user from accessing your application without banning them or changing their membership.
Applying a Timeout
- Open Users and select the user.
- Click Timeout.
- Enter a duration, such as
30m,2h, or1d 6h. - Optionally add a reason, then click Timeout user.
Durations can range from 1 minute to 365 days. Applying a timeout immediately ends all of the user’s active sessions. The user cannot log in again until the timeout expires or you clear it.
To end a timeout early, open the user and click Clear timeout. The user must log in again because their previous sessions remain ended.
Handling Timeouts in C++
The C++ SDK throws TimedOutError when a timed-out user tries to connect. Catch it before AuthorizationError, since TimedOutError is a more specific authorization error.
try {
client.login(std::move(auth));
} catch (const authgate::TimedOutError& e) {
std::cerr << "Access paused until " << e.get_timed_out_until();
if (!e.get_reason().empty()) {
std::cerr << ": " << e.get_reason();
}
} catch (const authgate::AuthorizationError& e) {
std::cerr << "Access denied";
}get_timed_out_until() returns the expiry time in ISO 8601 format. get_reason() is empty when no reason was provided.
Timeouts do not pause or extend membership time. They also do not ban the user’s account, IP addresses, or devices.