{ "$schema": "http://json-schema.org/draft-07/schema#", "title": "Salary Data Point", "description": "Schema for individual salary data points from crowdsourced and published compensation sources.", "type": "object", "properties": { "job_title": { "type": "string", "description": "Job title or role this salary corresponds to. Commonly found in: salary entry title field, compensation data row, salary report header." }, "company_name": { "type": "string", "description": "Name of the employer. Commonly found in: company field in salary entry, employer name in report, data submission form." }, "company_domain": { "type": "string", "description": "Website domain of the employer. Commonly found in: company profile link, employer website field." }, "company_size_range": { "type": "string", "description": "Company size range (e.g., '51-200', '1000+'). Commonly found in: company size field, employer details, filter sidebar." }, "industry": { "type": "string", "description": "Industry sector of the employer. Commonly found in: industry field, company profile, salary filter." }, "location_city": { "type": "string", "description": "City of the job location. Commonly found in: location field, city in salary entry, geographic filter." }, "location_state": { "type": "string", "description": "State or province of the job location. Commonly found in: location field, state in salary entry, geographic filter." }, "location_country": { "type": "string", "description": "Country of the job location. Commonly found in: location field, country in salary entry, geographic filter." }, "remote": { "type": "boolean", "description": "Whether the position is fully remote. Commonly found in: remote indicator, work arrangement field, location type." }, "total_comp_usd": { "type": "number", "description": "Total annual compensation in USD. Commonly found in: total comp field, TC display, compensation summary." }, "base_salary_usd": { "type": "number", "description": "Annual base salary in USD. Commonly found in: base salary field, salary breakdown section, compensation table." }, "bonus_usd": { "type": "number", "description": "Annual bonus amount in USD. Commonly found in: bonus field, salary breakdown section, compensation table." }, "equity_usd": { "type": "number", "description": "Annual equity value in USD. Commonly found in: equity field, stock/RSU value, compensation table." }, "signing_bonus_usd": { "type": "number", "description": "Signing bonus amount in USD. Commonly found in: signing bonus field, compensation table, salary breakdown." }, "years_experience": { "type": "number", "description": "Total years of professional experience. Commonly found in: experience field, years of experience input, salary filter." }, "years_at_company": { "type": "number", "description": "Years at the current company. Commonly found in: tenure field, years at company input, compensation details." }, "education_level": { "type": "string", "description": "Highest education level (e.g., Bachelor's, Master's, PhD). Commonly found in: education field, degree level input, salary filter." }, "seniority_level": { "type": "string", "description": "Seniority or career level (e.g., Senior, Staff, Principal). Commonly found in: level field, seniority input, title level indicator." }, "data_source": { "type": "string", "description": "Source or platform of this salary data point. Commonly found in: site domain, platform attribution, data source label." }, "submission_date": { "type": "string", "format": "date", "description": "Date this salary was submitted or reported. Commonly found in: submission date field, report date, salary entry timestamp." }, "page_title": { "type": "string", "description": "Title of the source page. Tabstack auto-fills this from page metadata when left empty." }, "favicon": { "type": "string", "format": "uri", "description": "Favicon URL of the source page. Tabstack auto-fills this from page metadata when left empty." } }, "required": ["job_title", "total_comp_usd"] }