All use cases

Job Alerts API

Power job alert emails and notifications with a real-time job feed

Job alerts are one of the highest-value features on any job board or career product — users who set alerts are far more engaged than those who don't. Building them well means pulling only new listings since the last notification run, filtering precisely to match user preferences, and doing it efficiently at scale. CleanJobData's cursor-based pagination and max_age filter are built for exactly this: run your alert job every hour or every day, pull only what's new, match against user preferences, and send.

Benefits

Features

Frequently Asked Questions

How do I build an alert that only sends new jobs since the last run?

Use the cursor parameter returned in each list response. Store it after each sync run and pass it back on the next run — the API will return only listings that appeared since that cursor position. For simpler setups, the max_age=1d filter also works for daily alert jobs.

Can I segment alert queries by individual user preferences?

Yes — each query can combine any set of filters. For large user bases, group users with identical preferences and run one query per group rather than one per user. That keeps your request volume manageable without sacrificing precision.

How do I avoid sending the same job twice?

Every listing has a stable ID. Store the IDs you've already notified users about and check incoming results against that set before sending. The cursor approach handles most of this automatically since you're only pulling new listings.

Can I include salary information in job alerts?

Yes — the salary min, max, and currency fields are returned on every listing where the employer provides them. You can filter to only alert users when a role includes salary data above a threshold, or include the salary in the alert when available.