All use cases

Browser Extension API

Add up-to-date job data to your Chrome or Firefox extension

Browser extensions that surface job market context — salary ranges while browsing LinkedIn, open roles at the company you're researching, job alerts on pages you visit — need an API that's fast, lightweight, and reliable. CleanJobData is built for exactly that: fast responses, lightweight JSON payloads sized for extension use, and data sourced directly from employer ATS systems so what you surface is accurate. The 14-day free trial lets you develop and test without committing to a plan.

Benefits

Features

Try it on your own use case

Run real queries in the playground without a key, or start a 14-day free trial with 300 requests a day. No card required.

Frequently Asked Questions

How fast is the API response time?

Response times vary by query complexity, but most list queries return in under 300ms. For extensions where perceived speed matters, cache responses locally and refresh on a reasonable TTL.

Can I show salary data for a specific role while the user browses a company's LinkedIn page?

Yes — query `?company_name=<company>&title=<role>&experience_level=<level>` to pull current salary ranges for that company, role, and seniority. If you can resolve the company's actual domain (e.g. from their LinkedIn 'website' field), use company_website_url instead of company_name for an exact rather than fuzzy match.

Is there a free trial for building and testing?

Yes — a 14-day free trial with 300 requests per day and no credit card required. It resets daily rather than capping out for the month, so it's designed to be enough to build a working prototype and verify the data quality for your use case within the trial.

What's the rate limit on the API?

Rate limits are enforced per second, and every response carries X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Type headers so you can back off before you're throttled. That's generous enough that a user interaction triggering one or two calls won't hit it. If you do get a 429, check whether the error message mentions 'Monthly request limit' — that's the monthly quota, not the per-second limit, and won't clear by retrying; a per-second 429 clears in a second or two. See /docs/api/errors for the full breakdown.