Програмний інтерфейс — функціональність, яку деякий програмний компонент надає іншим програмним компонентам.
Можна розрізняти два види такої функціональності: та, що використовується при створенні прикладних програм — інтерфейсом програмування додатків (API); та, що використовується при створенні системних компонентів і може називатися інтерфейсом програмування компонентів операційної системи або інтерфейсом системного програмування (SPI, англ. system programming interface).
Крім того, програмні інтерфейси можуть бути різнорівневими, ставлячись до рівня програмного коду (API і SPI), або до рівня машинного коду (ABI, англ. application binary interface, і SBI, англ. system binary interface).