Database Schema

Supabase PostgreSQL — 21 tables in the public schema

At a Glance

21
Tables
8
RLS Policies
13
Server-Only Tables
150+
Columns

All 21 Tables

#TablePurposeAccess
1user_profileUser accounts, devices, referral codesOpen
2subscriptionsBilling plans (free/premium)Own rows
3subscription_eventsSubscription audit logServer
4coursesMaster course catalogAuth read
5course_purchasesCourse purchases per userOwn rows
6custom_coursesAI-generated coursesServer
7custom_course_purchasesCustom course purchasesOwn rows
8master_manifestsJSON content (shop, ads, etc.)Server
9manifest_cohortsManifest-to-cohort linksServer
10ai_usageAI credit balancesOwn rows
11ai_credit_purchasesAI credit receiptsOwn rows
12analyticsCourse usage settingsServer
13audio_usagePlay count trackingServer
14app_logsClient logs and reportsOpen
15server_logsEdge function logsServer
16cohortsUser group definitionsServer
17user_cohortsUser group assignmentsServer
18discount_codesPromo/discount codesServer
19user_discountsUser discount assignmentsServer
20referral_creditsReferral reward creditsServer
21cached_handshake_responsesCached sync responsesServer

Entity Relationships

auth.users ├── user_profile (1:1) ├── subscriptions (1:1) │ └── subscription_events (1:N) ├── course_purchases (1:N) ── courses (N:1) ├── custom_courses (1:N) │ └── custom_course_purchases (1:N) ├── ai_usage (1:1) ├── ai_credit_purchases (1:N) ├── analytics (1:N) ── courses (N:1) ├── audio_usage (1:N) ├── app_logs (1:N) ├── user_cohorts (1:1) ── cohorts (N:1) ├── user_discounts (1:N) ── discount_codes (N:1) ├── referral_credits (1:N) └── cached_handshake_responses (1:1) master_manifests ├── courses (N:1) └── manifest_cohorts (1:N) ── cohorts (N:1)

Table Groups

User & Auth (3)
user_profile, subscriptions, subscription_events
Courses (4)
courses, course_purchases, custom_courses, custom_course_purchases
Content Delivery (3)
master_manifests, manifest_cohorts, cached_handshake_responses
AI Features (2)
ai_usage, ai_credit_purchases
Analytics & Logging (4)
analytics, audio_usage, app_logs, server_logs
Cohorts & Discounts (5)
cohorts, user_cohorts, discount_codes, user_discounts, referral_credits

Security Model

Access LevelTablesCount
Open (anon + auth)user_profile, app_logs2
All authenticatedcourses1
Own rows onlysubscriptions, course_purchases, custom_course_purchases, ai_usage, ai_credit_purchases5
Server onlyAll remaining 13 tables13
Detailed table docs: View all 21 table docs
Back to Projects