auth.prisma 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. model User {
  2. id String @id @default(dbgenerated("gen_random_uuid()"))
  3. name String
  4. email String
  5. emailVerified Boolean @default(false)
  6. image String?
  7. createdAt DateTime @default(now())
  8. updatedAt DateTime @default(now()) @updatedAt
  9. role String?
  10. banned Boolean? @default(false)
  11. banReason String?
  12. banExpires DateTime?
  13. username String
  14. sessions Session[]
  15. accounts Account[]
  16. @@unique([email])
  17. @@map("user")
  18. }
  19. model Session {
  20. id String @id @default(dbgenerated("gen_random_uuid()"))
  21. expiresAt DateTime
  22. token String
  23. createdAt DateTime @default(now())
  24. updatedAt DateTime @updatedAt
  25. ipAddress String?
  26. userAgent String?
  27. userId String
  28. user User @relation(fields: [userId], references: [id], onDelete: Cascade)
  29. impersonatedBy String?
  30. @@unique([token])
  31. @@map("session")
  32. }
  33. model Account {
  34. id String @id @default(dbgenerated("gen_random_uuid()"))
  35. accountId String
  36. providerId String
  37. userId String
  38. user User @relation(fields: [userId], references: [id], onDelete: Cascade)
  39. accessToken String?
  40. refreshToken String?
  41. idToken String?
  42. accessTokenExpiresAt DateTime?
  43. refreshTokenExpiresAt DateTime?
  44. scope String?
  45. password String?
  46. createdAt DateTime @default(now())
  47. updatedAt DateTime @updatedAt
  48. @@map("account")
  49. }
  50. model Verification {
  51. id String @id @default(dbgenerated("gen_random_uuid()"))
  52. identifier String
  53. value String
  54. expiresAt DateTime
  55. createdAt DateTime @default(now())
  56. updatedAt DateTime @default(now()) @updatedAt
  57. @@map("verification")
  58. }