Als pure specialist op het vakgebied van integratie beseft ook Rubix dat API management niet meer is weg te denken in de wereld van IT. De successen van Uber, AirBnB en andere marktpartijen heeft tot deze nieuwe hype geleid. Maar is het wel terecht dit een hype te noemen? Of is de hype eigenlijk al voorbij en zitten we al in de volwassenheidsfase van dit concept en de bijbehorende producten? Na het lezen van dit artikel snap je wat API’s zijn, welk effect ze (kunnen) hebben op jouw organisatie en hoe je een succesvol API management programma opzet en uitvoert.
API’s
API’s hebben zelf geen waarde, maar ontlenen deze aan de functionaliteit en informatie die de API ontsluit. De API is namelijk de facilitator die het mogelijk maakt functionaliteit en informatie uit een onderliggend systeem in een groter verband te gebruiken. Hierdoor worden bedrijfsmiddelen beschikbaar gesteld ten gunste van ontwikkelingen in Mobile, Web en open data initiatieven.
Hoewel toepassingen van API’s voor iedere organisatie uniek zijn, worden API’s hoofdzakelijk gebruikt voor:
- Het openstellen van bedrijfsdata aan businesspartners en/of extern publiek
- Het enablen van externe developer communities
- Het standaardiseren van datastromen voor verschillende kanalen zoals Mobile en IoT
- Het mogelijk maken (empowering) van een partnerprogramma
Een API beschikbaar via een API platform biedt de mogelijkheid om bedrijfsdata en functionaliteit op een gestandaardiseerde manier beschikbaar te stellen. Het voordeel hiervan is dat de data en functionaliteit op een consistente manier geuit wordt. Dit betekent dat bijvoorbeeld een website gebruik maakt van de API om data te ontsluiten op de bedrijfswebsite. Tegelijk kan dezelfde publiek toegankelijke API mogelijkheden bieden voor externe partijen. Zo krijgt Google toegang tot de data voor specifieke diensten zoals Google Now en wordt aan een App developer de mogelijkheid geboden om met behulp van de API aanvullende innovatieve Apps en diensten te ontwikkelen. Bijvoorbeeld op het gebied van Mobile en IoT, waarbij developers tevens de mogelijkheid hebben om verschillende API’s te combineren met andere publiek toegankelijke API’s waardoor er nieuwe innovatieve producten en diensten ontstaan. Hiermee wordt een breder publiek bereikt en wordt er op een consistente manier gebruik gemaakt van vele digitale kanalen.
API management programma
Een succesvolle API implementatie middels een API management programma zorgt voor een enorme boost binnen de organisatie. Het maximaal benutten van de schat aan informatie, die binnen een organisatie opgesloten zit in de verschillende systemen, biedt de organisatie nieuwe kansen en business modellen, op het gebied van mobile- en webkanalen.
Een API management programma kan:
- Zorgen voor self-service voor app developers en app users
- Barrières wegnemen voor het aanboren van enterprise resources
- Samenwerking bevorderen tussen zowel interne- als externe partners
- De schaalbaarheid en security uitdagingen adresseren die het openstellen van IT assets met zich mee brengt.
Zodra een API management programma de API via een API platform beschikbaar stelt kunnen zowel interne als externe developers de API benaderen via het platform. Dit betekent veel meer dan alleen het kunnen aanroepen van de API. Ook zaken als documentatie, voorwaarden voor gebruik en security zijn onderdeel van het API management platform. Door dit op een gebruiksvriendelijke manier aan te bieden, ontstaat er een self-service mogelijkheid voor (externe) developers waarbij de support organisatie sterk wordt ontlast. Geen 1-op-1 afstemming meer over service contracten, legal terms en non-functional requirements wanneer een (externe) partij gebruik wil maken van bedrijfsinformatie.
De implementatie van een API management programma kent vanzelfsprekend ook uitdagingen en risico’s. Om deze te minimaliseren onderkent Rubix drie essentiële onderdelen binnen API management met ieder een eigen onderscheidende taak. De focus op deze combinatie zorgt ervoor dat het API management programma een succes wordt. Deze drie onderdelen zijn:
- De API’s zelf
- De developer portal
- Een API Gateway
Het is de developer portal die ervoor moet zorgen dat de API goed te vinden is, deze goed is gedocumenteerd en het proces om de API te gebruiken intuïtief is. Op deze developer portal kunnen toekomstige API gebruikers zich eenvoudig registreren om de API te gebruiken. Op de developer portal staat geen traditionele documentatie, maar live documentation in Swagger, code snippets en simpele use cases om de API al spelenderwijs te leren kennen. Een belangrijke metric voor de developer portal en de API is de TTFHW (Time To First Hello World), met andere woorden de tijd die benodigd is voor een eerste succesvolle aanroep van de API. TTFHW is een belangrijke indicator voor de complexiteit en toepasbaarheid en is een drijfveer voor het ontwerpen en prototypen van API’s en het inrichten van de developer portal. Bij het ontwerpen van de API en het opstellen van use-cases voor een API is naast de TTFHW de metric TTFPA (Time To First Profitable App) een belangrijke drijfveer.
Vanzelfsprekend is het belangrijk dat de API ook op technisch gebied goed functioneert. Dit is grotendeels de verantwoordelijkheid van de implementatie van de API zelf, maar op dit gebied vervult ook de API Gateway een belangrijke rol. De API Gateway zorgt namelijk voor security, caching en throtteling. Vanuit dat perspectief is het belangrijk om ook de infrastructuur van de API Gateway doordacht in te richten. Denk hierbij bijvoorbeeld aan het wel of niet positioneren van de API Gateway in de cloud om zo de interne infrastructuur van de organisatie te ontlasten en te beschermen. De API Gateway zorgt tevens voor een uniforme benadering van alle API’s binnen het landschap. Door de caching en security mogelijkheden biedt de API Gateway een belangrijke bescherming voor de rest van het IT landschap binnen een organisatie. Hierdoor is de API Gateway een erg belangrijk onderdeel van het API Management landschap.
Toegevoegde waarde van API’s
Naast de waarde van het effect van de API, brengt juist de combinatie met de andere onderdelen van API management de extra toegevoegde waarde. Wanneer alle onderdelen van het API management programma op elkaar zijn afgestemd, zal het actief gebruik toenemen. Op dat moment is het voor de gebruikers namelijk waardevol om hierin te investeren. Denk bijvoorbeeld aan een mobile App die gebruik maakt van een API. De app ontwikkelaars investeren tijd en geld om de API te leren kennen en deze optimaal te gebruiken. Een goede, duidelijke en stabiele API, die voortkomen uit een goed doordacht programma, komt hiervoor sneller en vaker in aanmerking. Daardoor wordt het rendement van de investering automatisch groter. Het is daarom essentieel om gedurende het API management programma een aantal belangrijke ontwerp beslissingen in acht te nemen.
- Welke assets worden beschikbaar gesteld?
- Hoe moet de API deze assets beschikbaar stellen?
- Wat voor soort applicatie kan er gebouwd worden met de API?
- Wat is de incentive voor (externe) developers om de API te gaan gebruiken?
- Hoe gaan applicaties die gebruik maken van de API business value brengen?
- Gaat de API rechtstreeks waarde opleveren, door bijvoorbeeld een pay-per-use policy?
- Welke limieten aan de beschikbaarheid moeten er gesteld worden, zodat een bepaald service level gegarandeerd kan blijven worden?
- Welke security en authorisatie is noodzakelijk?
In tegenstelling tot services in een SOA die voornamelijk op de interne organisatie zijn gericht, is het voor API’s belangrijk deze vanaf de het begin te ontwerpen op de developers die de API zullen gaan gebruiken. Een goede Developers Experience (DX) is een randvoorwaarde voor het succes van een API. Dit is uitermate complex omdat de gebruikers van een API veelal anonieme app developers zijn. Gezamenlijk een servicecontract afstemmen met de gebruiker is meestal niet mogelijk. En het is in de DX waar de kracht van de overige onderdelen (de developers portal en de API Gateway) uit het API management programma samen met de API elkaar versterken.
Door het in huis halen van de juiste kennis en expertise zal het API Management programma een succes worden. Er zal op een nieuwe manier waarde worden gecreëerd voor de organisatie door bedrijfsassets beschikbaar te stellen middels nieuwe kanalen. De support organisatie wordt ontlast doordat deze assets nu via een self-service manier beschikbaar worden gesteld. En de fundering is gelegd voor het optimaal benutten van een Mobile en IoT strategie.
Het moge duidelijk zijn, API Management is meer dan alleen bestaande interfaces en services beschikbaar stellen voor de buitenwereld. Zowel op technisch als conceptueel vlak zullen er belangrijke keuzes gemaakt moeten worden die van groot belang zijn voor het succes van het API management programma. Rubix heeft inmiddels ruime ervaring opgedaan bij het opzetten en begeleiden van API management programma’s en is tevens betrokken geweest bij leverancier selecties, het leveren van technisch advies en het opzetten van API Gateways en Developer portals alsook het implementeren van talloze API’s. Waarbij ook het opstellen van standards & guidelines tot een essentiële stap binnen het programma behoort. Rubix kan daarmee de rol als strategisch partner vervullen bij het uitvoeren van een API management programma. Ben je benieuwd of jouw organisatie voordeel kan halen uit het toepassingen van API’s, neem dan gerust contact met ons op voor een vrijblijvend kennismakingsgesprek en quick scan.