Sales Intelligence

AI Website Parser — Database Schema

Tables and columns populated by AI extraction (Phase 2)

website_scrape_jobs (AI Extraction Columns)

Phase 2 columns added during scraper split

ColumnTypeDescription
combined_textTEXTPage content from Phase 1 (NULLed after extraction)
extract_retry_countINTEGERNumber of AI extraction retry attempts
extract_errorTEXTLast extraction error message
fetched_atTIMESTAMPTZWhen Phase 1 fetching completed
statusTEXTJob status: fetched, extract_processing, completed, extract_failed

employees

People extracted by AI from company websites

ColumnTypeDescription
idBIGSERIAL PKUnique identifier
website_idBIGINT FKReference to websites table
first_name / last_nameTEXTPerson's name
job_titleTEXTPosition title
emailTEXTPersonal email address
phoneTEXTPhone number
seniority_levelTEXTC-level, VP, Director, Manager, etc.
departmentTEXTDepartment classification

social_profiles

Social media profiles linked to employees or companies

ColumnTypeDescription
idBIGSERIAL PKUnique identifier
employee_idBIGINT FKReference to employees (nullable)
website_idBIGINT FKReference to websites
platformTEXTlinkedin, xing, instagram, facebook, x, etc.
urlTEXTFull profile URL
usernameTEXTPlatform username/handle

job_listings

Job openings extracted from career pages

ColumnTypeDescription
idBIGSERIAL PKUnique identifier
website_idBIGINT FKReference to websites
titleTEXTJob title
departmentTEXTDepartment
locationTEXTJob location
seniorityTEXTSeniority level
urlTEXTURL to the job posting

websites (AI-populated fields)

Company metadata populated by AI extraction

ColumnTypeDescription
company_nameTEXTExtracted company name
company_descriptionTEXTAI-generated description
industryTEXTIndustry classification
estimated_revenueTEXTRevenue range estimate
headcount_rangeTEXTEmployee count range
company_contact_emailTEXTGeneric contact email (info@, kontakt@)
ai_modelTEXTWhich AI model processed this website
statusTEXTscraped = AI extraction complete