Con application programming interface (in acronimo API, in italiano interfaccia di programmazione di un’applicazione), in informatica, si indica ogni insieme di procedure disponibili al programmatore, che vengono messe insieme per formare un insieme di strumenti specifici per assolvere ad una o più funzioni all’interno di una determinata applicazione. Spesso con tale termine si includono le librerie software disponibili nei vari linguaggi di programmazione.

Le interfacce intese per la massima velocità di esecuzione spesso consistono in una serie di funzioni, procedure, variabili e strutture dati. Esistono anche altri tipi di interfacce, come gli interpreti usati per valutare le espressioni come con ECMAScript/JavaScript. Una buona API in realtà, non lascia mai trasparire nulla sulla sua natura, limitandosi a fornire quanto richiesto, esiste cioè una sorta di “mistero” che rende non necessario per il programmatore il sapere come funzionano le API ad un livello più basso. Questo per un semplice motivo: poter aggiornare le API in modo del tutto indipendente dalle applicazioni che le utilizzano, senza dunque cambiare il codice che usa le API stesse.

Esistono due linee di condotta per quanto riguarda la pubblicazione delle API:

  1. Alcune aziende tengono segrete le loro API. Per esempio, Microsoft fornisce API ufficiali solamente agli sviluppatori Xbox. Questo perché intende restringere il numero di persone che possono scrivere giochi per la console per limitare la pirateria.
  2. Altre compagnie distribuiscono le API pubblicamente. Per esempio la stessa Microsoft fornisce al pubblico informazioni sulle sue Windows API.

Alcune API, come quelle standard di un sistema operativo, sono implementate come una libreria separata e distribuite con il sistema operativo.

Altre richiedono a chi pubblica il software di integrare l’API direttamente nell’applicazione.

Le API di Microsoft Windows sono fornite con il sistema operativo e chiunque può utilizzarle.

Una API che non richiede il pagamento di diritti per il suo accesso ed utilizzo è detta “aperta”. Le API fornite dal software libero, come software distribuito sotto licenza GPL, sono aperte per definizione, dal momento che si può accedere al sorgente del software e capire come funziona.