ถ้าซอฟต์แวร์มีหน้าจอเป็นส่วนติดต่อสำหรับผู้ใช้งาน API (application programming interface) ก็คือส่วนติดต่อของผู้ใช้งานเช่นเดียวกันเพียงแต่ผู้ใช้งานของ API คือโปรแกรมด้วยกันเอง API ถูกใช้ในการเชื่อมต่อเพื่อโต้ตอบกันระหว่างโปรแกรม โดยรูปแบบของ API ขึ้นอยู่กับวิธีการในการเขียนโปรแกรมหรือภาษาโปรแกรมที่ใช้ ซึ่งโดยทั่วไปจะเป็นการสร้างออบเจกต์และเรียกใช้เมธอด ตัวอย่างเช่น ภาษาจาวามี API ให้เราใช้อยู่มากมายโดยที่เราไม่ต้องเขียนโปรแกรมขึ้นมาทำงานดังกล่าวเองเรียกว่า Java API เช่น หากเราต้องการสร้างโครงสร้างข้อมูลแบบอาเรย์ Java API ก็มีคลาสอาเรย์ให้เราเรียกใช้เพื่อสร้างออบเจกต์ของอาเรย์ขึ้นมา และถ้าเราต้องการเพิ่มสมาชิกในอาเรย์เราก็เรียกเมธอดสำหรับเพิ่มสมาชิกในอาเรย์และกำหนดพารามิเตอร์ตามที่เมธอดกำหนดไว้ จะเห็นว่าในการใช้งาน API เราไม่ต้องรู้ว่ามันทำงานอย่างไร เพียงแค่รู้ว่าจะต้องใช้งานอย่างไรก็พอ ซึ่งช่วยให้เรามุ่งความสนใจไปที่การพัฒนาโปรแกรมของเราได้เต็มที่
จุดเด่นของ API คือการที่เราไม่ต้องกังวลว่ามันทำงานอย่างไร โดยมุ่งความสนใจแค่ว่าต้องเชื่อมต่อกับ API อย่างไร หากเราเป็นผู้ให้บริการ API เราอาจจะมีรหัสโปรแกรมเป็นแสนเป็นล้านบรรทัดที่ต้องการให้ผู้อื่นนำไปใช้งาน ซึ่งเราต้องการเปิดเผยฟังก์ชันการทำงานนี้ด้วยวิธีใดวิธีหนึ่งที่เราสามารถนำเสนอให้กับผู้อื่น หรือในลักษณะที่ผู้อื่นสามารถนำไปใช้งานภายในผลิตภัณฑ์ของตนเอง ดังนั้นสิ่งที่เราจะทำคือเปิดเผยสิ่งนี้ในรูปแบบของ API
API เป็นเหมือนสัญญาระหว่างลูกค้ากับผู้ให้บริการ API ที่ระบุเกี่ยวกับการใช้งานเมธอดหรือฟังก์ชั่นว่าชื่ออะไร ต้องส่งพารามิเตอร์อะไรเข้าไป จะได้รับอะไรออกมา ลูกค้าสามารถนำไปใช้หรือเรียกใช้ได้อย่างไร และยืนยันว่าวิธีการใช้งานจะเป็นอย่างนั้นตลอดไป ในมุมมองของลูกค้าอาจจะเป็นไปได้ว่าลูกค้าต้องการใช้งานเพียงบางฟังก์ชั่นไม่ใช่ทั้งหมดที่เสนอมา สนใจเฉพาะวิธีการเรียกใช้งาน และไม่สนใจว่า API ทำงานอย่างไร ซึ่งก็สอดคล้องกับผู้ให้บริการ API ที่ไม่ต้องการเปิดเผยการทำงานของโปรแกรมเช่นกันเพื่อที่จะสามารถปรับปรุงได้ในอนาคตโดยที่ไม่ส่งผลกระทบกับผู้ใช้งาน ดังนั้นในการออกแบบ API จะต้องคิดให้รอบคอบเพราะจะต้องดูแลผู้ใช้กันไปอีกนานแสนนาน
ขอบเขตความหมายของ API ครอบคลุมกว้างขวางมาก ไม่ใช่เพียงแค่การเรียกใช้เมธอดจากภายในโปรแกรมของตัวเอง ไลบรารี่ หรือเฟรมเวิร์ค แต่ยังรวมถึงการเชื่อมต่อระหว่างโปรแกรมกับโปรแกรมอื่น และการเชื่อมต่อระหว่างระบบงานกับระบบงานอื่น ตัวอย่างเช่น การเชื่อมต่อระหว่างแอพพลิเคชั่นพยากรณ์อากาศในโทรศัพท์มือถือก็ใช้ API เพื่อเชื่อมต่อกับระบบงานที่ให้บริการข้อมูลสภาวะอากาศ หรือร้านค้าออนไลน์ก็ใช้ API เพื่อเชื่อมต่อกับระบบชำระเงิน เป็นต้น