Skip to content

Website, Funnels & Public Surface

Synced from docs/generated/erd/ — do not hand-edit.
Regenerate with bun run docs:erd (needs staging reader), then this script runs automatically.
Labels: docs/db/erd-table-labels.yml · Runbook: docs/runbooks/erd-schema-docs.md

Website builder config/pages, funnels, blog, public lead capture, member
benefits (hot_deals, job_postings), exchange visibility layer. Catalog §3.5–3.7, §5.1.

Org site config and pages

Name Columns Comment Type
blog_posts 21 BASE TABLE
website_config 26 BASE TABLE
website_pages 18 BASE TABLE

Landing pages and conversion capture

Name Columns Comment Type
contact_submissions 22 BASE TABLE
form_analytics 11 BASE TABLE
form_starts 7 BASE TABLE
form_views 7 BASE TABLE
funnel_assets 11 BASE TABLE
funnel_conversions 17 BASE TABLE
funnel_form_submissions 11 BASE TABLE
funnel_page_variants 11 BASE TABLE
funnel_pages 16 BASE TABLE
funnel_templates 9 BASE TABLE
funnels 20 BASE TABLE

Deals and job board

Name Columns Comment Type
hot_deals 32 BASE TABLE
job_postings 29 BASE TABLE

Cross-org content visibility

Name Columns Comment Type
exchange_distribution_targets 5 BASE TABLE
exchange_engagement 6 BASE TABLE
exchange_items 8 BASE TABLE
exchange_propagation_rules 7 BASE TABLE
exchange_publications 8 BASE TABLE
exchange_submissions 9 BASE TABLE
exchange_visibility 5 BASE TABLE
Name Columns Comment Type
organizations 35 BASE TABLE
erDiagram

"public.blog_posts" }o--|| "public.organizations" : "FOREIGN KEY (org_id) REFERENCES organizations(id)"
"public.contact_submissions" }o--|| "public.organizations" : "FOREIGN KEY (org_id) REFERENCES organizations(id)"
"public.exchange_distribution_targets" }o--|| "public.exchange_items" : "FOREIGN KEY (exchange_item_id) REFERENCES exchange_items(id) ON DELETE CASCADE"
"public.exchange_engagement" }o--|| "public.exchange_items" : "FOREIGN KEY (exchange_item_id) REFERENCES exchange_items(id) ON DELETE CASCADE"
"public.exchange_propagation_rules" |o--|| "public.exchange_items" : "FOREIGN KEY (exchange_item_id) REFERENCES exchange_items(id) ON DELETE CASCADE"
"public.exchange_publications" |o--|| "public.exchange_items" : "FOREIGN KEY (exchange_item_id) REFERENCES exchange_items(id) ON DELETE CASCADE"
"public.exchange_submissions" }o--|| "public.exchange_items" : "FOREIGN KEY (exchange_item_id) REFERENCES exchange_items(id) ON DELETE CASCADE"
"public.exchange_visibility" |o--|| "public.exchange_items" : "FOREIGN KEY (exchange_item_id) REFERENCES exchange_items(id) ON DELETE CASCADE"
"public.form_starts" }o--|| "public.organizations" : "FOREIGN KEY (org_id) REFERENCES organizations(id)"
"public.form_views" }o--|| "public.organizations" : "FOREIGN KEY (org_id) REFERENCES organizations(id)"
"public.funnel_conversions" }o--o| "public.funnel_page_variants" : "FOREIGN KEY (variant_id) REFERENCES funnel_page_variants(id) ON DELETE SET NULL"
"public.funnel_conversions" }o--o| "public.funnel_pages" : "FOREIGN KEY (page_id) REFERENCES funnel_pages(id) ON DELETE SET NULL"
"public.funnel_conversions" }o--|| "public.funnels" : "FOREIGN KEY (funnel_id) REFERENCES funnels(id) ON DELETE CASCADE"
"public.funnel_form_submissions" }o--|| "public.funnel_pages" : "FOREIGN KEY (page_id) REFERENCES funnel_pages(id) ON DELETE CASCADE"
"public.funnel_form_submissions" }o--|| "public.funnels" : "FOREIGN KEY (funnel_id) REFERENCES funnels(id) ON DELETE CASCADE"
"public.funnel_page_variants" }o--|| "public.funnel_pages" : "FOREIGN KEY (page_id) REFERENCES funnel_pages(id) ON DELETE CASCADE"
"public.funnel_pages" }o--|| "public.funnels" : "FOREIGN KEY (funnel_id) REFERENCES funnels(id) ON DELETE CASCADE"
"public.hot_deals" }o--|| "public.organizations" : "FOREIGN KEY (org_id) REFERENCES organizations(id)"
"public.job_postings" }o--|| "public.organizations" : "FOREIGN KEY (org_id) REFERENCES organizations(id)"
"public.website_config" |o--|| "public.organizations" : "FOREIGN KEY (org_id) REFERENCES organizations(id)"

"public.blog_posts" {
  text org_id ""
}
"public.contact_submissions" {
  text org_id ""
}
"public.exchange_distribution_targets" {
  uuid exchange_item_id ""
}
"public.exchange_engagement" {
  uuid exchange_item_id ""
}
"public.exchange_items" {
  uuid id ""
}
"public.exchange_propagation_rules" {
  uuid exchange_item_id ""
}
"public.exchange_publications" {
  uuid exchange_item_id ""
}
"public.exchange_submissions" {
  uuid exchange_item_id ""
}
"public.exchange_visibility" {
  uuid exchange_item_id ""
}
"public.form_analytics" {
}
"public.form_starts" {
  text org_id ""
}
"public.form_views" {
  text org_id ""
}
"public.funnel_assets" {
}
"public.funnel_conversions" {
  uuid funnel_id ""
  uuid page_id ""
  uuid variant_id ""
}
"public.funnel_form_submissions" {
  uuid funnel_id ""
  uuid page_id ""
}
"public.funnel_page_variants" {
  uuid id ""
  uuid page_id ""
}
"public.funnel_pages" {
  uuid funnel_id ""
  uuid id ""
}
"public.funnel_templates" {
}
"public.funnels" {
  uuid id ""
}
"public.hot_deals" {
  text org_id ""
}
"public.job_postings" {
  text org_id ""
}
"public.organizations" {
  text id ""
}
"public.website_config" {
  text org_id ""
}
"public.website_pages" {
}

Generated by tbls