generator client { provider = "prisma-client-js" output = "../generated/prisma" } datasource db { provider = "postgresql" url = env("DATABASE_URL") } model User { id String @id @default(cuid()) email String @unique name String? emailVerified Boolean? image String? createdAt DateTime @default(now()) updatedAt DateTime @updatedAt role String? @default("user") accounts Account[] sessions Session[] apiKeys ApiKey[] @@map("user") } model Session { id String @id @default(cuid()) userId String expiresAt DateTime token String @unique createdAt DateTime @default(now()) updatedAt DateTime @updatedAt ipAddress String? userAgent String? user User @relation(fields: [userId], references: [id], onDelete: Cascade) @@index([userId]) @@map("session") } model Account { id String @id @default(cuid()) userId String accountId String providerId String accessToken String? refreshToken String? expiresAt DateTime? password String? createdAt DateTime @default(now()) updatedAt DateTime @updatedAt idToken String? accessTokenExpiresAt DateTime? refreshTokenExpiresAt DateTime? scope String? user User @relation(fields: [userId], references: [id], onDelete: Cascade) @@index([userId]) @@map("account") } model Verification { id String @id @default(cuid()) identifier String value String expiresAt DateTime createdAt DateTime @default(now()) updatedAt DateTime @updatedAt @@index([identifier]) @@map("verification") } model ApiKey { id String @id @default(cuid()) name String key String @unique userId String isActive Boolean @default(true) expiresAt DateTime? createdAt DateTime @default(now()) updatedAt DateTime @updatedAt user User @relation(fields: [userId], references: [id], onDelete: Cascade) @@index([userId]) @@map("api_key") }