
Hello appwrite lovers,
I am trying to implement Facebook
auth in my NextJS
app. I am using /app
directory.
Here is my action:
'use server';
import { Account, Client, OAuthProvider } from 'appwrite';
import { cookies } from 'next/headers';
export async function signinWithFacebook() {
const client = new Client()
.setEndpoint(process.env.NEXT_PUBLIC_APPWRITE_ENDPOINT!)
.setProject(process.env.NEXT_PUBLIC_APPWRITE_PROJECT!);
const account = new Account(client);
try {
account.createOAuth2Session(OAuthProvider.Facebook, '/', '/auth/signin', [
'email',
'public_profile',
]);
const session = await account.getSession('current');
cookies().set('session', session.secret, {
path: '/',
httpOnly: true,
sameSite: 'strict',
secure: true,
});
} catch (error) {
console.log(error);
}
}
And here is my login button:
<form action={signinWithFacebook}>
<Button variant='outline' type='submit'>
<Facebook className='mr-2' /> Sign in With Facebook
</Button>
</form>
But when I am clicking the button I am getting this error:
[AppwriteException: User (role: guests) missing scope (account)] {
name: 'AppwriteException',
code: 401,
type: 'general_unauthorized_scope',
response: {
message: 'User (role: guests) missing scope (account)',
code: 401,
type: 'general_unauthorized_scope',
version: '1.5.7'
}
Can anyone help me to resolve this issue. Big thanks in advance.

Have you looked at this tutorial for ssr auth in nextjs?
https://appwrite.io/docs/tutorials/nextjs-ssr-auth/step-3
Right off the bat I see youre using the client side sdk, you should be using node-appwrite on server actions.

Yes, I was able to create EmailPasswordSession
successfully following this article.
Recommended threads
- Login redirect going to http not https
Hi yall, I'm having an issue where the redirect URL is going to http, instead of https. I think this is a bug. ``` https://accounts.google.com/o/oauth2/v2/auth...
- Google OAuth
I am having trouble using the google log in in my app. Getting error: Error 400 Invalid redirect URL for OAuth success. project_invalid_success_url I have tryi...
- Failed to fetch
Hi team, can someone help me with my project? I'm not a programmer, but I'm working on a website that's experiencing a failed to fetch error. It's probably due ...
