Waterschap Brabantse Delta · R&D-lab · research-artifact
GET https://lab.wbd-rd.nl/api/winnovatie/feed, openbaar (geen authenticatie), live uit de database; peildatum 2026-07-20: 105 projecten (56 R&D + 49 innovatieportfolio).id; alle feed-URL's zijn id-gebaseerd en blijven geldig, ook als titels wijzigen.phase.source-vlag (mens-bevestigd vs. automatisch afgeleid).Brabantse Delta onderhoudt al zijn innovatie- en onderzoeksprojecten in HELIX (de bron-van-waarheid). In plaats van die projecten met de hand op winnovatie.nl in te voeren, stelt HELIX ze beschikbaar als een gestructureerde feed. Een afnemer haalt die feed periodiek op en plaatst of werkt de bijbehorende initiatieven op Winnovatie bij. De feed bevat uitsluitend informatie die nu ook al openbaar op HELIX staat — nooit budgetten of besparingen.
Het koppelvlak is één publieke, ongeauthenticeerde JSON-endpoint die live uit de HELIX-database leest.[1] Een afnemer hoeft niets te pushen: hij haalt periodiek op en vergelijkt tijdstempels.
count in de feed is leidend)De respons is zelf-documenterend: naast projects[] bevat hij source ("HELIX"), origin, generatedAt, count en een phaseLegend die de fase-semantiek uitlegt — een afnemer heeft geen losse specificatie nodig om de feed te begrijpen.
De opnameregel is bewust simpel en daarmee sluitend: elk project dat op HELIX de status "gepubliceerd" heeft en niet gearchiveerd is, zit in de feed. Dat omvat:
portfolio:"rnd") én het innovatieportfolio (portfolio:"innovation");parentSlug:null) als hun deelprojecten (parentSlug verwijst naar het spoor);stage:"main") als de pijplijn van toekomstige ideeën (stage:"future").Wordt op HELIX een nieuw spoor of deelproject gepubliceerd, dan staat het bij de eerstvolgende ophaalronde automatisch in de feed — er is geen registratie- of exportstap. Wat er niet in komt: concepten (nog niet gepubliceerd), gearchiveerde sporen, budgetten/besparingen (staan nergens publiek), en interne research-artifacts die als privé zijn gemarkeerd — die worden uit links[] gefilterd voordat de feed de deur uit gaat.
id is de sleutelElk project draagt een permanent id (bv. prj_evolv, inv_…, invtrk_…). Gebruik dat id als synchronisatiesleutel aan HWH-zijde. De url in de feed is de canonieke, id-gebaseerde HELIX-pagina en blijft geldig als een titel wijzigt; daarnaast bestaat voor elk project de permanente korte vorm https://lab.wbd-rd.nl/p/<id>. De slug (leesbare naam) reist mee als weergaveveld, maar kan wijzigen — sleutel er niet op.
Elk item in projects[] bevat:
| Veld | Betekenis |
|---|---|
id, slug, url | permanente sleutel, leesbare naam, canonieke HELIX-pagina (absoluut) |
title, summary | titel en korte omschrijving |
bodyMd, bodyHtml | volledige tekst, als Markdown én als gerenderde HTML |
portfolio | rnd (R&D-lab) of innovation (innovatieportfolio) |
strand, strandLabel | A = Project (duurzaam), B = Innovatie (experimenteel) |
stage | main (hoofdtraject) of future (pijplijn) |
lifecycle | active / planned / ended |
phase | onderzoeksfase {key, label, source}, 1-op-1 met Winnovatie (zie §4) |
lead | projectleider (naam), indien ingevuld |
partner | samenwerkingspartner als object {key, name}, of null |
students, studentsWanted | aantal studenten en gezochte profielen (studentenpijplijn) |
tags[] | vrije labels, incl. eventuele fase:<…>-labels |
links[] | {kind, label, url, public} — absolute URL's; public:false markeert links naar interne systemen (bv. git), die kan een afnemer overslaan |
images[] | {url, caption} — absolute URL's naar openbaar beeldmateriaal |
parentSlug | null voor een spoor; anders de slug van het spoor waar dit deelproject op ligt |
startDate, endDate | looptijd (ISO-8601), indien bekend |
createdAt, updatedAt | aanmaak- en laatste wijzigingsmoment (ISO-8601) — de basis voor synchronisatie |
De feed is altijd actueel. Een afnemer hoeft alleen periodiek te pollen en te vergelijken op tijdstempel:
updatedAt, gesleuteld op id.updatedAt (of een onbekende id) is nieuw of gewijzigd → aanmaken/bijwerken op Winnovatie. Een id die uit de feed verdwijnt, is op HELIX gedepubliceerd of gearchiveerd → op Winnovatie verbergen of laten staan, naar afspraak.?updatedSince=<ISO-datum> toe zodat alleen wijzigingen worden teruggegeven, en/of een RSS/Atom-variant zodat de feed met een standaard feedlezer te volgen is. aanname dit is nog niet gebouwd — het blijft een optie totdat HWH een voorkeur uitspreekt.curl -s "https://lab.wbd-rd.nl/api/winnovatie/feed?stage=main" \
| jq '.projects[] | {id, title, fase: .phase.key, spoor: (.parentSlug // "— is zelf een spoor"), updatedAt}'
Naar het formulier "Initiatief toevoegen" op winnovatie.nl:
| Winnovatie-veld | HELIX-feedveld | Opmerking |
|---|---|---|
| Titel van het project | title | — |
| Projectbeschrijving (max. 300 tekens) | summary | afkappen op 300 tekens |
| Projectleider | lead | naam van een persoon; kan leeg zijn |
| Projectteam | partner.name / vrij | samenwerkende organisaties |
| Externe partners | partner.name | optioneel; partner is een object {key, name} |
| Organisatie(s) | vast | Brabantse Delta |
| ProjectFase | phase.key | 1-op-1, zie §4.1 |
| Status (Lopend/Afgerond/Gestopt) | lifecycle | active→Lopend, planned→Lopend (nog te starten), ended→Afgerond; HELIX kent geen aparte "Gestopt" |
| Thema / Taakveld / Technologie | tags | best passend matchen |
| Omschrijving (uitgebreid) | bodyHtml | volledige tekst (of bodyMd voor wie liever Markdown verwerkt) |
| Afbeelding | images[0].url | optioneel |
phaseLegend in elke feed-respons.onderzoek → Onderzoek/verkenning
poc → Proof of Concept
pilot → Pilot
implementatie → Implementatie/uitrol
Elk project draagt phase.source: tag betekent dat de fase door een mens is bevestigd (via een fase:<…>-label in HELIX); inferred is een veilige automatische inschatting die overschreven mag worden. Peildatum 2026-07-20: 5 van de 105 projecten dragen een mens-bevestigde fase; de rest is afgeleid uit levenscyclus, stage en strand.
Winnovatie/METT kan zelf geen externe feed inlezen.[2] Om dit te automatiseren is één van beide nodig:
Praktische keuze voor de importer: wie álle trajecten wil tonen neemt de hele feed; wie alleen de hoofdtrajecten wil, filtert op parentSlug == null (de sporen) — deelprojecten kunnen dan als beschrijving of link onder het spoor mee.
aanname Welke van de twee routes haalbaar is, hangt af van wat HWH aan hun kant kan bouwen of onderhouden; dit document doet geen voorkeursuitspraak en is nog niet met HWH afgestemd op implementatiedetails. Wij denken graag mee over de eenvoudigste vorm. De feed blijft in beide gevallen het vaste, stabiele koppelvlak.
/api/winnovatie/feed), R&D-lab Waterschap Brabantse Delta. lab.wbd-rd.nl specificatie 2026-06-27, herverifieerd tegen de live feed en de broncode op 2026-07-20portfolio, stage) live getest.src/routes/api/winnovatie/feed + src/lib/server/winnovatie.ts in de HELIX-repo