API Windows /Windows API, tên không chính thứcWinAPI, là bộgiao diện lập trình ứng dụng (API) cốt lõi của Microsoft có sẵn trong cáchệ điều hànhMicrosoft Windows. Tên Windows API gọi chung là một số triển khai nền tảng khác nhau thường được gọi bằng tên riêng của họ (ví dụ:API Win32); xem phần phiên bản. Hầu như tất cả các chương trình Windows đều tương tác với API Windows. Trên dònghệ điều hànhWindows NT, một số nhỏ (như các chương trình được khởi động sớm trongquy trình khởi động Windows) sử dụng API gốc.[1]
Hỗ trợ nhà phát triển có sẵn dưới dạngbộ công cụ phát triển phần mềm,Microsoft Windows SDK, cung cấp tài liệu và công cụ cần thiết để xây dựng phần mềm dựa trên API Windows và các giao diện Windows được liên kết.
API Windows (Win32) tập trung chủ yếu vào ngôn ngữ lập trìnhC[2] ở chỗ các chức năng vàcấu trúc dữ liệu được hiển thị của nó được mô tả bằng ngôn ngữ đó trong các phiên bản tài liệu gần đây. Tuy nhiên, các API có thể được sử dụng bởi bất kỳ ngôn ngữ lập trìnhbiên dịch hoặclắp ráp có thể xử lý các (rõ ràng) cấu trúc dữ liệu ở mức độ thấp cùng với các quy định công ước gọi cho các cuộc gọi vàcallback. Tương tự, việc triển khai nội bộ chức năng của API đã được phát triển bằng nhiều ngôn ngữ, theo lịch sử.[3] Mặc dù thực tế rằng C không phải là ngôn ngữlập trình hướng đối tượng, API Windows và Windows đều được mô tả theo lịch sử là hướng đối tượng. Cũng có nhiều lớp và phần mở rộng (từ Microsoft và các phần mở rộng khác) cho các ngôn ngữ hướng đối tượng làm cho cấu trúc hướng đối tượng này rõ ràng hơn (Thư viện lớp Microsoft Foundation (MFC), Thư viện thành phần trực quan (VCL), GDI +, v.v.). Chẳng hạn,Windows 8 cung cấp API Windows và APIWinRT, được triển khai trongC ++[4] và được định hướng theo đối tượng theo thiết kế ban đầu.[4]