Często określany jako interfejs programowania aplikacji lub prosty interfejs API, interfejs programu aplikacji to zbiór instrukcji programowania i standardów, które umożliwiają programom komputerowym bezpośrednią komunikację między sobą. Wiele firm programistycznych udostępnia publicznie swoje interfejsy API i umożliwia programistom tworzenie aplikacji opartych na ich usługach. Doskonałym przykładem jest Microsoft DirectX, zestaw interfejsów API, które umożliwiają programistom tworzenie gier, funkcji multimedialnych i aplikacji dla systemu operacyjnego Windows.
Interfejs programu użytkowego nie jest interfejsem użytkownika, ale interfejsem między oprogramowaniem a oprogramowaniem. W rzeczywistości pozwala programom komunikować się ze sobą bez wiedzy lub interwencji użytkownika. Na przykład, gdy kupujesz bilety na koncerty online za pomocą karty kredytowej, witryna korzysta z interfejsu API, aby przesłać dane karty do zdalnej aplikacji, która sprawdza jej ważność. Po potwierdzeniu płatności aplikacja odpowiada stronie internetowej, zezwalając na wystawienie biletów.
Interfejsy aplikacji zaprojektowane w celu zapewnienia najszybszego wykonania zwykle zawierają zestawy procedur, funkcji, zmiennych i struktur danych. Kompletny interfejs API jest często definiowany jako taki, który zapewnia warstwę abstrakcji, która uniemożliwia programiście poznanie, w jaki sposób jego funkcja odnosi się do niższych poziomów abstrakcji. Pozwala to programiście na ulepszenie lub przeprojektowanie funkcji w ramach API bez łamania kodu, który tego potrzebuje.
Interfejs programu aplikacji jest dość podobny do oprogramowania jako usługi (SaaS). Dzieje się tak głównie dlatego, że programiści nie muszą zaczynać od zera za każdym razem, gdy piszą aplikację. Zamiast pisać skrypty jednego podstawowego programu zaprojektowanego do obsługi wszystkiego, ten sam program może zlecić niektóre obowiązki innym aplikacjom, które mogą znacznie lepiej wykonać tę pracę. To sprawia, że API jest bardzo przydatne do integracji ze stroną internetową i różnymi aplikacjami internetowymi.
Interfejs aplikacji stał się integralną częścią Web 2.0 i fenomenu sieci społecznościowych. Kilka popularnych społeczności używa go do udostępniania treści w ramach otwartej architektury. Użytkownicy mogą udostępniać komentarze, zdjęcia, filmy i wszelkiego rodzaju informacje zewnętrznym aplikacjom, korzystając z otwartego interfejsu API, aby zapewnić nową funkcjonalność swojej społeczności. Dwa klasyczne przykłady interfejsów API, które umożliwiają to udostępnianie, to platforma aplikacji Facebook i platforma Open Social.
Interfejsy aplikacji są dostarczane przez kilka znanych marek, w tym Amazon®, eBay® i Google™. Precyzyjnie opracowane i prawidłowo stosowane, mogą przynieść korzyści zarówno firmie świadczącej usługę, jak i jej użytkownikom. Być może największą wadą interfejsów API jest to, że są one zależne od dostarczanej usługi. Na przykład, gdyby Google Maps™ zostało wycofane, jego interfejs programu aplikacji byłby zasadniczo bezużyteczny.