Job Opportunity Index

Why this API

What sets it apart from other job-posting feeds:

  • No language model, so no invented facts. Derived fields are read from the posting by deterministic rules. Summaries are the posting's own sentences; nothing is paraphrased or hallucinated, and the same posting always yields the same output.
  • No ingestion delay. Postings are served the moment they are indexed; other feeds hold them back an hour or more for model enrichment.
  • Public employment services included. Germany's Federal Employment Agency (about a million postings) and EURES (30 European countries), next to company career sites and 13+ hiring platforms. Postings that never reach a commercial job board.
  • The complete posting. The full description, the requirements, every structured fact the source gives (details), and the complete text of the original page, not just a summary.
  • Exact original URLs. Every posting links to its source page. For EURES, the national service's own listing.
  • Change tracking with field names. modified-jobs reports exactly which fields changed, and never reports a posting its source left unchanged.
  • Staffing agencies labelled, from the German agency's own classification and agency names in many languages: filter them in or out.
  • Normalised places offline, in English, with coordinates and time zones, without a paid geocoder: search "Munich" and find München.
  • Self-hostable and LLM-ready. Every query is also JSON lines, CSV or Markdown for language models.