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 Posting Data API

JobPostingRequest

{
    JobTitle            string
                        nullable: true
    JobDesc             string
                        nullable: true
    CompanyName         string
                        nullable: true
    DataScope           JobPostingRequestDataScope {
                            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
                        }
    DateRange           DateRange {
                            Start           string 
                                            nullable: true
                            End             string 
                                            nullable: true
                        }
    OnlyPosted          boolean
                        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.
  • CompanyName: An official company name, e.g. Apple, Inc
  • CountryCode: Three character country code. E.g USA. Right now the job posting data API only covers the United States.
  • 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: Accepts a 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
  • StartDate: YYYY, YYYY-MM, or YYYY-MM-DD. The starting date of the data range you want to return the corresponding postings data.
  • EndDate: YYYY, YYYY-MM, or YYYY-MM-DD. The ending date of the data range you want to return the corresponding postings data.
  • OnlyPosted: boolean, acceptable values true or false. This is an important field that informs the job posting data returned in the API response. See “Behavior” section and read about OnlyPosted.

Job Posting Data API (Verbose) 

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

JobPostingRequestV2

{
    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                   JobPostingRequestDataScope {
                                    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
                                }
    DateRange                   DateRange {
                                    Start               string 
                                                        nullable: true
                                    End                 string 
                                                        nullable: true
                                }
    OnlyPosted                  boolean
                                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