Un'interfaccia di programmazione, in inglese application programming interface (API), è uno strumento che permette di fornire dati e servizi secondo requisiti tecnici chiaramente definiti. Un'API permette a due macchine o applicazioni informatiche di comunicare tra loro attraverso una rete (di solito Internet).
La comunicazione segue uno schema domanda-risposta. Una possibile domanda è la seguente: «Quali centrali di tipo idroelettrico si trovano entro un raggio di 5 km dal punto X/Y?». Come risposta l'API fornsce una lista delle centrali elettriche corrispondenti ai criteri indicati. Le domande hanno una struttura predefinita, ma possono essere adattate o programmate sulla base di differenti parametri. Nell'esempio considerato qui sopra possono essere selezionati liberamente il tipo di centrale, il raggio e il punto X/Y.
I dati dell'UFE possono essere richiesti tramite interfacce di programmazione. Nell'esempio succitato la macchina può adeguare automaticamente la domanda a seconda dei parametri selezionati e utilizzare i risultati. Per i dati e i metadati dell'UFE sono disponibili varie API.