Una API (Application Programming Interface), o Interfaccia di Programmazione della Applicazione, è una descrizione di metodi (un insieme di classi, procedure, funzioni, strutture o costanti) che un singolo programma informatico può utilizzare per interagire con un altro programma. Di solito è incluso nella descrizione di qualsiasi protocollo Internet, framework software o chiamata standard alle funzioni del sistema operativo. È spesso implementato da una libreria software separata o da un servizio del sistema operativo. Gli sviluppatori di solito usano le API blockchain per scrivere tutti i tipi di applicazioni.

Un’API definisce la funzionalità fornita da un programma (modulo, libreria) e consente l’astrazione esattamente da come viene implementata questa funzionalità. I componenti software interagiscono tra loro tramite le API. In questo caso, i componenti di solito formano una gerarchia: i componenti di alto livello usano un’API di componenti di basso livello e questi, a loro volta, usano un’API di componenti anche di livello inferiore. I protocolli per la trasmissione di dati su Internet sono costruiti secondo questo principio.

Un esempio di API è sulla gestione delle prenotazioni in ambito alberghiero: il cliente chiede informazioni su delle camere che soddisfi i propri criteri di ricerca, data di inizio e fine soggiorno, la zona di allocazione, il costo totale. Queste richieste vengono inviate ai sistemi dei vari Hotel utilizzando una API. I sistemi degli Hotel rispondono tramite API con le stanze che hanno disponibili secondo i criteri richiesti.

Nel caso della blockchain, le API vengono utilizzate ad esempio per comunicare con gli exchange in modo da utilizzare le funzionalità di trading con programmi esterni, per leggere i dati della blockchain, per chiamare i dati da un oracolo etc. etc.. Lo sviluppo di software di una blockchain di solito include varie parti complesse, e solitamente uno dei più importanti è la creazione di interfacce API blockchain. Esistono progetti che aiutano utenti e sviluppatori fornendo servizi API già compilati, come ad esempio:

  • ricevezione di pagamenti in Bitcoin, sicuro ed ideale per uso aziendale o personale;
  • un wallet collegato alla blockchain;
  • invio e la ricezione di pagamenti da portafogli blockchain;
  • JSON per richieste di dati per blocco e transazione;
  • API in formato testo per l’interrogazione dei dati blockchain.
glossario