Proprio come un’in­ter­fac­cia utente che consente la co­mu­ni­ca­zio­ne tra uomo e macchina, così l’API consente la co­mu­ni­ca­zio­ne tra diverse ap­pli­ca­zio­ni software. Grazie all’in­ter­fac­cia di pro­gram­ma­zio­ne, i dati possono essere tra­sfe­ri­ti avanti e indietro, e questo in modo ordinato. Il tra­sfe­ri­men­to funziona anche se le ap­pli­ca­zio­ni sono state scritte in linguaggi di pro­gram­ma­zio­ne diversi.

API IONOS per svi­lup­pa­to­ri
Gestisci i tuoi prodotti di hosting tramite la nostra potente API
  • Gestione record DNS
  • Am­mi­ni­stra­zio­ne SSL
  • Do­cu­men­ta­zio­ne API

Che cos’è un’API?

L’acronimo API sta per Ap­pli­ca­tion Pro­gram­ming Interface e può essere tradotto come in­ter­fac­cia di pro­gram­ma­zio­ne. Come sug­ge­ri­sce il nome italiano, un’API consente ai pro­gram­ma­to­ri esterni di accedere a de­ter­mi­na­te funzioni. Le in­ter­fac­ce servono, per così dire, come punto di accesso a un altro software. L’API consente ai due programmi di co­mu­ni­ca­re tra loro, scambiare dati e impartire comandi. Questo funziona sia con il software desktop che con le ap­pli­ca­zio­ni web o per i di­spo­si­ti­vi mobili. Un singolo programma può anche essere costruito in modo tale che diversi moduli co­mu­ni­chi­no tra loro tramite in­ter­fac­ce.

De­fi­ni­zio­ne: API

Un’Ap­pli­ca­tion Pro­gram­ming Interface (in­ter­fac­cia di pro­gram­ma­zio­ne dell’ap­pli­ca­zio­ne) è un’in­ter­fac­cia che collega diversi programmi per stan­dar­diz­za­re la tra­smis­sio­ne dei dati e lo scambio di istru­zio­ni tra le parti del programma.

A cosa servono le API?

Al giorno d’oggi, diversi pro­dut­to­ri di software mettono a di­spo­si­zio­ne le API per fa­ci­li­ta­re l’accesso dei pro­gram­ma­to­ri ai com­po­nen­ti software. SAP, Amazon e Google, ad esempio, offrono API per diverse aree di ap­pli­ca­zio­ne. Gli svi­lup­pa­to­ri possono uti­liz­za­re queste in­ter­fac­ce per eseguire varie attività:

  • inoltrare un comando del pro­gram­ma­to­re al software e riceverne la risposta
  • inserire contenuti nei servizi web
  • riu­ti­liz­za­re i codici delle app at­tra­ver­so l’in­te­ra­zio­ne tra programmi
  • con­trol­la­re l’accesso da parte di altri pro­gram­ma­to­ri

Nell’uso quo­ti­dia­no, le API vengono uti­liz­za­te, ad esempio, nei servizi web. Chi prenota un volo, può uti­liz­za­re un motore di ricerca che trova tutti i voli e le tariffe per una de­sti­na­zio­ne e una data spe­ci­fi­che. Non appena l’utente clicca su “Cerca”, il sito web inizia a co­mu­ni­ca­re con le API delle singole compagnie aeree al fine di ve­ri­fi­ca­re i prezzi per tale de­sti­na­zio­ne. La ricerca viene com­ple­ta­ta in pochi secondi e il cliente ha ra­pi­da­men­te una pa­no­ra­mi­ca dei voli di­spo­ni­bi­li. Ma come funziona esat­ta­men­te?

Consiglio

Volete provare a pro­gram­ma­re un’app mobile? Allora non perdetevi la nostra speciale guida per creare una propria app nativa con tutte le in­for­ma­zio­ni im­por­tan­ti.

Come fun­zio­na­no le API?

Anche se le API offrono diversi vantaggi all’utente finale, servono prin­ci­pal­men­te ai pro­gram­ma­to­ri. L’Ap­pli­ca­tion Pro­gram­ming Interface viene so­li­ta­men­te fornita dagli svi­lup­pa­to­ri di un software in modo che i pro­gram­ma­to­ri di altre ap­pli­ca­zio­ni possano uti­liz­zar­la. L’in­ter­fac­cia di pro­gram­ma­zio­ne determina come le in­for­ma­zio­ni e i dati vengono ricevuti e re­sti­tui­ti tra i moduli. Google, ad esempio, pubblica l’API per con­sen­ti­re ad altri pro­gram­ma­to­ri di ancorare le proprie ap­pli­ca­zio­ni ai servizi Google. A questo scopo si utilizza poi uno standard specifico, a cui il software esterno deve aderire.

Il pro­to­col­lo REST è molto popolare per la co­mu­ni­ca­zio­ne tra le ap­pli­ca­zio­ni, so­prat­tut­to sul web. Un’API REST utilizza gli stessi comandi di HTTP. Le istru­zio­ni non sono complesse e quindi rendono molto facile lo scambio di in­for­ma­zio­ni. Questo semplice pro­to­col­lo sem­pli­fi­ca, inoltre, la con­nes­sio­ne dei pro­gram­ma­to­ri all’API.

Un elemento fon­da­men­ta­le per poter rendere di­spo­ni­bi­le l’in­ter­fac­cia di pro­gram­ma­zio­ne è, quindi, la stan­dar­diz­za­zio­ne, in­di­pen­den­te­men­te dal pro­to­col­lo uti­liz­za­to per lo scambio. Inoltre, è im­por­tan­te insegnare anche agli altri pro­gram­ma­to­ri l’utilizzo corretto dell’in­ter­fac­cia. Proprio per questo le API vengono spesso fornite con una do­cu­men­ta­zio­ne det­ta­glia­ta sulla sintassi e la funzione.

Quali tipi di API esistono?

Esistono fon­da­men­tal­men­te quattro diverse classi di in­ter­fac­ce di pro­gram­ma­zio­ne:

  • API orientate alle funzioni
  • API orientate ai file
  • API orientate al pro­to­col­lo
  • API orientate agli oggetti

La scelta della classe dipende dall’area di ap­pli­ca­zio­ne. Le in­ter­fac­ce di pro­gram­ma­zio­ne orientate alle funzioni sono in­ter­fac­ce re­la­ti­va­men­te complesse. Con­sen­to­no, ad esempio, agli svi­lup­pa­to­ri di accedere ai com­po­nen­ti hardware. In esse vengono ri­chia­ma­te sempre solo le funzioni. Le API orientate ai file con­sen­to­no la con­net­ti­vi­tà a livello di file. I dati possono quindi essere in­ter­ro­ga­ti e scritti. L’in­ter­fac­cia orientata al pro­to­col­lo viene uti­liz­za­ta per la co­mu­ni­ca­zio­ne stan­dar­diz­za­ta tra programmi, ma è in­di­pen­den­te dai sistemi operativi o dall’hardware. Le API orientate agli oggetti possono essere uti­liz­za­te in modo fles­si­bi­le.

Nella di­stin­zio­ne delle API, si può di­stin­gue­re inoltre tra in­ter­fac­ce private e in­ter­fac­ce pubbliche. Le in­ter­fac­ce private sono di­spo­ni­bi­li solo all’interno di un’azienda. Vengono spesso uti­liz­za­te per collegare fun­zio­na­li­tà pro­prie­ta­rie in modo che i di­pen­den­ti o i clienti possano accedervi tramite reti private. Le in­ter­fac­ce pubbliche sono ac­ces­si­bi­li a tutti e possono, di solito, essere co­mo­da­men­te uti­liz­za­te dagli svi­lup­pa­to­ri di software. Google, Amazon, eBay, Facebook, Twitter e PayPal sono alcuni esempi di API pubbliche. Molti pro­dut­to­ri (ad esempio Google) invitano at­ti­va­men­te gli svi­lup­pa­to­ri a par­te­ci­pa­re allo sviluppo di API.

Quali sono i vantaggi delle API?

Le API offrono alcuni vantaggi per diversi gruppi: sia gli utenti che gli svi­lup­pa­to­ri interni o esterni be­ne­fi­cia­no delle in­ter­fac­ce di pro­gram­ma­zio­ne.

Gli svi­lup­pa­to­ri che dotano i loro programmi di buone in­ter­fac­ce di pro­gram­ma­zio­ne possono aspet­tar­si una dif­fu­sio­ne maggiore. Le ap­pli­ca­zio­ni con buone API vengono pri­vi­le­gia­te perché fa­ci­li­ta­no gli altri pro­gram­ma­to­ri a in­te­ra­gi­re con il software. Gli svi­lup­pa­to­ri esterni possono ampliare le fun­zio­na­li­tà del proprio software col­le­gan­do­si ad altre ap­pli­ca­zio­ni. Alla fine, sono so­prat­tut­to gli utenti a be­ne­fi­cia­re della con­nes­sio­ne tramite l’in­ter­fac­cia, perché consente di combinare fa­cil­men­te una vasta gamma di programmi e quindi di godere di maggiore comfort.

Esempio: API e SDK per Google Maps

Google Maps è un esempio molto noto di in­te­gra­zio­ne delle API. Le famose mappe online sono state pre­sen­ta­te nel febbraio 2005 e da allora sono diventate in­di­spen­sa­bi­li per molti utenti finali, sia da computer che come app su smart­pho­ne.

Sulla piat­ta­for­ma di Google Maps, gli svi­lup­pa­to­ri possono accedere a SDK e API e in­te­grar­li nelle proprie app, nei programmi e nei siti web. Questo permette di integrare le funzioni di Google Maps in altre ap­pli­ca­zio­ni in modo facile e veloce. L’API Ja­va­Script di Maps, ad esempio, consente ai pro­prie­ta­ri delle pagine web di ag­giun­ge­re fa­cil­men­te mappe in­te­rat­ti­ve. Ciò è par­ti­co­lar­men­te in­te­res­san­te per i negozi o i ri­sto­ran­ti, il cui successo com­mer­cia­le dipende spesso dalla ricerca e dalla visita delle loro sedi da parte dei clienti.

Consiglio

Anche i server cloud di IONOS possono essere con­tat­ta­ti tramite un’in­ter­fac­cia. Scoprite come nella relativa do­cu­men­ta­zio­ne.

Come si testano le API?

Chi integra in­ter­fac­ce di pro­gram­ma­zio­ne in programmi o ap­pli­ca­zio­ni deve in­nan­zi­tut­to testarle per as­si­cu­rar­si che tutto funzioni come previsto e che le API non ri­chie­da­no troppo tempo per accedere alle in­for­ma­zio­ni. Anche gli svi­lup­pa­to­ri che scrivono le proprie API do­vreb­be­ro prima testarle. For­tu­na­ta­men­te, testare le API è diventato re­la­ti­va­men­te semplice, anche grazie ad ap­pli­ca­zio­ni come Postman o CURL.

Postman può essere uti­liz­za­to per testare le chiamate API definite dall’utente. Gli svi­lup­pa­to­ri possono importare e provare le loro spe­ci­fi­che API. Postman fornisce anche il supporto dello schema per formati come RAML, WADL, OpenAPI e GraphQL. È possibile testare sia le API che sono nella fase iniziale che quelle nella fase finale dello sviluppo. I prezzi di Postman variano a seconda delle di­men­sio­ni richieste. I team più piccoli possono pro­get­ta­re e testare API per $12 per utente al mese, mentre la soluzione aziendale di Postman Business è di­spo­ni­bi­le a $24 al mese (per utente). Per le aziende con più di 100 utenti è di­spo­ni­bi­le un pacchetto En­ter­pri­se.

CURL è uno strumento a riga di comando per testare le API, che richiede una buona com­pren­sio­ne delle relative funzioni. Non è comodo come Postman e non offre un’in­ter­fac­cia utente grafica. Tuttavia, è gratuito. I documenti sui vari argomenti sono con­sul­ta­bi­li nella pagina di CURL relativa ai progetti.

Postman CURL
I prezzi partono da $12 al mese Gratuito, open source
Basato sulla piat­ta­for­ma Strumento a riga di comando
Postman consente di testare a fondo le API CURL viene uti­liz­za­to più spesso per vi­sua­liz­za­re ra­pi­da­men­te le in­te­sta­zio­ni http
Web Hosting
Diventa il n°1 della rete con il provider di hosting n°1 in Europa
  • Di­spo­ni­bi­li­tà garantita al 99,99%
  • Dominio, SSL ed e-mail inclusi
  • As­si­sten­za 24/7 in lingua italiana
Vai al menu prin­ci­pa­le