Back

How to setSession / getSession using Server SDK on cloud functions

  • 0
  • Functions
  • Flutter
  • Cloud
anmot.
21 May, 2024, 05:43

What should be passed to setSession to set user session on the server side?

  • Tried setting session id retrieved from getSession() on the client side, but it failed with below error.
TypeScript
const client = new sdk.Client()
    .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint
    .setProject('5df5acd0d48c2') // Your project ID
    .setSession(''); // The user session to authenticate with

const account = new sdk.Account(client);

const result = await account.getSession('current');
// const result = await account.getSession('6642ddc9386a84919043'); 

{"code":401,"type":"general_unauthorized_scope","response":{"message":"User (role: guests) missing scope (account)","code":401,"type":"general_unauthorized_scope","version":"0.13.28"},"name":"Error","message":"User (role: guests) missing scope (account)"
  • Tried setting the x-appwrite-user-jwt using setJWT on the server side and it failed with
TypeScript
client
    .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint
    .setProject('5df5acd0d48c2') // Your project ID
    .setJWT('eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...') // Your secret JSON Web Token

const account = new sdk.Account(client);

const result = await account.getSession('current');

{"code":404,"type":"user_session_not_found","response":{"message":"The current user session could not be found.","code":404,"type":"user_session_not_found","version":"0.13.28"},"name":"Error","message":"The current user session could not be found."
TL;DR
Developers are trying to set user sessions using the Server SDK on cloud functions. - Passing the session ID retrieved from getSession() on the client side resulted in an authentication error due to missing scope (account). The solution is to ensure the user has the appropriate permissions. - Setting x-appwrite-user-jwt using setJWT on the server side led to a user session not found error. The solution may involve checking if the JSON Web Token is correctly set and ensuring the user session exists.
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