developer.overheid.nl

Ontwikkelaarsportaal van de Nederlandse overheid

Ga naar hoofdinhoud

14 berichten getagd met "API Design"

Het ontwerp en de architectuur van API's

Laat alle tags zien

De BAG-API: van technische ontsluiting naar productgericht ontwikkelen

· 7 minuten leestijd
Kennisplatform API's
Strategische en tactische vraagstukken rond het ontwikkelen van API's

Van een aanvraag voor een bouwvergunning tot de kaarten in je navigatiesysteem. De Basisregistratie Adressen en Gebouwen (BAG) is een enorme publieke gegevensbron die dagelijks meer dan tien miljoen keer wordt geraadpleegd. Dit gebeurt onder andere via de BAG-API van het Kadaster, inmiddels een van de meest gebruikte API's in het overheidsdomein.

GraphQL onder de loep (deel 4): wanneer wel, en wanneer niet?

· 17 minuten leestijd
Joost Farla
Implementatie ondersteuner - developer.overheid.nl

GraphQL onder de loep

In de eerste drie delen van deze serie hebben we GraphQL leren kennen als een getypeerde querytaal met een fundamenteel ander model dan REST (deel 1), zagen we dat de flexibele bevraging zowel de grote kracht als een serieuze beheeropgave is (deel 2) en liepen we zes ontwerpuitdagingen langs die in de praktijk bepalen hoeveel werk een GraphQL-API werkelijk kost (deel 3).

In dit slotdeel komen we bij de vraag waar het allemaal om draait: wanneer is GraphQL een passende keuze, en wanneer ben je met REST beter af? Er zijn omstandigheden waarin het ene model aantoonbaar beter past dan het andere.

GraphQL onder de loep (deel 3): zes uitdagingen bij schema-ontwerp

· 10 minuten leestijd
Joost Farla
Implementatie ondersteuner - developer.overheid.nl

GraphQL onder de loep

In deel 2 zagen we dat de flexibiliteit van GraphQL een beheeropgave met zich meebrengt. In dit deel kijken we naar de ontwerpkant. De rode draad: veel zaken die je in REST oplost met mechanismen van HTTP (headers, statuscodes, media types, middleware op routes) moeten in GraphQL expliciet gemodelleerd worden in het schema en de resolvers. Dat maakt schema's en queries complexer dan de voorbeelden uit deel 1 doen vermoeden. We behandelen zes uitdagingen die je in vrijwel elk GraphQL-project van enige omvang tegenkomt.

GraphQL onder de loep (deel 2): flexibel bevragen, en wat dat kost

· 11 minuten leestijd
Joost Farla
Implementatie ondersteuner - developer.overheid.nl

GraphQL onder de loep

In het eerste deel van deze serie maakten we kennis met GraphQL: een getypeerde querytaal waarmee de client exact bepaalt welke data hij ontvangt. Die flexibiliteit is de belangrijkste reden om voor GraphQL te kiezen. In dit deel zetten we eerst de voordelen op een rij en kijken we daarna naar de keerzijde: wat betekent het voor de performance en beschikbaarheid van je API als elke client willekeurige queries kan samenstellen? En vooral: hoe stel je daar grenzen aan?

GraphQL onder de loep (deel 1): een kennismaking

· 7 minuten leestijd
Joost Farla
Implementatie ondersteuner - developer.overheid.nl

GraphQL onder de loep

In gesprekken over API's binnen de overheid komt GraphQL regelmatig voorbij. Sommige organisaties experimenteren ermee, grote internationale platformen zoals GitHub en Shopify bieden er publieke API's mee aan, en tegelijkertijd is het binnen de Nederlandse overheid nog nauwelijks zichtbaar: het API-register op deze site is bewust REST-only, en de REST API Design Rules (ADR) zijn, de naam zegt het al, geschreven voor REST.

Reden genoeg om GraphQL eens grondig onder de loep te nemen. In een serie van vier blogposts verkennen we wat GraphQL is, wat het oplost, welke uitdagingen het met zich meebrengt en, als kernvraag, wanneer je het wel en wanneer je het beter niet kunt gebruiken.

Van OpenAPI-specificatie naar startbare API-app

· 6 minuten leestijd
Matthijs Hovestad
Senior Backend Developer - developer.overheid.nl

Abstracte weergave van het proces

Een goede API begint niet bij de controller, maar bij het contract. In de Bouw een API-tutorial laten we zien hoe je vanuit een gevalideerde OpenAPI Specification servercode genereert. Tot nu toe lag de nadruk daar vooral op een Express-template als demonstratie. Inmiddels hebben we de template-repository uitgebreid met meer runtimes en programmeertalen.

Dat klinkt misschien als een kleine toolingstap, maar het raakt een praktisch probleem dat veel teams herkennen: hoe kom je van een nette OAS naar een applicatie die dezelfde afspraken ook echt afdwingt?

AsyncAPI + CloudEvents; implementatie van asynchrone oplossingen

· 10 minuten leestijd
Floris Deutekom
Implementatie ondersteuner - developer.overheid.nl

In de voorgaande blogposts hebben we gekeken naar wat AsyncAPI is, hoe het zich in de praktijk gedraagt en in welke situaties het daadwerkelijk waarde toevoegt (of juist niet). Daarmee staat er een grove leidraad voor wanneer AsyncAPI te implementeren, en is de kernvraag van de werkgroep in zekere mate beantwoord. Dit is natuurlijk niet voldoende. Los van dat de kernvraag van de werkgroep nog een lopende discussie is lijkt het logische vervolg om te gaan kijken naar hoe dit alles daadwerkelijk geïmplementeerd kan/moet worden. In deze blogpost heb ik gepoogd om vast een stukje vooruit te kijken, met als kern de vraag: hoe zorg je ervoor dat events niet alleen goed beschreven zijn, maar ook consistent en interoperabel worden uitgewisseld tussen systemen?

Wij waren op FOST 2026: een terugblik

· 16 minuten leestijd
Tom Ootes
Developer Advocate - developer.overheid.nl
Dimitri van Hees
Product Owner - developer.overheid.nl

"Frank Terpstra tijdens de plenaire opening." Frank Terpstra opende de API-track plenair.

Op 9 en 10 juni stonden wij twee dagen op FOST Amsterdam met onze eigen NL Gov-track. FOST (Future of Software Technologies) begon ooit als de wereldbekende API Days-conferentie, maar groeide uit tot een wereldwijd paraplu-event waaronder verschillende miniconferenties vallen; oprichter Mehdi Medjaoui maakte gekscherend de vergelijking van monoliet naar microservices. Naast API Days zelf vallen daar onder meer de conferenties van OpenAPI, JSON Schema, AsyncAPI, Green IO en deze editie dus ook wijzelf onder. Ons goedbezochte event bestond uit twee onderdelen: een API-track en een open source-track. Van ons eigen developer.overheid.nl-team betraden Dimitri, Tom, Frank, Floris en Joost het podium, samen met andere collega's uit binnen- en buitenland. Een terugblik op twee inspirerende dagen.

AsyncAPI: Wanneer wel? Wanneer niet?

· 12 minuten leestijd
Floris Deutekom
Implementatie ondersteuner - developer.overheid.nl

In een eerdere blogpost zijn de eerste bevindingen van de werkgroep AsyncAPI gedeeld na het uitwerken van een tweetal use cases waarin asynchrone API’s van OAS naar AsyncAPI werden omgezet. Daarbij werd duidelijk dat AsyncAPI op zichzelf geen wondermiddel is, maar vooral een krachtig instrument dat helpt om asynchrone communicatie inzichtelijk en beheersbaar te maken. De overkoepelende vraag is nog echter niet behandeld: wanneer gaan we het dan wel, en wanneer niet gebruiken? In deze blog ga ik dieper in op de situaties waarin AsyncAPI wel geschikt lijkt, en in welke situaties het van weinig toegevoegde waarde lijkt te zijn.

AsyncAPI: verkenning en eerste bevindingen

· 9 minuten leestijd
Floris Deutekom
Implementatie ondersteuner - developer.overheid.nl

De afgelopen periode hebben we binnen developer.overheid.nl samen met de Werkgroep AsyncAPI geëxperimenteerd met het toepassen van AsyncAPI in een aantal concrete casussen. Het doel van deze werkgroep is om te onderzoeken in welke mate AsyncAPI als nieuwe standaard voor de Nederlandse overheid geaccepteerd dient te worden. Niet zozeer om vast te stellen of het werkt, maar vooral om te begrijpen waar het in de praktijk daadwerkelijk waarde toevoegt, en waar het vooral extra werk introduceert zonder duidelijke meerwaarde. De technische werkbaarheid van de specificatie is door diverse use cases aangetoond; de vraag wanneer we het zouden moeten gebruiken is op dit moment dé kernvraag. Ik wil jullie in een reeks aan blogposts graag meenemen in waar de werkgroep nu staat m.b.t. AsyncAPI en hoe we de toekomst voor ons zien.