Documentation
Architecture

Database Reference

For developers

Every table, column, index, foreign key and enum of the PostgreSQL schema, with the relationship diagram — generated from the Drizzle schema.

Generated from packages/db/src/schema by scripts/generate-docs.mjs — do not hand-edit. To change the schema: edit it, npm run db:generate, review the SQL, npm run db:migrate — see the Development guide.

PostgreSQL 16 · 43 tables · 26 enums · 4 migrations (packages/db/drizzle).

Relationships

Tables

auction_bids

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
auction_iduuidno→ auctions.id (on delete cascade)
bidder_iduuidno→ users.id (on delete cascade)
amount_centsintegerno
statusauction_bid_statusno"LEADING"
released_attimestamp with time zoneyes
created_attimestamp with time zonenonow()

Indexes: auction_bids_auction_idx (auction_id, created_at) · auction_bids_bidder_idx (bidder_id, created_at) · auction_bids_one_leader_idx (unique, auction_id, partial)

auctions

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
video_iduuidno→ videos.id (on delete cascade)
creator_iduuidno→ users.id (on delete cascade)
statusauction_statusno"OPEN"
rightsauction_rightsno"WATCH"
settlementauction_settlementno"CREATOR_DECIDES"
starting_price_centsintegerno
starts_attimestamp with time zoneno
ends_attimestamp with time zoneno
scheduled_ends_attimestamp with time zoneno
decision_deadlinetimestamp with time zoneyes
highest_bid_centsintegerno0
bids_countintegerno0
leading_bid_iduuidyes
leader_iduuidyes→ users.id (on delete set null)
previous_visibilityvideo_visibilityno
closed_attimestamp with time zoneyes
settled_attimestamp with time zoneyes
cancel_reasontextyes
created_attimestamp with time zonenonow()
updated_attimestamp with time zonenonow()

Indexes: auctions_one_active_per_video_idx (unique, video_id, partial) · auctions_status_ends_idx (status, ends_at) · auctions_decision_deadline_idx (decision_deadline, partial) · auctions_creator_idx (creator_id, created_at)

audience_list_members

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
list_iduuidno→ audience_lists.id (on delete cascade)
user_iduuidno→ users.id (on delete cascade)
created_attimestamp with time zonenonow()

Indexes: audience_list_members_unique_idx (unique, list_id, user_id) · audience_list_members_user_idx (user_id)

audience_lists

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
owner_iduuidno→ users.id (on delete cascade)
namevarchar(80)no
created_attimestamp with time zonenonow()
updated_attimestamp with time zonenonow()

Indexes: audience_lists_owner_name_idx (unique, owner_id, name)

auth_identities

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
user_iduuidno→ users.id (on delete cascade)
providerauth_providerno
provider_user_idvarchar(191)no
emailvarchar(255)yes
created_attimestamp with time zonenonow()
last_used_attimestamp with time zonenonow()

Indexes: auth_identities_provider_user_idx (unique, provider, provider_user_id) · auth_identities_user_idx (user_id)

auth_tokens

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
user_iduuidno→ users.id (on delete cascade)
purposeauth_token_purposeno
token_hashvarchar(64)no
expires_attimestamp with time zoneno
used_attimestamp with time zoneyes
created_attimestamp with time zonenonow()

Indexes: auth_tokens_hash_idx (unique, token_hash) · auth_tokens_user_purpose_idx (user_id, purpose)

blocked_users

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
blocker_iduuidno→ users.id (on delete cascade)
blocked_iduuidno→ users.id (on delete cascade)
reasontextyes
created_attimestamp with time zonenonow()

Indexes: blocked_users_pair_idx (unique, blocker_id, blocked_id) · blocked_users_blocker_idx (blocker_id) · blocked_users_blocked_idx (blocked_id)

challenge_applications

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
challenge_iduuidno→ challenges.id (on delete cascade)
creator_iduuidno→ users.id (on delete cascade)
notevarchar(280)yes
statuschallenge_application_statusno"PENDING"
created_attimestamp with time zonenonow()

Indexes: challenge_applications_once_idx (unique, challenge_id, creator_id)

challenge_pledges

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
challenge_iduuidno→ challenges.id (on delete cascade)
backer_iduuidno→ users.id (on delete cascade)
amount_centsintegerno
statuschallenge_pledge_statusno"HELD"
released_attimestamp with time zoneyes
created_attimestamp with time zonenonow()

Indexes: challenge_pledges_challenge_idx (challenge_id, created_at) · challenge_pledges_backer_idx (backer_id, created_at)

challenges

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
kindchallenge_kindno
statuschallenge_statusno"OPEN"
author_iduuidno→ users.id (on delete cascade)
creator_iduuidyes→ users.id (on delete cascade)
titlevarchar(120)no
descriptiontextno
deliverablechallenge_deliverableno"VIDEO"
rewardchallenge_rewardno"BACKERS"
goal_centsintegeryes
pledged_centsintegerno0
backers_countintegerno0
deadlinetimestamp with time zoneno
delivery_daysintegerno
delivery_deadlinetimestamp with time zoneyes
delivered_video_iduuidyes→ videos.id (on delete set null)
delivered_story_iduuidyes→ stories.id (on delete set null)
previous_visibilityvideo_visibilityyes
accepted_attimestamp with time zoneyes
delivered_attimestamp with time zoneyes
closed_attimestamp with time zoneyes
cancel_reasontextyes
created_attimestamp with time zonenonow()
updated_attimestamp with time zonenonow()

Indexes: challenges_status_deadline_idx (status, deadline) · challenges_delivery_deadline_idx (delivery_deadline, partial) · challenges_author_idx (author_id, created_at) · challenges_creator_idx (creator_id, created_at) · challenges_delivered_video_idx (unique, delivered_video_id, partial) · challenges_delivered_story_idx (unique, delivered_story_id, partial)

compliance_reports

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
video_iduuidyes→ videos.id (on delete set null)
story_iduuidyes→ stories.id (on delete set null)
video_titlevarchar(255)no
reasonreport_reasonno
detailstextno
reporter_emailvarchar(255)no
reporter_iduuidyes→ users.id (on delete set null)
statusreport_statusno"OPEN"
created_attimestamp with time zonenonow()
resolved_attimestamp with time zoneyes

Indexes: compliance_reports_status_idx (status, created_at)

contacts

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
requester_iduuidno→ users.id (on delete cascade)
addressee_iduuidno→ users.id (on delete cascade)
statuscontact_statusno"PENDING"
created_attimestamp with time zonenonow()
updated_attimestamp with time zonenonow()

Indexes: contacts_pair_idx (unique, requester_id, addressee_id)

content_ratings

ColumnTypeNullDefaultNotes
idvarchar(30)noprimary key
labelvarchar(50)no
descriptiontextyes
is_adultbooleannofalse
requires_blurbooleannofalse
default_tagstext[]no'{}'::text[]
min_ageintegerno0
display_orderintegerno0
icon_namevarchar(50)no"shield"
created_attimestamp with time zonenonow()

conversations

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
participant1_iduuidno→ users.id (on delete cascade)
participant2_iduuidno→ users.id (on delete cascade)
last_message_attimestamp with time zonenonow()
created_attimestamp with time zonenonow()
updated_attimestamp with time zonenonow()

Indexes: conversations_participant1_idx (participant1_id) · conversations_participant2_idx (participant2_id) · conversations_last_message_at_idx (last_message_at)

credit_topups

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
user_iduuidno→ users.id (on delete cascade)
credits_centsintegerno
price_centsintegerno
gatewaypayment_gatewayno
statuspayment_intent_statusno"PENDING"
gateway_transaction_refvarchar(255)yes
created_attimestamp with time zonenonow()
settled_attimestamp with time zoneyes

Indexes: credit_topups_user_idx (user_id, created_at)

direct_messages

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
conversation_iduuidno→ conversations.id (on delete cascade)
sender_iduuidno→ users.id (on delete cascade)
recipient_iduuidno→ users.id (on delete cascade)
contenttextno
story_iduuidyes→ stories.id (on delete set null)
is_readbooleannofalse
read_attimestamp with time zoneyes
created_attimestamp with time zonenonow()

Indexes: direct_messages_conversation_idx (conversation_id) · direct_messages_sender_idx (sender_id) · direct_messages_recipient_idx (recipient_id) · direct_messages_created_at_idx (created_at)

follows

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
follower_iduuidno→ users.id (on delete cascade)
creator_iduuidno→ users.id (on delete cascade)
statusfollow_statusno"PENDING"
created_attimestamp with time zonenonow()
decided_attimestamp with time zoneyes

Indexes: follows_pair_idx (unique, follower_id, creator_id) · follows_creator_status_idx (creator_id, status)

notifications

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
user_iduuidno→ users.id (on delete cascade)
eventvarchar(40)no
actor_iduuidyes→ users.id (on delete set null)
varsjsonbno'{}'::jsonb
pathtextno
read_attimestamp with time zoneyes
created_attimestamp with time zonenonow()

Indexes: notifications_user_created_idx (user_id, created_at) · notifications_unread_idx (user_id, partial)

payment_intents

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
gatewaypayment_gatewayno
gateway_session_idvarchar(255)yes
sender_iduuidyes→ users.id (on delete set null)
creator_iduuidno→ users.id (on delete cascade)
video_iduuidyes→ videos.id (on delete set null)
story_iduuidyes→ stories.id (on delete set null)
amount_centsintegerno
currencyvarchar(3)no"USD"
statuspayment_intent_statusno"PENDING"
gateway_transaction_refvarchar(255)yes
ledger_iduuidyes
created_attimestamp with time zonenonow()
updated_attimestamp with time zonenonow()

Indexes: payment_intents_sender_idx (sender_id) · payment_intents_status_idx (status)

payout_accounts

ColumnTypeNullDefaultNotes
user_iduuidnoprimary key · → users.id (on delete cascade)
methodvarchar(30)no
holder_namevarchar(120)no
countryvarchar(2)no
details_encryptedtextno
display_hintvarchar(80)no
created_attimestamp with time zonenonow()
updated_attimestamp with time zonenonow()

payout_requests

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
creator_iduuidno→ users.id (on delete cascade)
amount_centsintegerno
statuspayout_statusno"REQUESTED"
payout_methodvarchar(50)no
payout_destinationtextno
tx_hash_or_referencetextyes
failure_reasontextyes
reviewed_attimestamp with time zoneyes
settled_attimestamp with time zoneyes
created_attimestamp with time zonenonow()
updated_attimestamp with time zonenonow()

Indexes: payout_requests_creator_status_idx (creator_id, status)

playlist_audience_lists

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
playlist_iduuidno→ playlists.id (on delete cascade)
list_iduuidno→ audience_lists.id (on delete cascade)
created_attimestamp with time zonenonow()

Indexes: playlist_audience_lists_unique_idx (unique, playlist_id, list_id) · playlist_audience_lists_list_idx (list_id)

playlist_items

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
playlist_iduuidno→ playlists.id (on delete cascade)
video_iduuidno→ videos.id (on delete cascade)
positionintegerno0
created_attimestamp with time zonenonow()

Indexes: playlist_items_position_idx (playlist_id, position) · playlist_video_unique_idx (unique, playlist_id, video_id)

playlist_members

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
playlist_iduuidno→ playlists.id (on delete cascade)
user_iduuidno→ users.id (on delete cascade)
created_attimestamp with time zonenonow()

Indexes: playlist_members_unique_idx (unique, playlist_id, user_id) · playlist_members_user_idx (user_id)

playlists

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
creator_iduuidno→ users.id (on delete cascade)
titlevarchar(255)no
descriptiontextyes
visibilitycollection_visibilityno"PRIVATE"
created_attimestamp with time zonenonow()
updated_attimestamp with time zonenonow()

Indexes: playlists_creator_idx (creator_id)

profiles

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
user_iduuidnounique · → users.id (on delete cascade)
display_namevarchar(100)yes
biotextyes
avatar_urltextyes
banner_urltextyes
website_urltextyes
social_linksjsonbno'{}'::jsonb
notifications_offjsonbno'[]'::jsonb
in_app_offjsonbno'[]'::jsonb
email_frequencyvarchar(10)no"INSTANT"
last_activity_email_attimestamp with time zoneyes
direct_message_privacyvarchar(20)no"EVERYONE"
min_tip_amount_centsintegerno500
challenge_requests_offbooleannofalse
challenge_min_centsintegerno1000
payout_address_cryptotextyes
payout_account_ccbillvarchar(100)yes
total_viewsintegerno0
total_tips_earned_centsintegerno0
updated_attimestamp with time zonenonow()

push_devices

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
user_iduuidno→ users.id (on delete cascade)
tokenvarchar(255)no
platformvarchar(10)no
created_attimestamp with time zonenonow()
last_seen_attimestamp with time zonenonow()

Indexes: push_devices_token_idx (unique, token) · push_devices_user_idx (user_id)

stories

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
creator_iduuidno→ users.id (on delete cascade)
media_typevarchar(20)no"IMAGE"
bunny_video_idvarchar(120)yes
media_urltextyes
thumbnail_urltextyes
captionvarchar(280)yes
visibilityvideo_visibilityno"PUBLIC"
audience_list_iduuidyes→ audience_lists.id (on delete set null)
content_rating_idvarchar(30)yes→ content_ratings.id (on delete set null)
is_blurredbooleannofalse
statusvideo_statusno"READY"
duration_secondsintegerno0
views_countintegerno0
likes_countintegerno0
tips_countintegerno0
expires_attimestamp with time zoneno
removed_attimestamp with time zoneyes
created_attimestamp with time zonenonow()
updated_attimestamp with time zonenonow()

Indexes: stories_creator_idx (creator_id) · stories_expires_at_idx (expires_at) · stories_created_at_idx (created_at) · stories_bunny_video_idx (unique, bunny_video_id, partial)

story_likes

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
story_iduuidno→ stories.id (on delete cascade)
user_iduuidno→ users.id (on delete cascade)
created_attimestamp with time zonenonow()

Indexes: story_likes_unique_idx (unique, story_id, user_id)

story_views

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
story_iduuidno→ stories.id (on delete cascade)
viewer_iduuidyes→ users.id (on delete cascade)
viewer_keyvarchar(80)no
viewed_attimestamp with time zonenonow()

Indexes: story_views_story_viewer_idx (story_id, viewer_id) · story_views_once_idx (unique, story_id, viewer_key)

tips_ledger

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
entry_typeledger_entry_typeno
sender_iduuidyes→ users.id (on delete set null)
creator_iduuidno→ users.id (on delete cascade)
video_iduuidyes→ videos.id (on delete set null)
story_iduuidyes→ stories.id (on delete set null)
gross_amount_centsintegerno
platform_fee_centsintegerno0
net_amount_centsintegerno
gatewaypayment_gatewayno
gateway_transaction_refvarchar(255)no
notetextyes
created_attimestamp with time zonenonow()

Indexes: tips_ledger_creator_idx (creator_id) · tips_ledger_sender_idx (sender_id) · tips_ledger_video_idx (video_id) · tips_ledger_story_idx (story_id) · tips_ledger_created_at_idx (created_at) · tips_ledger_credit_once_idx (unique, gateway, gateway_transaction_ref, partial)

user_invitations

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
inviter_iduuidno→ users.id (on delete cascade)
emailvarchar(255)no
codevarchar(64)nounique
statusvarchar(20)no"PENDING"
expires_attimestamp with time zoneno
accepted_attimestamp with time zoneyes
created_attimestamp with time zonenonow()

Indexes: user_invitations_inviter_idx (inviter_id) · user_invitations_email_idx (email) · user_invitations_code_idx (code)

users

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
emailvarchar(255)nounique
usernamevarchar(50)nounique
password_hashtextno
roleuser_roleno"MEMBER"
is_verifiedbooleannofalse
is_age_verifiedbooleannofalse
date_of_birthdateyes
email_verified_attimestamp with time zoneyes
suspended_attimestamp with time zoneyes
suspension_reasontextyes
created_attimestamp with time zonenonow()
updated_attimestamp with time zonenonow()

video_access_grants

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
video_iduuidno→ videos.id (on delete cascade)
user_iduuidno→ users.id (on delete cascade)
granted_viavarchar(50)no"TIP_PAYMENT"
can_downloadbooleannofalse
amount_paid_centsintegerno
transaction_reftextno
created_attimestamp with time zonenonow()

Indexes: video_access_user_idx (unique, video_id, user_id)

video_audience_lists

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
video_iduuidno→ videos.id (on delete cascade)
list_iduuidno→ audience_lists.id (on delete cascade)
created_attimestamp with time zonenonow()

Indexes: video_audience_lists_unique_idx (unique, video_id, list_id) · video_audience_lists_list_idx (list_id)

video_comments

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
video_iduuidno→ videos.id (on delete cascade)
author_iduuidno→ users.id (on delete cascade)
parent_iduuidyes→ video_comments.id (on delete cascade)
bodytextno
created_attimestamp with time zonenonow()
edited_attimestamp with time zoneyes
removed_attimestamp with time zoneyes
removed_byuuidyes→ users.id (on delete set null)

Indexes: video_comments_video_created_idx (video_id, created_at) · video_comments_parent_idx (parent_id)

video_drafts

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
owner_iduuidno→ users.id (on delete cascade)
kindvarchar(10)no
bunny_video_idvarchar(120)no
statusvideo_statusno"PENDING_UPLOAD"
file_namevarchar(255)no
content_typevarchar(100)no
size_bytesbigintno
duration_secondsintegerno0
editjsonbno
detailsjsonbno'{}'::jsonb
music_reftextyes
music_namevarchar(255)yes
expires_attimestamp with time zoneno
created_attimestamp with time zonenonow()
updated_attimestamp with time zonenonow()

Indexes: video_drafts_owner_idx (owner_id, updated_at) · video_drafts_expires_at_idx (expires_at) · video_drafts_bunny_video_idx (unique, bunny_video_id)

video_likes

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
video_iduuidno→ videos.id (on delete cascade)
user_iduuidno→ users.id (on delete cascade)
created_attimestamp with time zonenonow()

Indexes: video_likes_once_idx (unique, video_id, user_id) · video_likes_user_idx (user_id)

video_shares

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
video_iduuidno→ videos.id (on delete cascade)
user_iduuidyes→ users.id (on delete set null)
channelshare_channelno"LINK"
created_attimestamp with time zonenonow()

Indexes: video_shares_video_idx (video_id)

video_viewers

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
video_iduuidno→ videos.id (on delete cascade)
user_iduuidno→ users.id (on delete cascade)
created_attimestamp with time zonenonow()

Indexes: video_viewers_unique_idx (unique, video_id, user_id) · video_viewers_user_idx (user_id)

video_views

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
video_iduuidno→ videos.id (on delete cascade)
viewer_iduuidyes→ users.id (on delete set null)
viewer_keyvarchar(80)no
viewed_ondatenonow()
created_attimestamp with time zonenonow()

Indexes: video_views_once_per_day_idx (unique, video_id, viewer_key, viewed_on) · video_views_video_day_idx (video_id, viewed_on)

videos

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
creator_iduuidno→ users.id (on delete cascade)
bunny_video_idvarchar(120)nounique
titlevarchar(255)no
descriptiontextyes
visibilityvideo_visibilityno"PUBLIC"
statusvideo_statusno"PENDING_UPLOAD"
min_tip_amount_centsintegerno0
duration_secondsintegerno0
thumbnail_urltextyes
preview_animation_urltextyes
views_countintegerno0
tips_countintegerno0
likes_countintegerno0
comments_countintegerno0
shares_countintegerno0
comments_enabledbooleannotrue
content_rating_idvarchar(30)yes→ content_ratings.id (on delete set null)
is_blurredbooleannofalse
resolutionstext[]yes
tagstext[]yes
removed_attimestamp with time zoneyes
removal_reasontextyes
created_attimestamp with time zonenonow()
updated_attimestamp with time zonenonow()

Indexes: videos_creator_idx (creator_id) · videos_visibility_idx (visibility) · videos_status_idx (status) · videos_created_at_idx (created_at)

wallet_ledger

ColumnTypeNullDefaultNotes
iduuidnogen_random_uuid()primary key
user_iduuidno→ users.id (on delete cascade)
entry_typewallet_entry_typeno
amount_centsintegerno
referencevarchar(120)no
notetextyes
created_attimestamp with time zonenonow()

Indexes: wallet_ledger_user_idx (user_id, created_at) · wallet_ledger_reference_idx (unique, reference)

Enums

EnumValues
auction_bid_statusLEADING, OUTBID, WON, RELEASED
auction_rightsWATCH, DOWNLOAD
auction_settlementCREATOR_DECIDES, HIGHEST_BID
auction_statusOPEN, AWAITING_DECISION, SOLD, DECLINED, UNSOLD, CANCELLED
auth_providerGOOGLE, FACEBOOK
auth_token_purposeVERIFY_EMAIL, RESET_PASSWORD
challenge_application_statusPENDING, CHOSEN, NOT_CHOSEN, WITHDRAWN
challenge_deliverableVIDEO, STORY
challenge_kindGOAL, REQUEST, OPEN_CALL
challenge_pledge_statusHELD, PAID, RELEASED
challenge_rewardBACKERS, EVERYONE
challenge_statusOPEN, ACCEPTED, DELIVERED, DECLINED, EXPIRED, FAILED, CANCELLED
collection_visibilityPUBLIC, APPROVED_FOLLOWERS_ONLY, CONTACTS_ONLY, INVITED_ONLY, PRIVATE
contact_statusPENDING, ACCEPTED, REJECTED, BLOCKED
follow_statusPENDING, APPROVED
ledger_entry_typeTIP_RECEIVED, PLATFORM_FEE, CREATOR_CREDIT, PAYOUT_REQUESTED, PAYOUT_COMPLETED, REFUND
payment_gatewayCCBILL, SEGPAY, CRYPTO, STRIPE, CREDITS
payment_intent_statusPENDING, SUCCEEDED, FAILED
payout_statusREQUESTED, UNDER_REVIEW, PROCESSING, SETTLED, FAILED
report_reasonNON_CONSENSUAL, UNDERAGE, DMCA_COPYRIGHT, TERMS_VIOLATION, FRAUD_SCAM
report_statusOPEN, IN_REVIEW, RESOLVED
share_channelLINK, X, WHATSAPP, TELEGRAM, EMAIL, OTHER
user_roleADMIN, CREATOR, MEMBER
video_statusPENDING_UPLOAD, PROCESSING, READY, FAILED
video_visibilityPUBLIC, CONTACTS_ONLY, APPROVED_FOLLOWERS_ONLY, TIPPED_UNLOCKED, INVITED_ONLY, AUCTION, CHALLENGE
wallet_entry_typeTOPUP, SPEND, REFUND, ADJUSTMENT, HOLD, RELEASE

Migrations

  • 0000_initial_schema.sql
  • 0001_challenges.sql
  • 0002_push_devices.sql
  • 0003_story_engagement.sql

Product overview →

On this page