can't list users as an admin

import { createAccessControl } from "better-auth/plugins/access";

export const statement = {
project: ["user", "premium", "admin"],
} as const;

export const ac = createAccessControl(statement);

export const user = ac.newRole({
project: ["user"],
});

export const premium = ac.newRole({
project: ["user", "premium"],
});

export const admin = ac.newRole({
project: ["user", "premium", "admin"],
});
import { createAccessControl } from "better-auth/plugins/access";

export const statement = {
project: ["user", "premium", "admin"],
} as const;

export const ac = createAccessControl(statement);

export const user = ac.newRole({
project: ["user"],
});

export const premium = ac.newRole({
project: ["user", "premium"],
});

export const admin = ac.newRole({
project: ["user", "premium", "admin"],
});
1 Reply
david
davidOP3mo ago
data : null error : {code: 'YOU_ARE_NOT_ALLOWED_TO_LIST_USERS', message: 'You are not allowed to list users', status: 403, statusText: 'FORBIDDEN'} [[Prototype]] : Object same on server side
stitched-error.ts:23 Uncaught APIError: You are not allowed to list users
stitched-error.ts:23 Uncaught APIError: You are not allowed to list users
const headersList = await headers();

const users = await auth.api.listUsers({
headers: headersList,
query: {
limit: 10,
offset: 0,
sortBy: "createdAt",
sortDirection: "desc",
},
});

console.log(users);
const headersList = await headers();

const users = await auth.api.listUsers({
headers: headersList,
query: {
limit: 10,
offset: 0,
sortBy: "createdAt",
sortDirection: "desc",
},
});

console.log(users);
import { createAccessControl } from "better-auth/plugins/access";
import { defaultStatements, adminAc } from "better-auth/plugins/admin/access";

export const statement = {
project: ["user", "premium", "admin"],
} as const;

export const ac = createAccessControl(statement);

export const user = ac.newRole({
project: ["user"],
...defaultStatements,
});

export const premium = ac.newRole({
project: ["user", "premium"],
...defaultStatements,
});

export const admin = ac.newRole({
project: ["user", "premium", "admin"],
...defaultStatements,
...adminAc.statements,
});
import { createAccessControl } from "better-auth/plugins/access";
import { defaultStatements, adminAc } from "better-auth/plugins/admin/access";

export const statement = {
project: ["user", "premium", "admin"],
} as const;

export const ac = createAccessControl(statement);

export const user = ac.newRole({
project: ["user"],
...defaultStatements,
});

export const premium = ac.newRole({
project: ["user", "premium"],
...defaultStatements,
});

export const admin = ac.newRole({
project: ["user", "premium", "admin"],
...defaultStatements,
...adminAc.statements,
});
is this right? seems that it works like this in listUser how can i expand with more data? cuz i added more keys to the user table

Did you find this page helpful?