Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.yupvid.com/llms.txt

Use this file to discover all available pages before exploring further.

This page documents the primary domain entities. For schema definitions, see the migration files in the Core API repo.

Core entities

User

Represents an authenticated person. One user can belong to multiple organizations.
FieldTypeDescription
idUUIDPrimary key
emailstringUnique, used for login
created_attimestampAccount creation time
last_login_attimestampLast successful auth

Organization

A company or team account. The primary billing and access control boundary.
FieldTypeDescription
idUUIDPrimary key
namestringDisplay name
planenumfree, pro, enterprise
owner_idFK → UserBilling owner

Membership

Junction table linking users to organizations with a role.
FieldTypeDescription
user_idFK → User
org_idFK → Organization
roleenumowner, admin, member
joined_attimestamp

Relationships

A user can be a member of many organizations. An organization can have many members. The Membership table holds the role for each pair.

Data storage

Data typeStorageNotes
Relational dataPostgresPrimary store, via Core API
SessionsRedisTTL-based, auto-expire
File uploadsS3-compatible object storeReferenced by URL in Postgres
Search index[Search service]Synced from Postgres via worker

Sensitive fields

The following fields are encrypted at rest and must never appear in logs:
  • User.password_hash
  • Payment method tokens (stored in your payment processor, referenced by ID only)
  • Any field containing PII in audit logs
If you’re adding a new field that contains PII or credentials, flag it in your PR for security review.
Last modified on May 4, 2026