// Database schema, one company = one org, linked to users and CSV config generator client { provider = "prisma-client-js" } datasource db { provider = "sqlite" url = "file:./dev.db" } model Company { id String @id @default(uuid()) name String csvUrl String // where to fetch CSV csvUsername String? // for basic auth csvPassword String? sentimentAlert Float? // e.g. alert threshold for negative chats dashboardOpts String? // JSON blob for per-company dashboard preferences users User[] sessions Session[] createdAt DateTime @default(now()) updatedAt DateTime @updatedAt } model User { id String @id @default(uuid()) email String @unique password String // hashed, use bcrypt company Company @relation(fields: [companyId], references: [id]) companyId String role String // 'admin' | 'user' | 'auditor' resetToken String? resetTokenExpiry DateTime? } model Session { id String @id company Company @relation(fields: [companyId], references: [id]) companyId String startTime DateTime endTime DateTime ipAddress String? country String? language String? messagesSent Int? sentiment Float? escalated Boolean? forwardedHr Boolean? fullTranscriptUrl String? avgResponseTime Float? tokens Int? tokensEur Float? category String? initialMsg String? createdAt DateTime @default(now()) }