Data model
Read from the database itself, so it cannot disagree with what is stored. Grouped by bounded context, in the order the transaction runs.
Tables
60
Columns
845
Enumerations
79
Contexts
9
Identity and access
Who may see what, and every failed attempt to get in.
- iduuidpk
- identifiertextrequired
- address_hashtext
- created_attimestamprequired
- iduuidpk
- keyenumrequired
- labeltextrequired
- descriptiontext
- ranktext
- user_iduuidpk→ users
- role_iduuidpk→ roles
- granted_attimestamprequired
- granted_byuuid→ users
- iduuidpk
- nametextrequired
- emailtextrequired
- password_hashtextrequired
- avatar_urltext
- titletext
- is_activeboolrequired
- last_login_attimestamp
- created_attimestamprequired
- updated_attimestamprequired
Buyers and people
The universe of acquirers, the people inside them, and how warm each route is.
- iduuidpk
- buyer_iduuid→ buyers
- contact_iduuid→ contacts
- event_typeenumrequired
- headlinetextrequired
- event_datetimestamp
- summarytext
- why_it_matterstext
- seller_relevancetext
- impactenumrequired
- urgencyenumrequired
- materialityenumrequired
- classificationtext
- confidenceenumrequired
- recommended_actiontext
- research_delta_iduuid
- acknowledged_byuuid→ users
- acknowledged_attimestamp
- created_attimestamprequired
- iduuidpk
- buyer_iduuid→ buyersrequired
- objectiontextrequired
- severityenumrequired
- response_strategytext
- addressed_by_initiative_iduuid
- statustextrequired
- created_attimestamprequired
- updated_attimestamprequired
- iduuidpk
- buyer_iduuid→ buyersrequired
- from_stage_iduuid→ pipeline_stages
- to_stage_iduuid→ pipeline_stagesrequired
- moved_byuuid→ users
- moved_attimestamprequired
- days_in_previous_stageint
- reasontext
- iduuidpk
- buyer_iduuid→ buyersrequired
- dimensionenumrequired
- old_valuetext
- new_valuetext
- reasontext
- evidence_summarytext
- approval_iduuid
- changed_byuuid→ users
- changed_attimestamprequired
- iduuidpk
- buyer_iduuid→ buyersrequired
- strategic_fitintrequired
- acquisition_appetiteintrequired
- financial_capacityintrequired
- strategic_synergyintrequired
- engagementintrequired
- transaction_probabilityintrequired
- channel_conflictintrequired
- weighted_scorenumericrequired
- weights_usedjson
- is_currentboolrequired
- effective_attimestamprequired
- iduuidpk
- buyer_iduuid→ buyersrequired
- thesis_typeenumrequired
- contenttextrequired
- confidenceenumrequired
- statusenumrequired
- last_generated_attimestamp
- approved_byuuid→ users
- approved_attimestamp
- created_attimestamprequired
- updated_attimestamprequired
- iduuidpk
- organization_iduuid→ organizationsrequired
- priority_tierenumrequired
- buyer_typeenumrequired
- public_privateenumrequired
- ownership_summarytext
- pe_sponsor_org_iduuid→ organizations
- current_pipeline_stage_iduuid→ pipeline_stages
- stage_entered_attimestamp
- relationship_owner_user_iduuid→ users
- potential_valuenumeric
- expected_structuretext
- strategic_rationaletext
- why_they_would_buytext
- build_vs_buy_thesistext
- revenue_synergytext
- cost_synergytext
- data_synergytext
- distribution_synergytext
- technology_synergytext
- integration_opportunitiestext
- competitive_threatstext
- channel_conflict_notestext
- likely_objectionstext
- diligence_concernstext
- recommended_approachtext
- internal_champion_contact_iduuid
- executive_sponsor_contact_iduuid
- corp_dev_contact_iduuid
- decision_maker_contact_iduuid
- banker_relationshiptext
- board_relationshiptext
- customer_overlaptext
- last_interaction_attimestamp
- last_research_attimestamp
- next_actiontext
- next_action_attimestamp
- monitoring_cadenceenumrequired
- is_watchedboolrequired
- statusenumrequired
- visibilityenumrequired
- created_attimestamprequired
- updated_attimestamprequired
- iduuidpk
- organization_iduuid→ organizations
- first_nametextrequired
- last_nametextrequired
- titletext
- role_categoryenumrequired
- emailtext
- phonetext
- linkedin_urltext
- locationtext
- verification_sourcetext
- source_statusenumrequired
- discovery_rankenum
- influence_typeenumrequired
- relationship_strengthenumrequired
- authority_levelenumrequired
- internal_owner_user_iduuid→ users
- introduction_sourcetext
- mutual_connectionstext
- preferred_channelenum
- engagement_scoreintrequired
- response_sentimentenumrequired
- nda_statusenumrequired
- last_contact_attimestamp
- next_contact_attimestamp
- last_research_attimestamp
- monitoring_cadenceenumrequired
- is_watchedboolrequired
- notestext
- created_attimestamprequired
- updated_attimestamprequired
- iduuidpk
- nametextrequired
- domaintext
- websitetext
- logo_urltext
- typeenumrequired
- parent_organization_iduuid
- ownership_typeenumrequired
- headquarterstext
- ticker_symboltext
- market_cap_usdnumeric
- revenue_usdnumeric
- employee_countint
- financials_verifiedboolrequired
- financials_source_notetext
- relevant_business_unitstext
- relevant_portfolio_companiestext
- notestext
- created_attimestamprequired
- updated_attimestamprequired
- iduuidpk
- keytextrequired
- nametextrequired
- positionintrequired
- is_terminalboolrequired
- terminal_resulttext
- stall_threshold_daysintrequired
- descriptiontext
Engagement
Meetings, outreach and every logged conversation. Nothing here sends anything.
- iduuidpk
- buyer_iduuid→ buyers
- contact_iduuid→ contacts
- channelenumrequired
- directionenumrequired
- outreach_typeenum
- occurred_attimestamprequired
- purposetext
- subjecttext
- bodytext
- responsetext
- sentimentenumrequired
- next_actiontext
- next_action_attimestamp
- owner_user_iduuid→ users
- visibilityenumrequired
- created_attimestamprequired
- meeting_iduuid→ meetingsrequired
- contact_iduuid→ contacts
- user_iduuid→ users
- external_nametext
- external_titletext
- iduuidpk
- iduuidpk
- buyer_iduuid→ buyers
- titletextrequired
- scheduled_attimestamprequired
- duration_minutesint
- location_or_linktext
- objectivetext
- prep_summarytext
- buyer_backgroundtext
- contact_backgroundtext
- latest_research_delta_iduuid
- acquisition_thesistext
- likely_objectionstext
- questions_to_asktext
- non_disclosure_notestext
- target_next_steptext
- held_attimestamp
- notestext
- sentimentenumrequired
- strategic_interesttext
- concernstext
- questions_raisedtext
- information_requestedtext
- next_actiontext
- proposed_probability_changeint
- proposed_score_changejson
- internal_actiontext
- visibilityenumrequired
- created_attimestamprequired
- updated_attimestamprequired
- iduuidpk
- nametextrequired
- waveenumrequired
- objectivetext
- statusenumrequired
- starts_attimestamp
- created_attimestamprequired
- iduuidpk
- campaign_iduuid→ outreach_campaigns
- buyer_iduuid→ buyers
- contact_iduuid→ contacts
- outreach_typeenumrequired
- channelenumrequired
- subjecttext
- draft_bodytextrequired
- draft_contextjson
- generated_by_aiboolrequired
- approvedboolrequired
- approved_byuuid→ users
- approved_attimestamp
- sent_attimestamp
- sent_byuuid→ users
- communication_iduuid→ communications
- created_attimestamprequired
Value creation
Internal work, exit readiness and the metrics that decide what the company is worth.
- iduuidpk
- keytextrequired
- labeltextrequired
- weightintrequired
- positionintrequired
- descriptiontext
- iduuidpk
- category_iduuid→ exit_readiness_categoriesrequired
- titletextrequired
- descriptiontext
- owner_user_iduuid→ users
- statusenumrequired
- scoreintrequired
- weightintrequired
- due_attimestamp
- evidence_document_iduuid→ documents
- linked_initiative_iduuid→ internal_initiatives
- linked_task_iduuid→ tasks
- risk_levelenumrequired
- last_assessed_attimestamp
- notestext
- visibilityenumrequired
- created_attimestamprequired
- updated_attimestamprequired
- iduuidpk
- metric_keytextrequired
- period_starttimestamprequired
- period_endtimestamprequired
- valuenumeric
- unitenumrequired
- sourcetext
- verifiedboolrequired
- notestext
- recorded_byuuid→ users
- created_attimestamprequired
- iduuidpk
- initiative_iduuid→ internal_initiativesrequired
- buyer_iduuid→ buyersrequired
- impact_typeenumrequired
- impact_scoreintrequired
- rationaletext
- proof_statementtext
- proposed_by_aiboolrequired
- approvedboolrequired
- approved_byuuid→ users
- approved_attimestamp
- created_attimestamprequired
- iduuidpk
- initiative_iduuid→ internal_initiativesrequired
- metric_typetextrequired
- baseline_valuenumeric
- target_valuenumeric
- current_valuenumeric
- unitenumrequired
- verifiedboolrequired
- recorded_attimestamprequired
- iduuidpk
- titletextrequired
- categoryenumrequired
- descriptiontext
- owner_user_iduuid→ users
- strategic_rationaletextrequired
- buyer_relevancetext
- expected_valuation_impactnumeric
- expected_revenue_impactnumeric
- expected_ebitda_impactnumeric
- expected_completion_attimestamp
- completed_attimestamp
- statusenumrequired
- priorityenumrequired
- difficultyintrequired
- exit_value_impact_scoreintrequired
- dependenciestext
- riskstext
- evidence_requiredtext
- completion_criteriatext
- buyer_proof_statusenumrequired
- buyer_proof_notestext
- evidence_document_iduuid→ documents
- origin_approval_iduuid
- created_attimestamprequired
- updated_attimestamprequired
- iduuidpk
- metric_keytextrequired
- period_starttimestamprequired
- period_endtimestamprequired
- valuenumeric
- unitenumrequired
- sourcetext
- verifiedboolrequired
- linked_initiative_iduuid→ internal_initiatives
- notestext
- created_attimestamprequired
- iduuidpk
- titletextrequired
- descriptiontext
- owner_user_iduuid→ users
- priorityenumrequired
- statusenumrequired
- due_attimestamp
- completed_attimestamp
- dependency_task_iduuid
- entity_typeenum
- entity_iduuid
- buyer_iduuid→ buyers
- buyer_impacttext
- exit_value_impacttext
- is_critical_pathboolrequired
- escalationtext
- source_typeenum
- source_iduuid
- created_byuuid→ users
- created_attimestamprequired
- updated_attimestamprequired
- iduuidpk
- scenario_iduuid→ valuation_scenariosrequired
- assumption_keytextrequired
- labeltextrequired
- valuenumeric
- unitenumrequired
- impact_directionenumrequired
- notestext
- positionintrequired
- iduuidpk
- nametextrequired
- scenario_typeenumrequired
- descriptiontext
- implied_valuenumeric
- implied_arr_multiplenumeric
- implied_ebitda_multiplenumeric
- probabilityintrequired
- weighted_valuenumeric
- is_activeboolrequired
- notestext
- created_byuuid→ users
- created_attimestamprequired
- updated_attimestamprequired
Transaction
Documents, the data room, diligence, offers and the timeline to close.
- iduuidpk
- section_iduuid→ data_room_sectionsrequired
- titletextrequired
- document_iduuid→ documents
- requiredboolrequired
- statusenumrequired
- owner_user_iduuid→ users
- last_audited_attimestamp
- risk_levelenumrequired
- notestext
- created_attimestamprequired
- updated_attimestamprequired
- iduuidpk
- keytextrequired
- nametextrequired
- positionintrequired
- owner_user_iduuid→ users
- descriptiontext
- iduuidpk
- nametextrequired
- descriptiontext
- cash_at_closenumeric
- earnoutnumeric
- rollovernumeric
- future_valuenumeric
- tax_placeholdernumeric
- risk_scoreintrequired
- founder_obligationstext
- time_to_close_daysint
- probabilityintrequired
- expected_valuenumeric
- linked_offer_iduuid→ offers
- visibilityenumrequired
- created_attimestamprequired
- updated_attimestamprequired
- iduuidpk
- buyer_iduuid→ buyersrequired
- request_texttextrequired
- categorytextrequired
- requested_attimestamprequired
- due_attimestamp
- owner_user_iduuid→ users
- statusenumrequired
- response_texttext
- response_document_iduuid→ documents
- submitted_attimestamp
- risk_levelenumrequired
- approval_statusenumrequired
- approved_byuuid→ users
- reusable_response_iduuid
- priorityenumrequired
- visibilityenumrequired
- created_attimestamprequired
- updated_attimestamprequired
- iduuidpk
- document_iduuid→ documentsrequired
- buyer_iduuid→ buyersrequired
- access_levelenumrequired
- granted_attimestamprequired
- granted_byuuid→ users
- revoked_attimestamp
- iduuidpk
- document_iduuid→ documentsrequired
- version_numberintrequired
- storage_keytext
- file_nametext
- mime_typetext
- size_bytesint
- uploaded_byuuid→ users
- uploaded_attimestamprequired
- notestext
- iduuidpk
- titletextrequired
- descriptiontext
- categoryenumrequired
- owner_user_iduuid→ users
- statusenumrequired
- approval_statusenumrequired
- visibility_levelenumrequired
- current_version_iduuid
- created_attimestamprequired
- updated_attimestamprequired
- iduuidpk
- offer_iduuid→ offersrequired
- term_keytextrequired
- term_valuetext
- risk_levelenumrequired
- notestext
- positionintrequired
- iduuidpk
- buyer_iduuid→ buyersrequired
- offer_typeenumrequired
- received_attimestamprequired
- statusenumrequired
- enterprise_valuenumeric
- equity_valuenumeric
- cash_at_closenumeric
- earnoutnumeric
- earnout_termstext
- earnout_probabilityint
- rollover_equitynumeric
- stock_considerationnumeric
- escrownumeric
- holdbacknumeric
- working_capital_adjustmentnumeric
- debt_assumptionnumeric
- founder_employmenttext
- founder_employment_monthsint
- management_retentiontext
- noncompetetext
- exclusivitytext
- exclusivity_daysint
- closing_conditionstext
- financing_conditiontext
- board_approval_conditiontext
- regulatory_conditiontext
- expected_close_attimestamp
- expires_attimestamp
- execution_risk_scoreint
- notestext
- visibilityenumrequired
- recorded_byuuid→ users
- created_attimestamprequired
- updated_attimestamprequired
- iduuidpk
- titletextrequired
- descriptiontext
- phaseenumrequired
- start_attimestamprequired
- end_attimestamprequired
- statusenumrequired
- criticalboolrequired
- dependency_event_iduuid
- owner_user_iduuid→ users
- entity_typeenum
- entity_iduuid
- positionintrequired
- created_attimestamprequired
- updated_attimestamprequired
Research and approvals
Jobs, sources, claims and their lineage — and the approval queue that is the only route from a proposal to a live record.
- iduuidpk
- approval_typeenumrequired
- target_typeenumrequired
- target_iduuid
- target_labeltext
- proposed_changejsonrequired
- previous_valuetext
- proposed_valuetext
- modified_valuetext
- rationaletextrequired
- evidence_summarytext
- materialityenumrequired
- confidenceenumrequired
- statusenumrequired
- source_job_iduuid→ research_jobs
- source_delta_iduuid→ research_deltas
- reviewed_byuuid→ users
- reviewed_attimestamp
- review_notestext
- applied_attimestamp
- created_attimestamprequired
- source_entity_typeenum
- source_entity_iduuid
- iduuidpk
- target_typeenumrequired
- target_iduuid
- versionintrequired
- summarytextrequired
- sectionsjson
- verified_attimestamprequired
- is_currentboolrequired
- created_by_job_iduuid→ research_jobs
- created_attimestamprequired
- iduuidpk
- claim_iduuid→ research_claimsrequired
- source_iduuid→ research_sourcesrequired
- support_typeenumrequired
- excerpt_or_notetext
- iduuidpk
- target_typeenumrequired
- target_iduuid
- baseline_iduuid→ research_baselines
- delta_iduuid→ research_deltas
- claim_texttextrequired
- sectiontext
- classificationenumrequired
- confidenceenumrequired
- materialityenumrequired
- valid_fromtimestamprequired
- valid_totimestamp
- superseded_by_claim_iduuid
- contradictedboolrequired
- contradiction_notetext
- statusenumrequired
- dedupe_keytext
- created_by_job_iduuid→ research_jobs
- created_attimestamprequired
- iduuidpk
- delta_iduuid→ research_deltasrequired
- change_typeenumrequired
- headlinetextrequired
- detailtext
- why_it_matterstext
- recommended_actiontext
- materialityenumrequired
- confidenceenumrequired
- claim_iduuid
- created_attimestamprequired
- iduuidpk
- target_typeenumrequired
- target_iduuid
- previous_baseline_iduuid→ research_baselines
- research_window_starttimestamp
- research_window_endtimestamp
- material_changeboolrequired
- summarytextrequired
- new_informationtext
- changed_informationtext
- contradictionstext
- no_longer_currenttext
- strategic_signalstext
- buyer_impacttext
- internal_development_impacttext
- urgencyenumrequired
- materialityenumrequired
- recommended_actiontext
- confidenceenumrequired
- created_by_job_iduuid→ research_jobs
- created_attimestamprequired
- iduuidpk
- target_typeenumrequired
- target_iduuid
- target_labeltextrequired
- research_modeenumrequired
- depthenumrequired
- statusenumrequired
- triggertextrequired
- questiontext
- requested_byuuid→ users
- requested_attimestamprequired
- scheduled_fortimestamp
- started_attimestamp
- completed_attimestamp
- last_errortext
- partial_resultsjson
- attempt_countintrequired
- source_countintrequired
- claim_countintrequired
- change_countintrequired
- baseline_iduuid
- delta_iduuid
- provider_metadatajson
- created_attimestamprequired
- iduuidpk
- target_typeenumrequired
- target_iduuid
- predictiontextrequired
- confidenceenumrequired
- rationaletext
- horizon_attimestamp
- statusenumrequired
- created_by_job_iduuid→ research_jobs
- created_attimestamprequired
- evaluated_attimestamp
- evaluated_byuuid→ users
- evaluation_notestext
- iduuidpk
- target_typeenumrequired
- target_iduuid
- questiontextrequired
- statusenumrequired
- answer_summarytext
- confidenceenum
- research_job_iduuid→ research_jobs
- created_byuuid→ users
- created_attimestamprequired
- answered_attimestamp
- iduuidpk
- titletextrequired
- publishertext
- urltext
- published_attimestamp
- accessed_attimestamprequired
- source_typeenumrequired
- source_tierenumrequired
- archive_referencetext
- notestext
- created_attimestamprequired
Competitors and category
The competitive layer, plus DBAI's own prospect pipeline — which is not the seller's data and is reachable by one role that grants nothing else.
- iduuidpk
- competitor_iduuid→ competitors
- capability_keytextrequired
- supportenumrequired
- notetext
- assertionenumrequired
- provenanceenumrequired
- researched_ondate
- iduuidpk
- competitor_iduuid→ competitorsrequired
- dimensionenumrequired
- scoreintrequired
- rationaletext
- confidenceenumrequired
- provenanceenumrequired
- researched_ondate
- created_attimestamprequired
- iduuidpk
- competitor_iduuid→ competitorsrequired
- subjecttextrequired
- urltext
- publishertext
- titletext
- tierenumrequired
- source_typeenumrequired
- assertionenumrequired
- published_ondate
- retrieved_ondate
- excerpttext
- created_attimestamprequired
- iduuidpk
- keytextrequired
- nametextrequired
- domaintext
- tierenumrequired
- modeltext
- pricing_publictext
- funding_publictext
- headcountint
- headcount_change_12m_pctint
- headcount_change_24m_pctint
- buyer_iduuid
- buyer_tierenum
- summarytext
- diligence_notetext
- provenanceenumrequired
- researched_ondate
- created_attimestamprequired
- updated_attimestamprequired
- iduuidpk
- priorityenumrequired
- company_nametextrequired
- competitor_iduuid→ competitors
- nametextrequired
- titletext
- emailtext
- mobiletext
- do_not_callboolrequired
- dnc_checked_ondate
- notestext
- source_labeltext
- researched_ondate
- created_byuuid→ users
- created_attimestamprequired
- updated_attimestamprequired
- verification_requiredboolrequired
- verification_notetext
- alumni_ofARRAY
- company_domaintext
- relationship_typeenumrequired
- email_statusenumrequired
- phone_statusenumrequired
- linkedin_urltext
- person_locationtext
- pitch_angletext
- provenanceenumrequired
System
Notifications, settings and the audit trail every mutation passes through.
- iduuidpk
- entity_typeenumrequired
- entity_iduuidrequired
- buyer_iduuid→ buyers
- activity_typeenumrequired
- titletextrequired
- bodytext
- actor_user_iduuid→ users
- metadatajson
- created_attimestamprequired
- keytextpk
- valuejsonrequired
- labeltextrequired
- descriptiontext
- updated_byuuid→ users
- updated_attimestamprequired
- iduuidpk
- actor_typeenumrequired
- actor_iduuid
- actor_labeltext
- actiontextrequired
- entity_typeenumrequired
- entity_iduuid
- before_statejson
- after_statejson
- metadatajson
- created_attimestamprequired
- iduuidpk
- user_iduuid→ users
- typeenumrequired
- severityenumrequired
- titletextrequired
- bodytext
- entity_typeenum
- entity_iduuid
- hreftext
- read_attimestamp
- created_attimestamprequired
- dedupe_keytext
Everything else
Tables that do not match a known context — usually a new one.
- iduuidpk
- buyer_iduuid→ buyers
- acquirer_org_iduuid→ organizations
- target_nametextrequired
- announcement_datetimestamp
- close_datetimestamp
- purchase_pricenumeric
- upfront_considerationnumeric
- earnoutnumeric
- revenuenumeric
- arrnumeric
- ebitdanumeric
- revenue_multiplenumeric
- arr_multiplenumeric
- ebitda_multiplenumeric
- strategic_rationaletext
- technology_acquiredtext
- customer_basetext
- management_retentiontext
- confidenceenumrequired
- created_attimestamprequired
- iduuidpk
- from_entity_typeenumrequired
- from_entity_iduuidrequired
- to_entity_typeenumrequired
- to_entity_iduuidrequired
- relationship_typeenumrequired
- confidenceenumrequired
- verifiedboolrequired
- source_claim_iduuid
- path_weightintrequired
- notestext
- created_attimestamprequired
- updated_attimestamprequired
Row counts come from the planner's statistics rather than a count of every table, so they are close rather than exact. Cross-context references that would create an import cycle are plain uuid columns with no foreign key — those show no arrow here, which is itself worth knowing when deleting anything.