Cosa sono le OpenAPI? La specifica OpenAPI e le API “aperte”
OpenAPI è lo standard di riferimento per la descrizione di API RESTful che permettono l'accesso a terze parti, le cosiddette API "aperte".
- Autore: Alessandra Caraffa
- //
- Data: 31/05/2022
- //
- Lettura: 4 min
Con il termine OpenAPI si intende uno standard, la specifica OpenAPI (OAS), che permette di descrivere secondo un modello condiviso la struttura e il funzionamento di una API, o Application Programming Interface.
Ci si può riferire con OpenAPIs anche a quelle interfacce di programmazione delle applicazioni (API) che consentono a terze parti l’accesso ai propri dati e strumenti, quelle che con diverse sfumature di significato vengono chiamate in Italia API "aperte" o pubbliche, accessibili con restrizioni minime legate più spesso all’uso pratico delle API che non a copyright o simili.
Openapi nell’API driven market
L’introduzione di una specifica che fornisse uno standard per le API RESTful era molto attesa, e ha condotto in pochi anni all’esplosione del mercato delle API, che è oggi una delle piazze di riferimento nel settore software.
Quale potrebbe essere infatti Il senso ultimo dell’esporre i propri dati, se non quello di consentirne il più ampio uso possibile? Basta pensare all’universo emergente dell’API driven market, per comprendere il ruolo dello standard OpenAPI nella creazione di nuovi prodotti e funzionalità.
Secondo i dati di Market Data Forecast, il mercato globale delle API avrà nel 2027 un valore di 8,41 miliardi di dollari, con una crescita stimata del +34% rispetto allo scenario fornito dai dati del 2021. E anche se non tutte le API aderiscono allo standard OpenAPI, è altrettanto vero che è grazie alla normalizzazione di definizioni, strutture e processi che è stato possibile implementare le API praticamente ovunque.
Se già nel 2020 il 90% degli sviluppatori affermava di utilizzare API di terze parti (dati: SlashData), sappiamo che oggi la quasi totalità delle applicazioni che usiamo quotidianamente comunica con altre applicazioni tramite API. In questo senso, l’introduzione di una specifica standard aperta come OpenAPI ha fornito una direttrice rapida, condivisa e sicura alla comunità degli sviluppatori e un punto zero all’esponenziale crescita del mercato delle API.
Cos’è OpenAPI?
La specifica OpenAPI (OAS) definisce un’interfaccia standard per le API RESTful che permette a umani e applicazioni software di comprendere le funzionalità del servizio senza dover interagire con il codice sorgente o con la documentazione originaria.
Lo standard OpenAPI è indipendente dal linguaggio di programmazione, e permette di descrivere una API tramite un documento in formato YAML o JSON che rispetti determinati requisiti condivisi.
Lo standard OAS - oggi alla versione 3.0 - può essere usato per descrivere una API RESTful in modo da generare stub, cioè porzioni funzionali di codice, o documentazione a partire da una sorta di lingua franca che rende più agevoli le interazioni tra API ed estremamente più rapido lo sviluppo di nuove applicazioni - assumendo un ruolo centrale nell’evoluzione dell’API driven market.
La specifica OpenAPI si trova oggi in una repository su GitHub ed è basata su dati aperti e disponibili a tutta la community di sviluppatori: grazie all’attività della OpenAPI Initiative, nel 2017 il “linguaggio comune” delle API è diventato una risorsa a disposizione di tutta la comunità.
Swagger, la specifica e le OpenAPI
Il 5 Aprile del 2016 Amazon annunciò che il proprio API Gateway, da quel momento, avrebbe supportato le definizioni Swagger 2.0. Appena pochi mesi prima, lo standard Swagger 2.0 era stato donato alla Open API Initiative, un’organizzazione costituita ad hoc dai padri della Linux Foundation in associazione a importanti esponenti di aziende IT come Google, IBM, Microsoft e PayPal.
OpenAPI Initiative nasce con lo scopo di “creare un modello di governance aperta intorno alla Specifica Swagger” capace di sostenere e velocizzare l’adozione e la diffusione di Swagger come framework di base per descrivere le API RESTful.
Swagger era il nome della specifica fino alla pubblicazione della sua versione 3.0, avvenuta nel 2017: da allora ci si riferisce alla specifica con nome di OpenAPI, mentre si chiamano Swagger alcuni degli strumenti più noti per l’implementazione dell’OAS - editor, generatori di codice, librerie e strumenti di validazione delle API che possono generare nuove definizioni a partire da una API esistente.
Tutto ciò avveniva mentre il mondo delle applicazioni software attraversava un cambiamento epocale, con la transizione da un approccio monolitico alla cosiddetta architettura per microservizi. La stragrande maggioranza delle applicazioni di uso quotidiano, da Netflix alle app di navigazione GPS, consiste oggi in un complesso reticolo di microservizi e API di terze parti, elementi integrati su vari livelli che consentono alle aziende di esporre dati e strumenti verso l’esterno, e di utilizzare o implementare allo stesso modo le risorse degli altri.
I vantaggi di OpenAPI
OpenAPI è uno standard sostenuto e adottato da aziende cardine del settore IT, e può essere visto come il frutto della preziosa esperienza di chi per primo ha sviluppato, testato e implementato migliaia di API nel corso degli anni. L’autorità di una simile fonte di dati (source of truth, per gli sviluppatori) è senza dubbio tra i motivi principali che spingono grandi e piccole aziende ad adottare lo standard OpenAPI 3.0.
Ma ci sono anche diverse ragioni pratiche alla base dell’enorme diffusione del modello OAS: è la specifica REST che supporta più linguaggi di programmazione, e può generare stub nel linguaggio richiesto. La specifica OpenAPI è inoltre un accesso privilegiato a tutti gli strumenti dell’ecosistema Swagger, tra i quali quelli che possono generare automaticamente documentazione, test e mock server.
Gli altri vantaggi sono essenzialmente connessi alla natura open di codice e dati: l’estesa comunità di sviluppatori che lavora con le Open API condivide lingua, strumenti, risorse e conoscenze, e costituisce un asset di raro valore.
OpenAPI: rivoluzione per i pagamenti digitali
Le API sono uno degli strumenti chiave della trasformazione digitale: in linea con le migliori aspettative dell’industria 4.0, l’architettura messa in campo dall’universo delle Open API è un eccellente esempio di moltiplicatore di risorse, capace di aggregare e distribuire dati e servizi in maniera sempre nuova, dando vita a un intero mercato di prodotti.
I pagamenti digitali hanno subito in questo senso una vera e propria rivoluzione in termini di digital transformation: il regolamento PSD2, diventato attuativo nei Paesi UE nel 2019, dispone infatti che tutte le operazioni di pagamento elettronico e relativi dati siano erogati secondo lo standard Open Banking, che prevede tra le altre cose l’utilizzo di servizi API aperti e accessibili a terze parti.
Si tratta di un’innovazione che apre un ulteriore mercato, quello dei servizi che potranno usare i dati esposti dalle piattaforme per creare prodotti e applicazioni sempre più specifici. Secondo i dati dell’Osservatorio Innovative Payment del Politecnico di Milano, 7 istituti bancari su 10 si adeguano alla misura senza approfondirne le potenzialità. D’altro canto, si sta facendo strada un’interessante realtà di nuovi attori, per il 55% giovani aziende innovative, che tramite le open API offre servizi aggiuntivi per i consumatori e prodotti sempre più mirati alle esigenze dell’utenza.