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 created_max_age filter is built for exactly this: run your alert job every hour or every day with created_max_age set to your interval (created_max_age=1h for an hourly job, created_max_age=1d for daily), match the results 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?

There are two freshness fields: published is when the employer originally posted the role, and created_at is when CleanJobData indexed it — a job can have an older published date but only just have finished processing and appeared in the index. For alerts, filter on the ingestion side with created_max_age, sized to your run interval: created_max_age=1d for a daily job, created_max_age=1h for hourly. That way a listing lands in your alert the run after it's actually indexed, regardless of its published date. Dedupe by job id against what you've already sent, since the window can overlap slightly between runs.

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 — this matters more than it might seem, since a created_max_age window sized with a safety margin will overlap slightly with your previous run and re-return a few listings you already sent.

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.