Job Search

Searches and recommends jobs for job seekers based on their work history, education, skills.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Use this endpoint to recommend jobs to candidates based on their profile and a set of filters.

  • Candidate: The candidate object describes the job seeker's prior work history, skills, education etc. This is used to determine the best fit jobs and to calculate the match score and match report that accompany each returned job.
  • Filters: The caller may filter results based job attributes such as location, salary, experience requirements etc.
🚧

Filtering on Null Values

Some fields are sparsely populated in job postings. Filtering on these fields can dramatically reduce the number of results returned to job seekers.

For example, between half and two thirds of job postings do not contain a salary. Those jobs would not be returned in a query where a salary filter has been applied.

Additional Notes:

The notes below offer explanatory details on certain key filters.

  • Education_levels: Approximately half of job postings in third-party job feeds do not specify an education level, and therefore will not be returned if education levels are specified and unknown is not included. For example, to search for jobs that require a Bachelors or do not state a requirement, submit bachelors and unknown
  • Employment_term: Employment terms (dates/durations) are not available in third party job feeds, and may not be consistently populated in customer-managed job feeds. Searching based on employment terms may result in sparse results.
  • Location: Callers can limit results to jobs with a known location within a provided radius (in miles) to a provided location (city/state/postal code/country). Jobs without a specified location will be excluded from search results. The system supports US locations only. To search for remote jobs use employment_location_type.
  • Salary: Jobs not specifying a salary are excluded if salary filters are specified. Approximately half to two-thirds of job postings in third-party job feeds do not specify a salary, and therefore will not be returned in this scenario.
  • Shift: Shift hours are not available in third party job feeds, and may not be consistently populated in customer-managed job feeds. Searching based on shift hours may result in sparse results.
  • Employment_location_type: The AdeptID-managed third party job feed classifies jobs as REMOTE, IN_PERSON, or UNKNOWN. It does not contain a HYBRID option, so filtering for HYBRID using the AdeptID-managed feed will return an empty set of jobs.
  • Skills Report: The current response schema includes two versions of a "Skills Report". The version in results.job.match.match_report.skills is the latest version, is introduced in Match, and is recommended for new integrators. The version in results.job.match.skills_report will be deprecated in the coming months.
Body Params
string
enum
Defaults to en-US
integer
0 to 100
Defaults to 5

The number of skills returned for each occupation.

integer
Defaults to 0

Number of rows/recommendations to exclude from the beginning of the ordered results set.

integer
0 to 100
Defaults to 10

Number of rows/recommendations to include in the results set.

string
required
posting_status
array

The status of the job posting. Values: ACTIVE, INACTIVE. Returns all if null.

posting_status
Allowed:
string

The desired job title. Results will consider the specified job title and/or the candidate's profile, depending on what is provided.

number
Defaults to 0.7

Include results with this match score or higher. Score must be between 0 and 1 inclusive. Defaults to 0.7.

integer

The maximum number of days since the job was posted.

internship_options
array

Whether to include internships and/or non-internships in results. Values: INTERNSHIP NON_INTERNSHIP. Returns all if null.

internship_options
Allowed:
job_type
array
job_type
Allowed:
onet_2019_codes
array of strings | null

Only include jobs classified as one of the provided ONET 2019 occupations. (AdeptID defines the O*NET classification during job posting creation.)

onet_2019_codes
location
object

The location to search within. Requires a state and country. Optionally include a city and radius (in miles) for geo-distance filtering; otherwise, filters by state. For multi-state filtering, use the states parameter instead. To exclude specific states from results, use excluded_states (allowed alongside a radius-based location, not state-only).

states
array of strings
length ≤ 15

Two-letter US state abbreviations to filter jobs by (e.g. ["CA", "NY"]). Results include jobs located in any of the specified states. Cannot be combined with the location or excluded_states parameters.

states
excluded_states
array of strings

Two-letter US state abbreviations to exclude from results (e.g. ["CA", "NY"]). May be used standalone or alongside a radius-based location (city + radius). Cannot be combined with states or a state-only location. Respects location_filter_mode the same way states does: under REMOTE_FLEXIBLE, REMOTE jobs in excluded states are still returned.

excluded_states
employment_location_type
array
employment_location_type
Allowed:
enum
Defaults to REMOTE_FLEXIBLE

Controls how the location, states, and excluded_states filters interact with the employment_location_type filter. Only meaningful when one of those location filters is provided. Defaults to REMOTE_FLEXIBLE. STRICT: jobs of every requested type must match the location filter and must not be in any excluded state. REMOTE_FLEXIBLE: IN_PERSON and HYBRID jobs must match the location filter and must not be in any excluded state; REMOTE jobs are included from any location, including excluded states. FULLY_FLEXIBLE: only IN_PERSON jobs must match the location filter and must not be in any excluded state; REMOTE and HYBRID jobs are included from any location, including excluded states.

Allowed:
salary
object

The salary requirements for the search.

shift
object

The timing requirements of the shift.

employment_term
object

The dates of employment.

years_of_experience
object

The range of years of experience the job requires.

education_levels
array of strings

Array of strings representing canonical degree levels. Results include jobs that specify any included degree level as the minimum required level of education. Include “UNKNOWN” to include jobs without a specified minimum in results.

education_levels
Allowed:
custom_filters
object

Filter on customer-defined fields. Each field accepts an array of values; a job matches if its stored value matches any of the provided values (case-insensitive). When multiple fields are specified, all must match (AND across fields).

candidate
object

AdeptID's standard Candidate object. Describes the job seeker to be matched to job and career opportunities.

sort_by
array of arrays of strings
length ≤ 10
Defaults to match_score,desc

List of [field_name] or [field_name, sort_order] pairs for hierarchical sorting. Results are sorted by the first field, then within those groups by the second field, etc. If sort_order is omitted, a sensible default will be used for each field. Valid fields: employer_name, employment_term.date_start, employment_term.duration, location.city, location.distance, location.state, match_score, match_score_category, posting_date, salary.min, shift.type, years_of_experience.min. Custom attribute fields use the pattern 'custom_attributes.your_field_name'. (Case Sensitive)Custom filter fields: custom_filters.string_1, custom_filters.string_10, custom_filters.string_2, custom_filters.string_3, custom_filters.string_4, custom_filters.string_5, custom_filters.string_6, custom_filters.string_7, custom_filters.string_8, custom_filters.string_9. Valid orders: asc, desc. Sorting by 'location.distance' requires a location anchor (city, state, country, radius) on the request. Example: [["match_score_category"], ["posting_date", "desc"], ["match_score"]]

sort_by
Responses

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json