User DB schema

file table

Column
Type
Description
Example value
file_id
TEXT
Primary key of file table. Contains a UUID.
88a505d6-8f8c-47d6-9b89-765d27d2ba25
hash
TEXT
Contains the xxHash of the file to uniquely identify it.
ef46db3751d8e999
extension
TEXT
Contains the file extension, including the period
.jpg
file_class
TEXT
IMG = Image
VID = Video
OTH = Other
IMG
time_taken
TIMESTAMP
The time a media item was taken, e.g. a photo or video. For images, this is typically extracted from EXIF data.
2024-08-31 13:44:04.1578341+10:00
size_bytes
INT
The size of the file, in bytes
245623
is_deleted
INT
A flag indicating if the file has been soft deleted.
0 = not deleted
1 = deleted
Added in v2
0
deleted_time
DATETIME
The date and time of soft deletion of a file
Added in v2
2024-08-31 20:28:06

multipart_file_upload table

Introduced in v4.

Field Type Description Example Value
upload_id TEXT UUID representing this multipart upload 459af47d-0c4b-47ca-b38e-9adc262bd4b7
filename TEXT Filename of the file being uploaded image.jpg
size_in_bytes INT Size of the file in bytes 10000
xxhash TEXT xxHash of the entire file feec3d47524e15aa
total_parts INT Total number of parts, including those not yet uploaded 5
parts_received INT Number of parts successfully received 4
time_started DATETIME The date and time of the first request. Can be used to identify which partial uploads to delete. 2024-08-31 20:28:06
status TEXT IN PROGRESS
DONE
IN PROGRESS

multipart_file_upload_part

Introduced in v4.

Column Type Description Example value
part_id TEXT UUID identifying this part 63482e23-d1e1-4d5a-a0ed-ab094e6580f3
upload_id TEXT UUID for the upload to which this part belongs, in the multipart_file_upload table 459af47d-0c4b-47ca-b38e-9adc262bd4b7
sequence INT Sequence of this part among other parts. Starts at 1. 2
xxhash TEXT xxHash of this part, after base64 decoding feec3d47524e15aa
size_in_bytes INT Size of this part in bytes 1024
time_uploaded DATETIME The date and time that this part was uploaded. 2024-08-31 20:28:06