OAS en het Kennisplatform API s. Dimitri van Hees

Vergelijkbare documenten
Kadaster Data Platform

WFS 3.0 De geo-api van de toekomst. Linda van den Brink, Geonovum 13 februari #DataToBuildOn

AUTHENTICATIE. Version Date Author Description Mark Hameetman Initiele document

Delft-FEWS & Web Services

Medicatie controle. Mobiele app op basis van App Service en Azure AD

Een infra DevOps CI/CD straat

De briljantie van SPARQL. Dimitri van Hees, PLDN 26 november 2014

HDN DARTS WEB AUTHENTICATIE

Oracle Application Server Portal Oracle Gebruikersgroep Holland Oktober 2003

CBSOData Documentation

Geen webservice? Geen probleem!

Gestart als demo/research voor cloud-oplossing. Een Afslagveiling

Software Design Document

CBSOData Documentation

Web Application Security Hacking Your Way In! Peter Schuler & Julien Rentrop

LSP Connect en HL7v3

Onder de motorkap van Microsoft Azure Web Sites. Eelco Koster Software architect ORDINA

Volledige Digikoppeling connectiviteit. Foutberichten en foutafhandeling

SEO plan. Bart Janssen Semester 4 Fontys ICT & Media Design

Zelftest Java concepten

IAAS - QUICK START GUIDE

Test de REST. Testen van RESTful webservices met REST Assured. Bas Dijkstra

API Specification Doc

Enterprise. RESTful Webservices. serieus alternatief voor SOAP?

HTTP SMS API Technische Specificatie messagebird.com versie mei 2014

Website beoordeling cite4me.org

Website beoordeling feedbackvote.com

College Introductie

Aquo Domeintabellen Services (Aquo DS) Handleiding Webservice

Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 17 maart 2018 Nederlandse Linux Gebruikers Groep

Joomla! vs Facebook (en andere Social Media)

WHITEBOOK. Mule Patterns. Maart Auteur: Roger Goossens INTEGRATIE SPECIALIST

Portals & Open Source

Nederlands WMS - SLD Profiel. Versie 1.0

API Specificatie Doc

IBAN API. Simpel & krachtig. Documentatie : IBAN REST API Versie : 1.0 DE BETAALFABRIEK

Using Google Maps Engine Connector for QGIS

DOCKER & CONFIGURATIEMANAGEMENT. Docker Meetup

Handleiding Publicatie Module Enquête Systeem

Technical Note. API Beschrijving Aangetekend Mailen

Kennissessie INSPIRE. Algemene vereisten & architectuur Metadata View Services Download Services Ondersteuning vanuit Geonovum.

Documentatie Visual Rental Dynamics Web API

Organiseer uw verschillende SOAP services in één scenario

Gebruik van cryptografie voor veilige jquery/rest webapplicaties. Frans van Buul Inter Access

Website beoordeling zonetelechargement.com

Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 11 juli 2017 Linux User Group Nijmegen

Website beoordeling echoua.com

Masterclass FHIR. #medmijevent

Security web services

Oracle9iAS Portal. Agenda. Frank

Distributed Systems Architectures

en DMS koppelvlak Utrecht, 14 april 2011

Copyright IBS Nieuwbouw. Vereenvoudigd en versnelt Java ontwikkeling. Huub Cleutjens

Ervaringen met het opzetten van een MDD omgeving

Samengaan van Geo-informatie en Service Oriëntatie

Geo-data als onderdeel van het eco-systeem van het web. Marcel Reuvers 2 september 2015

DATAMANAGEMENT MET OPEN SOURCE

REST Adapter in SAP PI/PO voor REST-based Web Services

Handleiding Authenticatie

Serverless Java met Fn

Van Big Data tot waardevolle informatie op maat van de (interne)gebruiker en de burger

dro - DSI Info voor software leveranciers

eid Routeringsvoorziening OpenID Connect

Test doc.

SOA Security. en de rol van de auditor... ISACA Roundtable 2 juni Arthur Donkers, 1Secure BV arthur@1secure.nl

Volledige integratie in APEX. Laurens Hamelink Twinq VvE Software Menno Hoogendijk - Qualogy

API Specificatie Doc

Een gelinkte lijst in C#

Website beoordeling google.com

Exact. Orbis Software. Integration Tools

Oracle Portal in een Service-Oriented Architecture (SOA) ir. Jeroen F. van Schaijk Senior Consultant Emerging Technologies

ENTERPRISE LINKED DATA INTRODUCTIE

SMS Webservice Implementatie handleiding

Externe pagina s integreren in InSite en OutSite

What is the advantage of using expression language instead of JSP scriptlets and JSP expressions?

SendCloud OpenCart 2 Extension Documentation

Website beoordeling liveseoaudit.com

Website beoordeling entranttechnologies.com

Handleiding DigiD koppeling

Website beoordeling windowsrepublic.com.au

Website beoordeling facebook.com

Website beoordeling zsdudova.sk

Silverlight Tutorial

Continuous a continuous improvement story

Technical Specification SOFORT Banking

Ministerie van Economische Zaken, Landbouw en Innovatie. Geoboer. Interface Specificatie

Technical Specification SOFORT Banking

AJAX (XMLHttpRequest)

Transcriptie:

OAS en het Kennisplatform API s Dimitri van Hees (@dvh)

RESTful API HTTP/web interface/api die aan veel, maar niet alle, principes van REST voldoet. REST is geen doel op zich, het aanbieden van een goede API wel.

API Spec(ification) Beschrijft het contract tussen een RESTful API en een client. Hierin staat hoe welke operaties gedaan kunnen worden, beveiligingsprotocollen, ondersteunde gegevensformaten, etc. Vergelijkbaar met WSDL voor SOAP.

API Reference Human-readable variant van de API Spec. Naast tutorials en andere niet-technische informatie onderdeel van de API Docs welke te vinden is op een API/Developer Portal (soms ook wel API Store genoemd).

API Specification frameworks

swagger: "2.0" info: title: Linked Beer API description: Linked Beer API for demo purposes. version: 1.0.0 schemes: - https consumes: - application/json produces: - application/hal+json parameters: id: name: id in: path description: Unique ID to identify a beer. required: true type: string paths: /beers/{id}: get: summary: Retrieve a single beer description: With this call the client can retrieve a single beer. parameters: - $ref: "#/parameters/id" responses: 200: description: Representation of the single beer. schema: $ref: "#/definitions/beer"......

#%RAML 1.0 --- title: Linked Beer API description: Linked Beer API for demo purposes. version: 1.0.0 /beers: /{id}: get: description: With this call the client can retrieve a single beer. responses: 200: body: application/json: example:........................

FORMAT: 1A # Linked Beer API Linked Beer API for demo purposes. ## API Blueprint # GET /beers + Response 200 (application/json)

Machine-readable

TOOLING!

Community driven language integrations! Clojure, ColdFusion, D, Erlang, Elixir, Gitlab, Go, Haskell, Java, JavaScript, Jolie, Lua, TypeScript, NET, Node js, Perl, PHP, Python, Ruby, Scala, Swift, AngularJS, ReactJS, etc.

Automatisch gegenereerde: References Tests Developer SDK s Validators Server code Gateway configuraties Etc.

OpenAPI Specification (OAS) 3 Gebaseerd op Swagger 2.0 Stable sinds juli 2017 Volledig Open Source via Github Volledig vendor neutraal Samenwerking van alle voorheen concurrerende oplossingen

Nieuwe features t.o.v. Swagger 2.0 Ondersteuning voor meerdere gegevensindelingen Ondersteuning voor asynchrone requests m.b.v. callbacks Meer voorbeeldresponses om bijv. een sandbox mee te genereren Betere herbruikbaarheid

OpenAPI becomes the de facto standard in this industry.

Als je een RESTful API publiceert, publiceer daar dan ook een OASv3 bij.

OASv3 op de pas toe of leg uit lijst

'Apply or explain'

Kennisplatform API s

Werkgroepen API strategie Architectuur Authenticatie Autorisatie Communicatie en Beleid Gebruikerswensen

Verschillende domeinen Omgeving Cultuur Economie Onderwijs Etc.

Github first API Guidelines in Markdown Samenwerking Versiebeher Afwijkende usecases kunnen geforked worden Herbruikbaarheid OASv3

Federated OAS gov-git/errors.yaml gov-git/responses.yaml gov-git/parameters.yaml gov-git/headers.yaml api-1/openapi.yaml api-2/openapi.yaml api-2/headers.yaml api-1/responses.yaml env-git/responses.yaml env-git/errors.yaml

Federated OAS i.s.m. EU? gov-git/errors.yaml gov-git/responses.yaml gov-git/parameters.yaml gov-git/headers.yaml api-1/openapi.yaml api-2/openapi.yaml api-2/headers.yaml api-1/responses.yaml env-git/responses.yaml env-git/errors.yaml

Buildings: description: OK. headers: Content-Crs: $ref: 'https://rawgit.com/dvh/kp-apis/master/oas-components/headers.yaml#/contentcrs' X-Pagination-Page: $ref: 'https://rawgit.com/dvh/kp-apis/master/oas-components/headers.yaml#/xpaginationpage' X-Pagination-Limit: $ref: 'https://rawgit.com/dvh/kp-apis/master/oas-components/headers.yaml#/xpaginationlimit' X-Total-Count: $ref: 'https://rawgit.com/dvh/kp-apis/master/oas-components/headers.yaml#/xtotalcount' content: application/hal+json: schema: required: [_embedded, _links] type: object properties: _embedded: required: [buildings] type: object properties: buildings: type: array items: $ref: '#/components/schemas/building'

OAS generator

OASv3 first in de praktijk

openapi.yaml

openapi.yaml extensions internal endpoint

openapi.yaml extensions internal endpoint openapi.yaml - ex extensions

public endpoint openapi.yaml - ex extensions gateway openapi.yaml extensions internal endpoint openapi.yaml - ex extensions

public endpoint openapi.yaml - ex extensions - inc security conf security conf gateway openapi.yaml extensions internal endpoint openapi.yaml - ex extensions - ex security conf

public endpoint 1 openapi.yaml - ex extensions - inc security conf 1 security conf 1 gateway 1 openapi.yaml extensions internal endpoint openapi.yaml - ex extensions - ex security confs security conf 2 gateway 2 public endpoint 2 openapi.yaml - ex extensions - inc security conf 2

Vervolgstappen Verder optuigen Github workflow Aanhaken meerdere partijen (feel free to join!) Simpele landingpage met tools om de overstap zo laagdrempelig mogelijk te maken Nulmeting Nederlandse overheids API s Borgen beheer

Vervolgstappen Verder optuigen Github workflow Aanhaken meerdere partijen (feel free to join!) Simpele landingpage met tools om de overstap zo laagdrempelig mogelijk te maken Nulmeting Nederlandse overheids API s Borgen beheer developer.overheid.nl?

Op naar een nationale API strategie! Dimitri van Hees dimitri.vanhees@kadaster.nl Twitter: @dvh https://www.geonovum.nl/themas/kennisplatform-apis https://github.com/geonovum/kp-apis