Skip to content

Postgres

Auto-generated documentation from TypeORM entities.

Entities are located in ../packages/backend-common/src/entities.

AccessGroupEntity (access_group)

Defined in: auth/access-group.entity.ts

Columns

ColumnTypeConstraintsDescription
namestringNot Null
membershipsGroupMembershipEntity[]OneToMany
project_accessesProjectAccessEntity[]OneToMany
mission_accessesMissionAccessEntity[]OneToMany
typeenumNot Null
creatorUserEntityFK, Nullable
hiddenbooleanNot NullA hidden access group is not returned in any search queries. Hidden access groups may still be accessed by referenced by UUID (e.g., when listing groups with access to a project).

AccountEntity (account)

Defined in: auth/account.entity.ts

Columns

ColumnTypeConstraintsDescription
providerenumNot Null
userUserEntityNullable
oauthIDstringNot Null

ActionEntity (action)

Defined in: action/action.entity.ts

Columns

ColumnTypeConstraintsDescription
stateenumNot Null
containerContainerNullable
creatorUserEntityFK, Nullable
state_causestringNullable
executionStartedAtDateNullable
executionEndedAtDateNullable
actionContainerStartedAtDateNullable
actionContainerExitedAtDateNullable
missionMissionEntityFK, Nullable
logsContainerLog[]Nullable
auditLogsunknown[]Nullable
exit_codenumberNullable
artifact_pathstringNullable
artifactsenumNot Null
artifact_sizenumberNullable
artifact_filesstring[]Nullable
keyApiKeyEntityNullable
templateActionTemplateEntityFK, Nullable
imageImageNullable
workerWorkerEntityFK, Nullable

ActionTemplateEntity (action_template)

Defined in: action/action-template.entity.ts

Columns

ColumnTypeConstraintsDescription
image_namestringNot Null
namestringNot Null
descriptionstringNot Null
creatorUserEntityFK, Not Null
commandstringNullable
actionsActionEntity[]OneToMany
versionnumberNot Null
isArchivedbooleanNot Null
cpuCoresnumberNot Null
cpuMemorynumberNot Null
gpuMemorynumberNot Null
maxRuntimenumberNot Null
entrypointstringNullable
accessRightsenumNot Null

ApiKeyEntity (apikey)

Defined in: auth/api-key.entity.ts

Columns

ColumnTypeConstraintsDescription
apikeystringNot Null
key_typeenumNot Null
missionMissionEntityFK, Not Null
actionActionEntityNullable
userUserEntityFK, Nullable
rightsenumNot Null

BaseEntity (BaseEntity)

Defined in: base-entity.entity.ts

Columns

ColumnTypeConstraintsDescription
uuiduuid (PK)Not NullUnique UUID for the entity
createdAttimestampNot NullTimestamp of when the entity was created
updatedAttimestampNot NullTimestamp of when the entity was last updated
deletedAtDateNullableTimestamp of when the entity was deleted. This field is used to soft-delete entities.

CategoryEntity (category)

Defined in: category/category.entity.ts

Columns

ColumnTypeConstraintsDescription
namestringNot Null
projectProjectEntityFK, Nullable
filesFileEntity[]ManyToMany
creatorUserEntityFK, Nullable

FileEntity (file_entity)

Defined in: file/file.entity.ts

Columns

ColumnTypeConstraintsDescription
missionMissionEntityFK, Nullable
dateDateNot Null
topicsTopicEntity[]OneToMany
filenamestringNot Null
sizebigintNullable
creatorUserEntityFK, NullableThe user who uploaded the file.
typeenumNot Null
stateenumNot Null
hashstringNullable
categoriesCategoryEntity[]ManyToMany
parentFileEntityFK, NullableThe parent file this file was derived from. e.g., If this is a .mcap converted from a .bag, the .bag is the parent.
derivedFilesFileEntity[]OneToManyFiles derived from this file.
originenumNullable

FileEventEntity (file_event)

Defined in: file/file-event.entity.ts

Indices

Index Definition
Column mission: @Index()

Columns

ColumnTypeConstraintsDescription
uuidstringNot Null
createdAttimestampNot Null
typeenumNot Null
detailsjsonbNot NullJSON payload for specific details. e.g. { oldName: "foo.bag", newName: "bar.bag" } or
filenameSnapshotstringNot NullSnapshot of the filename at the time of the event. Useful if the FileEntity is deleted later.
actorUserEntityFK, Nullable
fileFileEntityFK, NullableRelation to the file. CHANGED: onDelete set to CASCADE to delete this event if the file is deleted.
missionMissionEntityFK, NullableRelation to Mission. Useful for filtering logs by mission even if the file is gone.
actionActionEntityFK, Nullable

GroupMembershipEntity (group_membership)

Defined in: auth/group-membership.entity.ts

Columns

ColumnTypeConstraintsDescription
accessGroupAccessGroupEntityFK, Nullable
userUserEntityFK, Nullable
expirationDateDateNullableThe expiration date of the group membership. If the expiration data is set, the user will be treated as if they were not part of the group after the expiration date. If the expiration date is not set, the user will be treated as part of the group indefinitely.
canEditGroupbooleanNot NullIf the user is a group admin, they can manage the group. Group admins can add and remove users from the group.

IngestionJobEntity (ingestion_job)

Defined in: file/ingestion-job.entity.ts

Columns

ColumnTypeConstraintsDescription
identifierstringNot NullThe unique identifier of the file. This is the Google Drive ID for files imported from Google Drive or the UUID for file entities created in the system for files uploaded.
displayNamestringNot NullThe name of the file as displayed to the user in the queue list
stateenumNot Null
missionMissionEntityFK, Nullable
locationenumNot Null
processingDurationnumberNullable
errorMessagestringNullableError message if the ingestion failed.
creatorUserEntityFK, Nullable
fileFileEntityFK, NullableLink to the actual FileEntity once created. This allows us to easily join Queue -> File. CHANGED: onDelete set to CASCADE to delete this job if the file is deleted.

MetadataEntity (tag)

Defined in: metadata/metadata.entity.ts

Columns

ColumnTypeConstraintsDescription
value_stringstringNullable
value_numbernumberNullable
value_booleanbooleanNullable
value_dateDateNullable
value_locationstringNullable
missionMissionEntityFK, Nullable
tagTypeTagTypeEntityFK, Nullable
creatorUserEntityFK, Nullable

MissionAccessEntity (mission_access)

Defined in: auth/mission-access.entity.ts

Columns

ColumnTypeConstraintsDescription
rightsenumNot Null
accessGroupAccessGroupEntityFK, Nullable
missionMissionEntityFK, Nullable

MissionEntity (mission)

Defined in: mission/mission.entity.ts

Columns

ColumnTypeConstraintsDescription
namestringNot Null
projectProjectEntityFK, Nullable
filesFileEntity[]OneToMany
actionsActionEntity[]OneToMany
ingestionJobsIngestionJobEntity[]OneToMany
creatorUserEntityFK, Nullable
api_keysApiKeyEntity[]OneToMany
mission_accessesMissionAccessEntity[]OneToMany
tagsMetadataEntity[]OneToMany

ProjectAccessEntity (project_access)

Defined in: auth/project-access.entity.ts

Columns

ColumnTypeConstraintsDescription
rightsenumNot Null
accessGroupAccessGroupEntityFK, Nullable
projectProjectEntityFK, Nullable

ProjectEntity (project)

Defined in: project/project.entity.ts

Columns

ColumnTypeConstraintsDescription
namestringNot NullThe name of the project. This is the name that will be displayed in the UI. The name must be globally unique.
missionsMissionEntity[]OneToMany
project_accessesProjectAccessEntity[]OneToMany
descriptionstringNot Null
creatorUserEntityFK, Nullable
requiredTagsTagTypeEntity[]ManyToMany
categoriesCategoryEntity[]OneToMany
autoConvertbooleanNullable

TagTypeEntity (tag_type)

Defined in: tagType/tag-type.entity.ts

Columns

ColumnTypeConstraintsDescription
namestringNot Null
descriptionstringNullable
datatypeenumNot Null
projectProjectEntity[]ManyToMany
tagsMetadataEntity[]OneToMany

TopicEntity (topic)

Defined in: topic/topic.entity.ts

Columns

ColumnTypeConstraintsDescription
namestringNot Null
typestringNot Null
nrMessagesbigintNullable
messageEncodingstringNot Null
frequencynumberNot Null
fileFileEntityFK, Nullable

UserEntity (user)

Defined in: user/user.entity.ts

Columns

ColumnTypeConstraintsDescription
namestringNot NullThe name of the user. This is the name that will be displayed in the UI. The name gets automatically extracted from the oauth provider. @example 'John Doe'
emailstringNullableThe email of the user. This is the email that will be displayed in the UI. The email gets automatically extracted from the oauth provider. @example 'john.doe@example.com' The email is unique and cannot be changed.
roleenumNullableThe role of the user. The role determines what the user can do in the application. @example 'USER' @see UserRole
hiddenbooleanNullableA hidden user is not returned in any search queries. Hidden users may still be accessed by their UUID (e.g., when listing group memberships).
avatarUrlstringNullableThe avatar url of the user. This is the url of the avatar that will be displayed in the UI. The avatar url gets automatically extracted from the oauth provider. @example 'https://example.com/avatar.jpg'
accountAccountEntityNullable
membershipsGroupMembershipEntity[]OneToMany
projectsProjectEntity[]OneToMany
missionsMissionEntity[]OneToMany
filesFileEntity[]OneToMany
queuesIngestionJobEntity[]OneToMany
submittedActionsActionEntity[]OneToMany
templatesActionTemplateEntity[]OneToMany
tagsMetadataEntity[]OneToMany
api_keysApiKeyEntity[]OneToMany
categoriesCategoryEntity[]OneToMany

WorkerEntity (worker)

Defined in: worker/worker.entity.ts

Columns

ColumnTypeConstraintsDescription
identifierstringNot Null
hostnamestringNot Null
cpuMemorynumberNot Null
gpuModelstringNullable
gpuMemorynumberNot Null
cpuCoresnumberNot Null
cpuModelstringNot Null
storagenumberNot Null
lastSeenDateNot Null
reachablebooleanNot Null
actionsActionEntity[]OneToMany

Released under the MIT License.