BambooHR Jobs API avatar

BambooHR Jobs API

Pricing

from $1.00 / 1,000 job records

Go to Apify Store
BambooHR Jobs API

BambooHR Jobs API

Find job postings from BambooHR-powered career sites by country, role, company, salary, posting age, employment type, and seniority.

Pricing

from $1.00 / 1,000 job records

Rating

0.0

(0)

Developer

Aspen Technology Labs, Inc.

Aspen Technology Labs, Inc.

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

BambooHR Job Postings API - JobsIndex by Aspen Tech Labs

BambooHR is a widely used HR and applicant tracking platform, especially among small and mid-sized employers. This Actor gives you structured access to jobs pulled from BambooHR-powered career sites.

The JobsIndex API, built by Aspen Tech Labs, collects 75K+ jobs directly from BambooHR-powered sources across thousands of companies worldwide. It is part of a broader index aggregating 11M+ active job listings daily from 300K+ employer source sites globally.

Coverage is not limited by posting date. If a job was posted six months ago, a year ago, or longer, as long as it is an actual live job posting, we have it in our index. We actively verify that every position is current and not an abandoned posting. Our database also includes evergreen roles that companies keep open on a rolling basis, which we tag in the system.

What You Can Use It For

This Actor serves two primary use cases: teams that want to publish BambooHR job listings on their platform, and teams that need structured BambooHR ATS data for matching algorithms, AI model training, or hiring intelligence.

Use this data to power a job board or careers platform with live job postings pulled from BambooHR-powered sources. Feed it into a matching engine, recommendation system, or AI model that benefits from clean, structured ATS data. Or use it for workforce analytics, sales prospecting into hiring companies, compensation research, or talent market intelligence, filtered by role, location, or posting date.

Need More Or Something Different?

If this Actor is working well for you, we'd love a review. For more data, custom feeds, feedback, or any questions, reach out via our website or email. You can also explore JobMarketPulse, our labor and job market intelligence platform.

Built-In Search Preset

This Actor is fixed internally to BambooHR-powered jobs (ats_name=bamboohr). The ATS/source platform preset is not exposed as an input parameter. Users can narrow the search by country, structured location, role keywords, salary, company, category, posting age, employment type, seniority, work arrangement, and pagination fields.

Quick Start

{
"what": "@title manager",
"country": "United States",
"page": 0,
"size": 5
}

Input Parameters

ParameterDescriptionExample
salarySalary amount or range filter.20h-30h
whatMain job search query. Supports keywords, boolean logic, exact phrases, and field-targeted search such as @title manager or @(title,description) (manager).@title manager
whereFree-text location search. Supports place names, boolean logic, and field-targeted search such as @country United States or @(city,metro_area) (Irvine). Prefer structured location fields for exact filters.United States
countryCountry filter.United States
regionState, province, or region.California
cityCity filter.Irvine
postal_codePostal or ZIP code filter.92618
metro_areaMetropolitan area filter.Los Angeles-Long Beach-Anaheim, CA
titleJob title filter.Account Manager
company_nameCompany name filter.Silk Commerce
company_domainCompany website domain.silkcommerce.com
categoryJob category.Business Services
sub_categoryMore specific job function or role.Account Manager
industryCompany industry filter.Software
remoteWork arrangement filter. Supported values: remote, on-site, hybrid.remote
postedRelative posting age or ISO date.1w
employment_typeEmployment type.Full-Time
senioritySeniority level.Senior
pagePage number, starting from 0.0
sizeNumber of results per page. Default 5, min 1, max 100.5

Salary Filter Format

Use:

NUMBER[UNIT]

or:

NUMBER[UNIT]-NUMBER[UNIT]

Supported units:

  • h - per hour
  • d - per day
  • w - per week
  • m - per month
  • y - per year

Examples:

  • 20h-30h - hourly rate between 20 and 30
  • 35h - fixed hourly rate
  • 20h-200000y - range from hourly to yearly comparison

Advanced Filters

what and where support plain-text search, boolean logic, and field-targeted search.

If no field is provided, the API expands the search across a default set of relevant fields.

Plain keyword examples:

what = manager
where = United States

Field-specific examples:

what = @title manager
where = @country United States

Multi-field examples:

what = @(title,description) (manager)
what = @(title,title_raw,description) (engineer OR manager)
what = @(title,description) (machine AND learning)
where = @(country,region,city,metro_area,county,sub_city) (United States)
where = @(city,region,metro_area) (Irvine OR California)
where = @(city,region,metro_area) (California)

When using where, avoid sending separate structured location parameters for the same request unless you want those structured parameters to take priority. For example, country, region, city, postal_code, and metro_area can override or narrow where.

Common job/content fields for what:

  • title, title_raw, description, reference
  • category, sub_category, seniority, industry, company_type
  • company_name, company_domain, company_name_raw
  • employment_type, remote, language
  • posted, posted_raw, expired
  • url_source, url_apply
  • salary_value, salary_currency, salary_unit
  • id

Common location fields for where:

  • country, region, city, metro_area, county, sub_city, postal_code

Location Filtering

For precise location matching, use structured filters exposed for this Actor:

  • country
  • region
  • city
  • postal_code
  • metro_area

Use where only as a free-text location search when the structured location filters above are not set. If where is provided together with structured location filters, the structured filters take priority and where may be ignored or deprioritized.

Limits and Pagination

This Actor uses the JobsIndex jobs API. Results are paginated with page and size.

ParameterDefaultMinMax
page00Depends on size and the item cap
size51100

Invalid page or size values can return 400 Invalid page or size parameters.

Item Caps

The maximum number of retrievable jobs depends on the query shape:

Query shapeMax itemsEffective max sizeOver-size behavior
No company filter1000100Validation error; not silently capped
Company filter plus another keyword or filter2020Silent cap with capping metadata
Company filter only55Silent cap with capping metadata

A company filter means company_name, company_domain, or a company field referenced inside what. Another keyword or filter means anything in what other than company_*, or a value in fields such as title, category, sub_category, industry, posted, salary, employment_type, or seniority where available on this Actor.

When a company-filtered request asks for size greater than the effective cap, the API returns up to the capped number of results instead of erroring. The response metadata includes:

  • size_requested - the original requested size
  • size_capped_by - "company" for the 5-item cap or "company|keywords" for the 20-item cap

On uncapped responses, size_requested and size_capped_by are not present.

No-company-filter requests are not silently capped. If the request exceeds the 1000-item retrieval window, the API can return 400 Item limit reached. Maximum of 1000 items can be retrieved.

Free-Text Query Limits

what and, where available, where support advanced matching syntax but have safety limits:

LimitValueError behavior
Raw URL length before decoding700 characters400 'what' or 'where' parameters exceed 700 characters
Decoded text length500 characters400 MATCH input exceeds length limit
Combined operator characters: ?, +, pipe, @20400 Too many MATCH operators
Unsafe SQL-like keywordsblocked400 Unsafe MATCH expression

Unsupported characters may be normalized before search. Unbalanced quotes and trailing @ characters may be stripped.

Field Validation

Invalid filter values can return 400 Invalid value for parameter: <name>. Common validation examples include malformed company domains, invalid dates or relative posted values, invalid salary format, invalid job IDs, unsupported location formats, or overly long field values.

ID Lookup Shortcut

When id is provided, the search query is bypassed and the API returns the matching job record or records. Job IDs must be numeric; otherwise the API returns 400 Invalid job id format.

Output

Each run stores job records in the default Apify dataset. The dataset schema includes an Overview table for the most useful fields and a Raw data (all fields) table for the complete JobsIndex record.

Example dataset item:

{
"id": "13161870762725657297",
"title": "Account Manager",
"company_name": "Silk Commerce",
"company_domain": "silkcommerce.com",
"category": "Business Services",
"sub_category": "Account Manager",
"country": "United States",
"region": "California",
"city": "Irvine",
"salary_value": null,
"salary_currency": null,
"salary_unit": null,
"employment_type": "Full-Time",
"remote": "n/a",
"posted": "2026-04-22",
"url_apply": ""
}

Field availability depends on the source job posting.