Content Schema#
The content schema manages digital assets and their metadata.
Core Content#
contents {
id: serial PRIMARY KEY
name: varchar
type: contenttype ENUM
hash: varchar
phash: varchar
width: integer
height: integer
format: varchar
size: integer
status: contentstatus ENUM
license: varchar
licenseUrl: varchar
flags: integer
meta: json
fromUserId: integer
fromTeamId: integer
createdAt: timestamp
updatedAt: timestamp
url: varchar
}
Content Metadata#
contentAuthors {
id: serial PRIMARY KEY
name: varchar
url: varchar
contentId: integer
createdAt: timestamp
updatedAt: timestamp
}
contentSources {
id: serial PRIMARY KEY
contentId: integer
type: contentsourcetype ENUM
value: varchar UNIQUE
sourceMetadata: varchar
createdAt: timestamp
updatedAt: timestamp
}
Content Organization#
contentSets {
id: serial PRIMARY KEY
name: varchar NOT NULL
description: varchar
createdById: integer NOT NULL
createdAt: timestamp
updatedAt: timestamp
}
contentSetItems {
contentSetId: integer NOT NULL
contentId: integer NOT NULL
addedAt: timestamp
PRIMARY KEY (contentSetId, contentId)
}
Content Status Tracking#
contentEvents {
id: serial PRIMARY KEY
contentId: integer NOT NULL
status: contentstatus NOT NULL
setBy: integer NOT NULL
note: varchar
createdAt: timestamp
updatedAt: timestamp
}
contentReports {
id: serial PRIMARY KEY
contentId: integer NOT NULL
reporterId: integer NOT NULL
reason: varchar NOT NULL
description: varchar
status: reportstatus
createdAt: timestamp
updatedAt: timestamp
}