The Job Posting Data API uses our AI to match a job title and/or job description against elements of our database and return job posting data. These APIs use the same AI job match technology as the Market Data APIs. Data returned includes aggregate calculations such as number of active postings, number of closed postings, and number of hiring companies. The verbose API includes more complicated calculations such as growth rates and posted salary range distributions.
The APIs offers Start and End Date filters in order to get data for a specific time period.
While a job title and/or job description and a country are the minimum requirements, salary data is more specific when an accurate job description is included.
Either a JobTitle or JobDesc and a CountryCode or ZipCode are always required in the request.
Given job descriptions can include special characters, quotes, etc it is necessary to escape these characters in the request body so the API can properly parse the input. e.g. \"Apply Now\”
An accurate job description will lead to a much higher match quality versus a poor job description or only including a general title.
We return a match rating based on the confidence we have in the job match. Values are “Confident”, “Potential” and “NeedsReview.” The MatchRating changes based on the primary match inputs (JobTitle and JobDesc).
It is important to understand the function of the data scope object in order to properly leverage the APIs. At a high level, the fields in the request impact the data returned and this will be clear in the API response body by looking at the DataScope_ fields.
Location hierarchy must be maintained, meaning a country and a city cannot be sent in the request without state. Or a city without country, etc. “Location request is incomplete” message and “Code”: -1 is returned.
A ZipCode can be requested with just CountryCode: USA because it is specific.
FTE (Full-Time Equivalent), enter any integer and this is matched to our company size buckets. If there is a company size match, the corresponding job postings for that size will be returned. If there is no match and the NAICS code is not provided, we will default to using all company sizes across all industries to return the postings data. If '0' is entered for company size, we will treat it as "All FTE".
All of our postings are tied to companies and therefore NAICS codes. 6 digit NAICS codes are accepted.
If there is a match, the corresponding adjustment is made to the response data. When an adjustment is made, this is clear in the DataScope_IndustryCode and DataScope_IndustryName fields in the response body.
CompanyName allows users to input a specific company name. Company names are an exact match based on the official company name. For example “Google LLC” will find results for Google job postings. “Google” will not.
When provided, the API will return job postings for company that exactly match the input, while also applying the filtering criteria specified in the data scope fields. If no exact match for the company name is found, the input will be ignored, and the API will return job postings based on the data scope and other relevant parameters. This ensures that the API prioritizes accuracy for company-specific queries, while still providing results when an exact match isn't available.
To tailor a job match to a certain level, use this field.
Important: if you are using the Verbose API and do not specifically have a YearsOfExperienceMin to pass, do not include the field in the request body. Passing a 0 value will tell our API you expect and entry level position.
DataRange field supports the formats YYYY, YYYY-MM, or YYYY-MM-DD. If an invalid format is provided, the API will default to returning data for "Today".
When only a start date is given, the API will set an end date 100 years in the future.
When only an end date is entered, the API will set the start date 3 years prior.
The start date cannot be later than the end date, we return an error based on the logic.
This flag informs whether the job posting data in the API response includes only postings with salary ranges or all postings. About 40% of all job postings in the United States include a salary range. We find these jobs typically have a lower posting duration (meaning they are filled faster) but this is not always the case.
OnlyPosted: true to include only jobs with salary ranges in the job posting
OnlyPosted: false to include all job postings