API: verschil tussen versies

Uit NORA Online
Naar navigatie springen Naar zoeken springen
(eerste versie voor Lancelot)
(→‎Waarom zijn API's van belang?: enters ipv breaks, geeft betere bladspiegel)
(41 tussenliggende versies door 7 gebruikers niet weergegeven)
Regel 1: Regel 1:
{{Placeholder}}{{Sjabloon:APIs|auteurs=[[API-community]]|feedback=|onderdeel van=Thema's}}
{{Agenda categorie| APIs}}{{Nieuwsblok categorie|APIs}}
<noinclude>[[Categorie:Landingspagina's thema]]</noinclude>


{{#Element:
==Wat is een Application Programming Interface (API)?==
|Elementtype=Thema
[https://nl.wikipedia.org/wiki/Application_programming_interface Wikipedia] beschrijft: ''Een API is een verzameling definities op basis waarvan een computerprogramma kan communiceren met een ander computerprogramma of onderdeel (meestal in de vorm van bibliotheken). Vaak vormen API's de scheiding tussen verschillende lagen van abstractie, zodat applicaties op een hoog niveau van abstractie kunnen werken en het minder abstracte werk uitbesteden aan andere programma's. Hierdoor hoeft bijvoorbeeld een tekenprogramma niet te weten hoe het de printer moet aansturen, maar roept het daarvoor een gespecialiseerd stuk software aan in een bibliotheek, via een afdruk-API.''
|Beschrijving=tekst
 
tekst
Een goede aanvulling hierop komt van [https://computerworld.nl/development/74796-wat-is-een-api Computerworld]: ''Het aardige van een API is dat deze niet voor een gebruiker van een softwarepakket of bezoeker van een website zichtbaar is. De API werkt op de achtergrond en doet daar geruisloos zijn werk door met andere softwareprogrammatuur of het besturingssysteem te communiceren.''
tekst
 
tekst
Een API werkt dus als een interface tussen 2 of meer computerprogramma's (software), staat daardoor nooit op zichzelf, is dus een bijzondere bouwsteen en wordt beschouwd als deel van de [[Applicatielaag|applicatielaag]] van het NORA [[vijflaagsmodel]]. <br />
tekst
Bekijk ook eens dit filmpje van Mulesoft van 3,5 minuut op [https://www.youtube.com/watch?v=s7wmiS2mSXY youtube.com: What is an API?]
tekst
 
tekst
==Waarom zijn API's van belang?==
|Relevantie=Tekst voor onder de kop "Waarom is API van belang?"
API’s gaan ons in staat stellen om de technische kant van het uitwisselen van gegevens stukken eenvoudiger te maken, met name ook over de grenzen van (overheids)organisaties heen. Dat kan als we API’s gaan ontwerpen met open standaarden (inrichtings-onafhankelijk), zodat ze te gebruiken zijn in verschillende processen of ketens. En als we die API’s publiekelijk gaan publiceren, zodat ze eenvoudig te hergebruiken zijn.
tekst
 
tekst
Door het bundelen van onze ontwerp- en ontwikkelkennis kunnen we processen en ketens ontlasten doordat die API’s kunnen hergebruiken en ze niet zelf hoeven te ontwikkelen en bouwen.
tekst
 
tekst
Een belangrijke voorwaarde voor deze technische gegevensuitwisseling is, dat vanuit het bestuur en management draagvlak moet bestaan voor verdergaande samenwerking tussen de betrokken (overheids)organisaties: de eigen "interne" processen zullen aangepast moeten worden aan overkoepelende keten-processen, waarbij de afhankelijkheden tussen die organisaties toenemen en de (formele) verantwoordelijkheidsverdeling opnieuw in balans moet worden gebracht. Overigens kunnen API's ook goed worden toegepast ''binnen'' een organisatie.
|Afbeelding=voorbeeldplaatje.png
 
|Alt-tekst=Voorbeeldplaatje met een kruis en de tekst "voeg hier een relevant plaatje toe. (eerst uploaden naar de wiki, dan naam invullen waar nu voorbeeldplaatje.png staat)
Traditionele applicaties bestaan meestal uit grote brokken functionaliteit, die alleen beschikbaar zijn binnen de beveiligde grenzen van een organisatie. Deze applicaties zijn voorheen vooral gemaakt om een geheel proces te ondersteunen. Ze zijn vaak niet ontworpen met generieke software-componenten die door verschillende applicaties kunnen worden hergebruikt. Daardoor bevatten ze vaak functionaliteit die ook in andere applicaties voorkomen, zoals voor Identity & Access Management, Beveiliging en Privacy.
|Onderschrift=Zet hier een onderschrift neer
 
|Px=400
Door nu achteraf generieke software-componenten te ontwikkelen -bijvoorbeeld in de vorm van API’s- kunnen we die traditionele applicaties verbouwen en mede samenstellen uit diverse kleinere software-componenten: daardoor ontstaat een meer flexibele applicatie.
|Direct aan de slag=Met welke wettelijke- en beleidskaders moet je rekening houden? Wat is er vanuit architectuur al geregeld qua principes, bouwstenen en standaarden, waardoor je hergebruik en een vliegende start kunt maken?
</div>
|Links direct aan de slag=: → [[voeg hier paginanaam interne link toe]]
<div id="Functies" style="overflow:hidden;">
: → [[voeg hier paginanaam interne link toe]]
{| style="float:left; background-color:#E5F0F9; margin-right:8px; border:none; width:250px"
: → [[voeg hier paginanaam interne link toe]]
|-
: → [[voeg hier paginanaam interne link toe]]
!Direct aan de slag
|Samen leren &amp; zoeken=Er zijn diverse overheidsorganisaties die al bezig zijn met dit onderwerp. U kunt van hun ervaringen leren en direct deelnemen aan de lopende discussies.
|-
|Links samen leren &amp; zoeken=: → Organisatie X [mailto:contactpersoon@organisatie.nl contactpersoon@organisatie.nl]
| style="border:none; padding:5px 0 7px 0; margin-right:0px; vertical-align:top; height:400px" |
: → Voorbeeld X [https://www.nttigvoorbeeld,nl nuttig voorbeeld]
Wat is op Nationaal niveau geregeld om het gebruik van API's door (overheids)organisaties optimaal te benutten?<br />
|Links meer informatie=: → [https://www.externelink.nl naam link]
Denk hierbij aan:
: → [https://www.externelink.nl naam link]
* [https://docs.geostandaarden.nl/api/API-Strategie/ De Nederlandse API-strategie], die de kaders omvat voor het gebruik van API’s bij de Overheid
|Meer informatie=Nuttige links
* [https://developer.overheid.nl/ developer.overheid.nl (DON)], de Nationale publicatieplek voor API's van de Nederlandse Overheid
|Expertgroep=nog geen groep
* de architectuurafspraken op NORA
|Expertgroep tekst=Dit thema wordt beheerd door experts uit overheid en marktpartijen:
 
|Contactpersoon=Lancelot Schellevis
Wat moet daarnaast nog meer worden geregeld? Welke behoefte bestaat bij de voorlopers? En bij de volgers?<br />
|Contactgegevens=[mailto:lancelot.schellevis@logius.nl lancelot.schellevis@logius.nl]
Denk aan voorzieningen zoals API-platform RWS, API-platform van Common Ground, investeringsgelden enz.
|Heeft beheerder=Forum Standaardisatie
 
}}
Wat kunnen we her-gebruiken van Internationale afspraken en voorzieningen?<br />
Denk aan wat Europa aan het doen is met API’s (verkenningen, voorzieningen e.d.)<br />
 
Wat doe je als Enterprise Architect om de architectuur van jouw organisatie aan te passen opdat ook met API’s kan worden gewerkt?<br />
{{Pijl|Zie [[Aanbevelingen voor API's in de Enterprise Architectuur]] }}
 
Wat doe je als Business- of Solution-architect om API’s te verwerken in het ontwerp van een (overheids)dienst?<br />
{{Pijl|Zie [[Aanbevelingen voor API's in het ontwerp van een dienst]] }}
 
|-
|[[Image:puzzelstuk.png|250px]]
|}
{| style="float:left; background-color:#E5F0F9; margin-right:8px; border:none; width:250px"
|-
!Samen leren & zoeken
|-
| style="border:none; padding:5px 0 7px 0; margin-right:0px; vertical-align:top; height:400px" |
Er zijn diverse (overheids)organisaties die zelf API’s ontwikkelen en publiceren voor gebruik door derden. We hebben een overzicht gemaakt van bij ons bekende overheidsorganisaties met contact-informatie. Bij hen kan je vragen hoe zij e.e.a. hebben aangepakt om hun dienstverlening te verbeteren door het werken met API’s.<br />
Zie [[API-contactpersonen]]
<br /><br />
Frank Terpstra (Geonovum) is trekker van het [https://www.geonovum.nl/themas/kennisplatform-apis Kennisplatform APIs]
<br /><br />
Het Forum Standaardisatie heeft bijeenkomsten gehouden over [https://www.forumstandaardisatie.nl/thema/application-programming-interfaces-api de API-economie].<br /><br />
Ken je nog een overleg binnen de overheid dat zich bezig houdt met API’s? <br />
Neem dan contact op met [[NORA Beheer]].
|-
|[[Image:gereedschap.png|250px]]
|}
{| style="float:left; background-color:#E5F0F9; margin-right:8px; border:none; width:250px"
|-
!Meer informatie & Contact
|-
| style="border:none; padding:5px 0 7px 0; margin-right:0px; vertical-align:top; height:400px"  |
Nuttige linkjes:
:→ Binnen de Omgevingswet is een API-strategie opgesteld: [https://aandeslagmetdeomgevingswet.nl/digitaal-stelsel/technisch-aansluiten/standaarden/api-uri-strategie API-strategie & URI-strategie Digitaal Stelsel Omgevingswet]<br />
 
: → De meeste moderne API's zijn webgebaseerd (en doorgaans in JSON): daarom is het nuttig om ook over de URI's afspraken te maken. Zie daarom ook: [http://www.pilod.nl/wiki/Boek/URI-strategie 'Aanzet tot een nationale URI-Strategie voor Linked Data van de Nederlandse overheid' bij Pilod]<br />
 
: → Ondanks "de Brexit" kunnen we toch goed leren van onze buren. Zie [https://www.gov.uk/government/news/hmrc-launches-ambitious-api-strategy API-strategie van Britse belastingdienst voor derden]
 
: → Een EU-publicatie 2020 [https://ec.europa.eu/jrc/en/publication/eur-scientific-and-technical-research-reports/application-programming-interfaces-governments-why-what-and-how API's in Governments: Why, what and how]
 
Dit thema wordt beheerd door experts van de overheid en marktpartijen:
: → [[Expertgroep API-architectuur]]
Contactpersoon is Peter Haasnoot,
: → {{Maillink|to=peter.haasnoot@logius.nl|cc=nora@ictu.nl|subject=contact met betrekking tot API's|text=peter.hasnoot@logius.nl}}
 
|-
|[[Image:contact.png|250px]]
|}
<div style="float:left; margin-right:2px; max-width:380px" class="hoofdpagina">
 
</div>
</div>
<references />
<noinclude>[[Categorie:APIs]]
{{Domein toevoegen|Domein Generiek}}
[[Laag binnen vijflaagsmodel::4|  ]]</noinclude>

Versie van 3 feb 2023 13:30


Deze pagina is in opbouw. Kom later terug om het resultaat te zien of neem contact op met nora@ictu.nl als je mee wilt werken aan de eerste concepten.

Wat is een Application Programming Interface (API)?[bewerken]

Wikipedia beschrijft: Een API is een verzameling definities op basis waarvan een computerprogramma kan communiceren met een ander computerprogramma of onderdeel (meestal in de vorm van bibliotheken). Vaak vormen API's de scheiding tussen verschillende lagen van abstractie, zodat applicaties op een hoog niveau van abstractie kunnen werken en het minder abstracte werk uitbesteden aan andere programma's. Hierdoor hoeft bijvoorbeeld een tekenprogramma niet te weten hoe het de printer moet aansturen, maar roept het daarvoor een gespecialiseerd stuk software aan in een bibliotheek, via een afdruk-API.

Een goede aanvulling hierop komt van Computerworld: Het aardige van een API is dat deze niet voor een gebruiker van een softwarepakket of bezoeker van een website zichtbaar is. De API werkt op de achtergrond en doet daar geruisloos zijn werk door met andere softwareprogrammatuur of het besturingssysteem te communiceren.

Een API werkt dus als een interface tussen 2 of meer computerprogramma's (software), staat daardoor nooit op zichzelf, is dus een bijzondere bouwsteen en wordt beschouwd als deel van de applicatielaag van het NORA vijflaagsmodel.
Bekijk ook eens dit filmpje van Mulesoft van 3,5 minuut op youtube.com: What is an API?

Waarom zijn API's van belang?[bewerken]

API’s gaan ons in staat stellen om de technische kant van het uitwisselen van gegevens stukken eenvoudiger te maken, met name ook over de grenzen van (overheids)organisaties heen. Dat kan als we API’s gaan ontwerpen met open standaarden (inrichtings-onafhankelijk), zodat ze te gebruiken zijn in verschillende processen of ketens. En als we die API’s publiekelijk gaan publiceren, zodat ze eenvoudig te hergebruiken zijn.

Door het bundelen van onze ontwerp- en ontwikkelkennis kunnen we processen en ketens ontlasten doordat die API’s kunnen hergebruiken en ze niet zelf hoeven te ontwikkelen en bouwen.

Een belangrijke voorwaarde voor deze technische gegevensuitwisseling is, dat vanuit het bestuur en management draagvlak moet bestaan voor verdergaande samenwerking tussen de betrokken (overheids)organisaties: de eigen "interne" processen zullen aangepast moeten worden aan overkoepelende keten-processen, waarbij de afhankelijkheden tussen die organisaties toenemen en de (formele) verantwoordelijkheidsverdeling opnieuw in balans moet worden gebracht. Overigens kunnen API's ook goed worden toegepast binnen een organisatie.

Traditionele applicaties bestaan meestal uit grote brokken functionaliteit, die alleen beschikbaar zijn binnen de beveiligde grenzen van een organisatie. Deze applicaties zijn voorheen vooral gemaakt om een geheel proces te ondersteunen. Ze zijn vaak niet ontworpen met generieke software-componenten die door verschillende applicaties kunnen worden hergebruikt. Daardoor bevatten ze vaak functionaliteit die ook in andere applicaties voorkomen, zoals voor Identity & Access Management, Beveiliging en Privacy.

Door nu achteraf generieke software-componenten te ontwikkelen -bijvoorbeeld in de vorm van API’s- kunnen we die traditionele applicaties verbouwen en mede samenstellen uit diverse kleinere software-componenten: daardoor ontstaat een meer flexibele applicatie.

Direct aan de slag

Wat is op Nationaal niveau geregeld om het gebruik van API's door (overheids)organisaties optimaal te benutten?
Denk hierbij aan:

Wat moet daarnaast nog meer worden geregeld? Welke behoefte bestaat bij de voorlopers? En bij de volgers?
Denk aan voorzieningen zoals API-platform RWS, API-platform van Common Ground, investeringsgelden enz.

Wat kunnen we her-gebruiken van Internationale afspraken en voorzieningen?
Denk aan wat Europa aan het doen is met API’s (verkenningen, voorzieningen e.d.)

Wat doe je als Enterprise Architect om de architectuur van jouw organisatie aan te passen opdat ook met API’s kan worden gewerkt?

Wat doe je als Business- of Solution-architect om API’s te verwerken in het ontwerp van een (overheids)dienst?

Puzzelstuk.png
Samen leren & zoeken

Er zijn diverse (overheids)organisaties die zelf API’s ontwikkelen en publiceren voor gebruik door derden. We hebben een overzicht gemaakt van bij ons bekende overheidsorganisaties met contact-informatie. Bij hen kan je vragen hoe zij e.e.a. hebben aangepakt om hun dienstverlening te verbeteren door het werken met API’s.
Zie API-contactpersonen

Frank Terpstra (Geonovum) is trekker van het Kennisplatform APIs

Het Forum Standaardisatie heeft bijeenkomsten gehouden over de API-economie.

Ken je nog een overleg binnen de overheid dat zich bezig houdt met API’s?
Neem dan contact op met NORA Beheer.

Gereedschap.png
Meer informatie & Contact

Nuttige linkjes:

→ Binnen de Omgevingswet is een API-strategie opgesteld: API-strategie & URI-strategie Digitaal Stelsel Omgevingswet
→ De meeste moderne API's zijn webgebaseerd (en doorgaans in JSON): daarom is het nuttig om ook over de URI's afspraken te maken. Zie daarom ook: 'Aanzet tot een nationale URI-Strategie voor Linked Data van de Nederlandse overheid' bij Pilod
→ Ondanks "de Brexit" kunnen we toch goed leren van onze buren. Zie API-strategie van Britse belastingdienst voor derden
→ Een EU-publicatie 2020 API's in Governments: Why, what and how

Dit thema wordt beheerd door experts van de overheid en marktpartijen:

Expertgroep API-architectuur

Contactpersoon is Peter Haasnoot,

peter.haasnoot@logius.nl
Contact.png