Werken aan Boord / Documentatie

Vacatures in je eigen toepassing.

Gebruik de openbare API vanuit JavaScript of Python. Behoud de vacaturelink en de oorspronkelijke bron.

Lees als Markdown ↗

JavaScript · Node.js 22+

Openbare GET-verzoeken ondersteunen CORS. Gebruik textContent om vacaturetekst in een webpagina te tonen.

Voorbeeld
const url = new URL("https://werkenaanboord.nl/v1/jobs");
url.search = new URLSearchParams({ role: "schipper", limit: "5" });
const response = await fetch(url, { signal: AbortSignal.timeout(10000) });
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const { data, next_cursor } = await response.json();
for (const job of data) console.log(job.title, job.job_url);
console.log("Volgende pagina:", next_cursor);

Python · standaardbibliotheek

Voorbeeld
import json
from urllib.parse import urlencode
from urllib.request import urlopen

query = urlencode({"role": "schipper", "limit": 5})
with urlopen("https://werkenaanboord.nl/v1/jobs?" + query, timeout=10) as response:
    result = json.load(response)
for job in result["data"]:
    print(job["title"], job["job_url"])

Gegevens actueel houden

updated_since is geen verwijderingslog. Een gesloten vacature komt niet meer voor in openbare resultaten.

Haal gegevens bijvoorbeeld ieder uur op. Bewaar eerder opgehaalde gegevens wanneer een aanvraag faalt.

  1. Lees /v1/taxonomy voor vaste termen.
  2. Haal alle pagina’s op via next_cursor. Houd dezelfde filters aan.
  3. Werk bestaande records bij op basis van id.
  4. Gebruik updated_since voor gewijzigde actieve vacatures.
  5. Vergelijk regelmatig met een volledige lijst om gesloten of verwijderde vacatures weg te halen.

Beschikbaarheid in je planning

Een match dekt de hele periode. Een boekingsverzoek reserveert niet automatisch een werknemer.

Gebruik POST /booking-requests met OAuth en een idempotentiesleutel om een verzoek vast te leggen.

Voorbeeld
curl --fail-with-body "https://werkenaanboord.nl/v1/availability?role=schipper&needed_from=2026-10-12&needed_to=2026-10-19"