# The Joobs API: your jobs on your own site, without an iframe

> Your jobs as JSON, rendered in your own design on your own domain. The routes, the key, the limits, and what it changes for hiring.

- **Author:** David Verbustel
- **Category:** ETFY8wgbX6Y616hUa4Fq
- **Published:** 2026-04-20
- **Language:** en

The careers page of most Belgian SMEs shows somebody else's job listings. A frame dropped into the middle of the site, with its own fonts, its own scrollbar and its own apply button. Technically it works. The visitor can still tell they just changed website without clicking anything.
There is another way now. The Joobs Public API hands your jobs back to you as data, and you render them yourself: your design, your domain, your template.
## What the iframe actually costs
An iframe is a page inside a page. That boundary has four consequences, and none of them shows up on an invoice — which is exactly what makes them easy to ignore.
- Your design stops at the frame. Fonts, colours and spacing don't cross the border. The most commercial area of your site is the one part that doesn't look like you.

- Mobile pays twice. A frame that scrolls inside a page that scrolls. On a phone, the visitor loses their place, or loses the button.

- The SEO goes elsewhere. Content inside an iframe doesn't belong to your domain. Your jobs work for the ranking of the site that serves them, not for yours.

- You measure nothing. Your analytics stop at the border. You know how many people saw the page, not how many read a job.


## What the API does, in one sentence
It returns your published jobs as data, so your site can render them the way it renders everything else.
No widget to embed, no third-party script loading in your visitor's browser. One HTTP request, JSON back, and the rendering is entirely yours.
curl -H "x-api-key: joobs_your_key" \
  https://europe-west1-leipzig-04103.cloudfunctions.net/api/v1/jobsThe response carries your active jobs: title, description, locations, contract types, company size, and the role labels in all four site languages — French, English, Dutch, German. You decide what to show and how to show it.
## The four routes
RouteWhat it returnsWhat you do with itGET /v1/healthService statusYour monitoringGET /v1/jobsYour public jobs, paginatedThe list on your careers pageGET /v1/jobs/:idOne full jobThe detail pagePOST /v1/jobs/:id/applyThe submission receiptYour own application formThe list paginates with limit and offset, a hundred jobs per call at most. Every job also carries its address on Joobs, in case you'd rather link out than build your own detail pages.
The apply route takes a multipart submission: first name, last name, email, message, and a CV in PDF, DOC or DOCX up to 10 MB. It answers with an application id.
## The key, and what it opens
Authentication is one header, x-api-key. The key belongs to a single organization: it reaches your jobs and nothing else, and no other key reaches yours. There is no organization id to pass in the request, so there is no way to aim at the wrong one.
Joobs never stores the key itself, only its fingerprint. Revoking is immediate: a disabled key fails on the very next call.
The default quota is a thousand requests a day. Every response tells you what's left, in the X-RateLimit-Limit and X-RateLimit-Remaining headers — enough to watch your usage without counting yourself.
Use the key from your server, never from the browser. A key sitting in client-side JavaScript is a public key: any visitor can read it in the developer tools. Go through a route on your own site that calls the API and returns the result.
## What the API doesn't do yet
Four limits are worth knowing before you write the first line of code, because they shape how you build the page.
- Filtering happens on your side. The list takes pagination, not filters by role, location or contract type. You fetch your jobs and sort them on your own site — which is faster anyway once you have a few dozen.

- The API reads jobs, it doesn't write them. Publishing, editing and unpublishing stay in Joobs. The only route that writes is the application one.

- There are no push notifications yet. Nothing tells your site that a job changed; you call, at whatever interval suits you.

- The candidate gets no acknowledgement from Joobs. Showing the confirmation message is your form's job. The notification does go out, but to you, not to them.


## What it changes for hiring
A developer sees an integration. The person doing the hiring gets three concrete things.
Your jobs finally work for your domain. Job pages rendered by your site are pages of your site: they index under your name, they feed your ranking, and they stay when you change tools.
The candidate stops switching sites halfway through. The visual break between your careers page and the application form is a classic drop-off point. It disappears when you render everything.
Applications still land in one place. An application submitted through the API arrives in your usual Joobs dashboard, with its email notification and its CV, exactly like one submitted on Joobs. It just carries a source label, so you know where it came from.
A good integration is invisible. A visitor should never be able to work out which tool runs your job listings — not by looking at the page, and not by applying.
## Where to start
The full documentation — authentication, route reference, data schema, limits — is available on the developer page. It carries the request examples and the detail of every field returned.
API access is part of the Premium plan. The key is issued with our team, who tie it to your organization and set your quota.
Do you need a developer to integrate the API?Yes, but not for long. For a standard careers page — the job list and a detail page — count half a day for whoever already looks after your site. The API returns plain JSON, with no particular dependency and no library to install.
What happens when you unpublish a job?It disappears from the response on the very next call. If your site caches the results — which we recommend, five to fifteen minutes — the job stays visible until the cache expires. That is the only lag there is.
Where do API applications go, and who processes the data?Into your Joobs dashboard, alongside all the others. The CV is stored in the same place, the notification goes to the same address, and the candidate account is created — or reused if the person has applied to you before. Nothing passes through an extra third-party service.
Is the API included in my subscription?It is part of the Premium plan, together with syncing to your ATS and to your website. If you are on another plan, talk to our team: the key and the quota are set up at the same time.

---
*Source: [Joobs.be](https://joobs.be/en/blog/joobs-api-your-jobs-on-your-own-site)*
