Skip to content
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
-- CreateTable
CREATE TABLE "Audit" (
"id" TEXT NOT NULL,
"timestamp" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"action" TEXT NOT NULL,
"actorId" TEXT NOT NULL,
"actorType" TEXT NOT NULL,
"targetId" TEXT NOT NULL,
"targetType" TEXT NOT NULL,
"sourcebotVersion" TEXT NOT NULL,
"metadata" JSONB,
"orgId" INTEGER NOT NULL,

CONSTRAINT "Audit_pkey" PRIMARY KEY ("id")
);

-- CreateIndex
CREATE INDEX "Audit_actorId_actorType_targetId_targetType_orgId_idx" ON "Audit"("actorId", "actorType", "targetId", "targetType", "orgId");

-- AddForeignKey
ALTER TABLE "Audit" ADD CONSTRAINT "Audit_orgId_fkey" FOREIGN KEY ("orgId") REFERENCES "Org"("id") ON DELETE CASCADE ON UPDATE CASCADE;
20 changes: 20 additions & 0 deletions packages/db/prisma/schema.prisma
Original file line number Diff line number Diff line change
Expand Up @@ -172,6 +172,8 @@ model Org {
/// List of pending invites to this organization
invites Invite[]

audits Audit[]

accountRequests AccountRequest[]

searchContexts SearchContext[]
Expand Down Expand Up @@ -227,6 +229,24 @@ model ApiKey {

}

model Audit {
id String @id @default(cuid())
timestamp DateTime @default(now())

action String
actorId String
actorType String
targetId String
targetType String
sourcebotVersion String
metadata Json?

org Org @relation(fields: [orgId], references: [id], onDelete: Cascade)
orgId Int

@@index([actorId, actorType, targetId, targetType, orgId])
}

// @see : https://authjs.dev/concepts/database-models#user
model User {
id String @id @default(cuid())
Expand Down
Loading