Was something changed recently on Cloud since updateSession is no longer working and I get 400 when calling it, with following error:
{
"message": "The chosen OAuth provider is unsupported. Please check the <a href=\"/docs/client/account?sdk=web-default#accountCreateOAuth2Session\">Create OAuth2 Session docs</a> for the complete list of supported OAuth providers.",
"code": 400,
"type": "project_provider_unsupported",
"version": "1.8.0"
}
I am getting more and more of these errors since yesterday. Calling this from mobile apps for regular email/password session (passing "current" as param), so OAuth has nothing to do with it.
Hi
Given your situation (mobile apps, email/password sessions, updateSession('current') calls), the safest and most future-proof approach is: Stop using updateSession() for email/password sessions — it’s not designed for that and appears broken in Cloud v1.8.0. Use full login flow (re-create session) when needed instead of “refreshing.” Treat session expiration as a hard limit, unless you implement your own “sliding session” mechanism server-side. Monitor Appwrite’s GitHub / changelog to see if they restore support or document a new proper way to refresh sessions.
So from all this: updateSession() is not guaranteed to work (or even intended to work) for email/password sessions. Its behavior is tightly coupled to OAuth sessions (provider-based refresh), and even then there are known reliability issues. Thus the “project_provider_unsupported” error suggests that the Cloud backend misinterprets your session as OAuth-based — and when it tries to “refresh” using OAuth logic, it fails because the “provider” for that session is not a valid (or configured/enabled) OAuth provider.
Rely on re-login or session recreation instead of refresh. When the session expires or is about to expire, prompt the user to log in again (or silently reauthenticate) to get a fresh session. This is more “manual” but matches the supported flow.
Recommended threads
- AppwriteException: Invalid document stru...
``` await tablesDB.createRow({ databaseId: '***', tableId: '***', rowId: user.$id, data }); ``` ...
- @napi-rs/canvas in Cloud Function
Has anyone tried rendering images using [@napi-rs/canvas](https://www.npmjs.com/package/@napi-rs/canvas) in Appwrite Functions? I've got a Bun runtime setup for...
- Rate limit
How do I solve "Signup Failed, Rate limit for the current endpoint has been exceeded. Please try again after some time"? I have Pro and around 2k requests per ...