Accessing additional values from session data

Hello, I've tried to access additional fields on my user object, but it seems both serverAuth.api.getSession({ headers }) and clientAuth.useSession() doesn't return the additional fields.
Is there a way to accessing both snowflakes and cover_image from session?

Here are my code
Server Config
import { betterAuth } from "better-auth";
import { APIError } from "better-auth/api";
import { drizzleAdapter } from "better-auth/adapters/drizzle";
import { db } from "~/server/db";
import { admin, createAuthMiddleware, username } from "better-auth/plugins";
import { ac, roles } from "~/server/auth/permissions";
import { nextCookies } from "better-auth/next-js";

export const auth = betterAuth({
    user: {
        additionalFields: {
            snowflakes: {
                fieldName: "snowflakes",
                type: "number",
                returned: true,
            },
            cover_image: {
                fieldName: "cover_image",
                type: "string",
                returned: true,
            },
        },
    },
});


Client Config
import {
    adminClient,
    inferAdditionalFields,
    usernameClient,
} from "better-auth/client/plugins";
import { createAuthClient } from "better-auth/react";
import { type auth } from "~/server/auth";
import { ac, roles } from "~/server/auth/permissions";

export const authClient = createAuthClient({
    plugins: [
        inferAdditionalFields<typeof auth>(),
        adminClient({
            ac,
            roles,
        }),
        usernameClient(),
    ],
});


Return Value
{
  "user": {
    "name": "xxx",
    "email": "xxx",
    "emailVerified": true,
    "image": null,
    "createdAt": "2025-09-14T06:55:17.000Z",
    "updatedAt": "2025-09-14T06:55:17.000Z",
    "role": "xxx",
    "banned": null,
    "banReason": null,
    "banExpires": null,
    "username": "xxx",
    "displayUsername": "xxx",
    "id": "FDu3GLOgJ5sjSTgNUZ2Gm8fQFWijO2Fx"
  }
}
Was this page helpful?