Skip to content
Back

Sessions are not extended/refreshed

  • 0
  • Self Hosted
  • React Native
Siv
8 Oct, 2025, 08:46

Appwrite version: 1.6.0 Client version (16.0.2)

Hi, we are having some issues with sessions currently. We would like active users to stay logged in but they are currently getting logged out which is problematic for these users.

I'm currently testing with a session length of 2 minutes. When the user opens the app we extend their session by doing this:

TypeScript
    try {
      const account = new Account(client);
      await account.updateSession('current');
    } catch (error) {
      const err = error as { code?: number };
      if (err.code === 401) {
        handleSessionError(err.code);
      }
    }

This works and I can see within the Appwrite console that the expire time is extended. I've also debugged this by doing:

TypeScript
 const session = await account.getSession('current');

and then logging the session.

Still the session gets invalidated based on the original expire time. So the time of which the session was created. When the original expire time is reached I get an error when doing:

TypeScript
      const client = getClient(apiEndpoint, projectId);
      const account = new Account(client);
      try {
        await account.get();
      } catch (e) {
        console.log('baseQuery error getting account', e);
      }

In the logs I then see:

TypeScript
 LOG  baseQuery error getting account [AppwriteException: User (role: guests) missing scope (account)]

The session is created from a secret from our custom backend server.

TypeScript
await account.createSession(configUser.userId, configUser.authSecret);

Note: I've made sure that the client is only created once in memory, it's then reused so we are not creating a new client multiple times.

Any help/insights would be greatly appreciated!

TL;DR
Active users are getting logged out despite efforts to extend their sessions. The sessions appear to be extending successfully, but users are still getting logged out based on the original expiry time. This issue is likely due to how the sessions are being handled. Check the session creation process from the custom backend server and ensure that the client is only created once in memory.
Reply

Reply to this thread by joining our Discord

Reply on Discord

Need support?

Join our Discord

Get community support by joining our Discord server.

Join Discord

Get premium support

Join Appwrite Pro and get email support from our team.

Learn more