Salary.com
Home API MCP
Home
API
Welcome to the Salary.com API
Data as a Service CompAnalyst and JobArchitect

Data as a Service

Introduction & AI
Behavior Request Field Definitions Response Field Definitions Match a Job POST Batch Match Jobs POST Match a Job (Verbose) POST Batch Match Jobs (Verbose) POST
Behavior Request Field Definitions Response Field Definitions Match a Job POST Match a Job (Verbose) POST

CompAnalyst

Get an Employee GET Get Employee List GET Create an Employee POST Update an Employee PUT Delete an Employee DELETE
Get a Company Job GET Get Company Job List GET Create a Company Job POST Update a Company Job PUT
Get Composite List GET Get Composite by Job Code GET

JobArchitect

Get Job Description List GET Get a Job Description Details GET
Get Skills GET

Reference

Employees Company Jobs Salary Plan Competencies Composites JobArchitect Skills
Change Log
MCP
Welcome to Salary.com MCP Authentication

CompAnalyst Market Data Tools

Overview
getMarketRate getBenchmarkJobDetails findBenchmarkMatches compareToMarket Shared Fields & Filters

SalaryIQ Labor Market Tools

Overview
getPostingTrends getTrendingSkills getHiringCompanies summarizeLaborMarket Shared Fields & Filters

Reference

Resources
×
Back
Welcome to the Salary.com API Authentication
Data as a Service CompAnalyst and JobArchitect

Data as a Service

Introduction & AI Market Data Job Match API
Behavior Request Field Definitions Response Field Definitions Match a Job POST Batch Match Jobs POST Match a Job (Verbose) POST Batch Match Jobs (Verbose) POST
Posting Data Job Match API
Behavior Request Field Definitions Response Field Definitions Match a Job POST Match a Job (Verbose) POST

CompAnalyst

Employees
Get an Employee GET Get Employee List GET Create an Employee POST Update an Employee PUT Delete an Employee DELETE
Company Jobs
Get a Company Job GET Get Company Job List GET Create a Company JobPOST Update a Company Job PUT
Composites
Get Composite ListGET Get Composite by Job CodeGET

JobArchitect

Jobs
Get Job Description List GET Get a Job Description Details GET
Skills
Get Skills GET

Reference

Field Definitions
Employees Company Jobs Salary Plan Competencies Composites JobArchitect Skills
Change Log

Request Field Definitions

Job Match API

SalaryRequest

{
    JobTitle        string
                    nullable: true
    JobDesc         string
                    nullable: true
    CompanyName     string
                    nullable: true
    DataScope       RequestDataScope {
                        CountryCode     string 
                                        nullable: true
                        State           string 
                                        nullable: true
                        City            string 
                                        nullable: true
                        ZipCode         string 
                                        nullable: true
                        NAICSCode       string 
                                        nullable: true
                        FTEValue        integer($int64) 
                                        nullable: true
                        Revenue         integer($int64) 
                                        nullable: true
                    }
}
  • JobTitle: Any job title.
  • JobDesc: A full or partial job description. The more robust the job description the better. Description needs to have special characters escaped.
  • CountryCode: Three character country code, some examples detailed below:
Country Code Country
USAUnited States
AUSAustralia
BELBelgium
CANCanada
CHESwitzerland
DEUGermany
ESPSpain
FRAFrance
GBRUnited Kingdom
HKGHong Kong
INDIndia
IRLIreland
ITAItaly
JPNJapan
MEXMexico
NLDNetherlands
POLPoland
TWNTaiwan
  • State: USA state abbreviation or full state name.
  • City: The full city name. e.g. “Bismarck”
  • ZipCode: Accepts any valid 5 digit USA zip code.
  • NAICSCode: 2, 3, 4, 5, or 6 digit 2022 NAICS code. Please see the North American Industry Classification System for reference and acceptable values.
  • FTEValue: # of full time employees at the company. Accepts an integer which corresponds to the following ranges:
    • 0-25
    • 26-50
    • 51-100
    • 101-200
    • 201-500
    • 501-1000
    • 1001-3000
    • 3001-7500
    • 7501-15000
    • 15001-50000
    • 50001-10000000000
  • Revenue: The revenue of the company the job is associated with. Accepts an integer which corresponds to the following ranges:
  • But please note we treat the data in Revenue as USD($)

    • 0-5000000
    • 5000001-10000000
    • 10000001-50000000
    • 50000001-200000000
    • 200000001-500000000
    • 500000001-1000000000
    • 1000000001-3000000000
    • 3000000001-5000000000
    • 5000000001-10000000000
    • 10000000001-50000000000
    • 50000000001-2000000000000

Job Match API (Verbose)

This API is similar to the previously defined Job Match API, but more fields can be included in the request body.

SalaryRequestV2

{
    JobTitle                    string
                                nullable: true
    JobDesc                     string
                                nullable: true
    CompanyName                 string
                                nullable: true
    BaseSalary                  number($double)
                                nullable: true
    TCC                         number($double)
                                nullable: true
    TargetBonus                 number($double)
                                nullable: true
    IsSalaried                  boolean
                                nullable: true
    IsExempt                    boolean
                                nullable: true
    YearsOfExperienceMin        integer($int32)
                                nullable: true
    YearsOfExperienceMax        integer($int32)
                                nullable: true
    DataScope                   RequestDataScope {
                                    CountryCode     string 
                                                    nullable: true
                                    State           string 
                                                    nullable: true
                                    City            string 
                                                    nullable: true
                                    ZipCode         string 
                                                    nullable: true
                                    NAICSCode       string 
                                                    nullable: true
                                    FTEValue        integer($int64) 
                                                    nullable: true
                                    Revenue         integer($int64) 
                                                    nullable: true
                                }
}
  • BaseSalary: The numerical value representing the base salary amount for an employee or position. This input does not immediately impact the returned match. Overtime and with continued use it can. These values are fed back into our algorithm and matches may be refined based on end user input. The default value is blank.
  • TCC: The total cash compensation amount, encompassing all cash-based remuneration components, for an employee or position, including base salary, bonuses, incentives, and other cash-based benefits. Can be entered in number format. This input does not immediately impact the returned match. Overtime and with continued use it can. These values are fed back into our algorithm and matches may be refined based on end user input. The default value is blank.
  • Target Bonus: The numerical value representing the target bonus amount for an employee, typically expressed as a percentage of the base salary or as a fixed amount. This input does not immediately impact the returned match. Overtime and with continued use it can. These values are fed back into our algorithm and matches may be refined based on end user input. The default value is blank.
  • IsSalaried: Indicates whether an employee is classified as salaried. A boolean field indicating whether the employee is classified as salaried (true) or not (false). This input does not immediately impact the returned match. Overtime and with continued use it can. These values are fed back into our algorithm and matches may be refined based on end user input. The default value is blank.
  • IsExempt: Indicates whether is exempt from certain provisions of FLSA, such as overtime pay. A Boolean field indicating whether an Exempt position (true) or non-Exempt position (false). This input does not immediately impact the returned match. Overtime and with continued use it can. These values are fed back into our algorithm and matches may be refined based on end user input. The default value is blank.
  • YearsOfExperienceMin: The integer value representing the minimum required or preferred years of relevant work experience for a job or position. This value impacts the match results and will applied to the final response data, including salary ranges and job attributes. The default value is 0. This field is optional. If using the verbose API and do not have a defined YearsOfExperienceMin, do not pass it in the request body.
  • YearsOfExperienceMax: The integer value representing the maximum preferred or allowed years of relevant work experience for a job or position. This input does not immediately impact the returned match. Overtime and with continued use it can. These values are fed back into our algorithm and matches may be refined based on end user input. The default value is 0.

© Copyright Salary.com 2026. All Rights Reserved.

Privacy Policy/California Privacy Rights | Legal | Accessibility | Terms of Use | Do Not Sell or Share My Information