Schnittstellen-Architektur definiert die Konzeption, Architektur und den definierten Leistungsumfang einer Software-Schnittstelle, kurz API. In der Schnittstellen-Architektur wird beginnend mit der Konzeptionsphase der Aufbau einer Schnittstelle für den Austausch von Daten geplant. Dabei berücksichtigt die Schnittstellen-Architektur grundlegende Anforderungen für den Austausch von Informationen einer Softwarelösung mit einer anderen Software. Auch die Kommunikation zwischen Softwaresystemen oder Webanwendungen und Apps wird in der Architekturphase von Software festgelegt.
Die Informatik definiert in einem Schichten-Modell unterschiedliche Anforderungen für Schnittstellen. Dabei unterscheidet die logische Schichtenarchitektur Präsentationsschicht, Steuerungsschicht, Anwendungsschicht und Datenhaltungsschicht um die Aspekte der fachlichen und technischen Architektur von Software. Beispielsweise hinsichtlich der Datenhaltung (Datenhaltungsschicht) und Softwarearchitektur (Schichtenarchitektur). Aufgaben und Charakteristika sowie Dienste einer Software und das Leistungsspektrum der Middelware sind konkrete Ausprägungen einer Architektur von Schnittstellen bei Software und Web-Anwendungen.
Mit der Schnittstellen-Programmierung wird die Anbindung von Anwendungen zueinander realisiert. Schnittstellen sind Interfaces und dienen der Kommunikation mit anderen Systemen. Überall dort, wo unterschiedliche Softwarelösungen miteinander verbunden werden um Daten auszutauschen kommt die Schnittstellen-Programmierung, die sogenannte API zum Einsatz. Eine gute Software-Architektur ist unverzichtbar, damit die Software performant und zuverlässig arbeitet.