Windows API ya da WinAPI, Microsoft'un Microsoft Windows işletim sistemlerinde bulunan çekirdek uygulama programlama arayüzü kümesidir (API). Windows API adı, genellikle kendi adlarıyla (örneğin, Win32 API) atıfta bulunulan birçok farklı platform uygulamasına atıfta bulunur. Neredeyse tüm Windows programları Windows API ile etkileşime girer. Windows NT işletim sistemi satırlarında, az sayıda (Windows başlangıç işleminde erken başlayan programlar gibi) Native API'yi kullanır.[1]
Geliştirici desteği, bir yazılım geliştirme kiti, Microsoft Windows SDK biçiminde, Windows API ve ilişkili Windows arabirimlerine dayalı yazılım oluşturmak için gereken belgeleri ve araçları sağlar.[2]
Windows API (Win32), temel olarak C programlama diline odaklanmıştır, çünkü açıkta kalan fonksiyonları ve veri yapıları bu dilde, belgelerinin son sürümlerinde tanımlanmıştır. Bununla birlikte, API, çağrılar ve geri aramalar için öngörülen arama kuralları ile birlikte (iyi tanımlanmış) düşük seviyeli veri yapılarını idare edebilen herhangi bir programlama dili derleyicisi veya çevirme dili tarafından kullanılabilir.[3] Benzer şekilde, API'nin işlevinin içsel uygulaması tarihsel olarak birçok dilde geliştirilmiştir. C'nin nesne yönelimli bir programlama dili olmamasına rağmen, Windows API ve Windows tarihsel olarak nesne yönelimli programlama olarak tanımlanmıştır. Nesne yönelimli yapıyı daha belirgin kılan (Microsoft Temel Sınıf Kütüphanesi (MFC), Görsel Bileşen Kütüphanesi (VCL), GDI +, vb.), Nesne yönelimli diller için birçok Microsoft sarmalayıcı sınıfları ve uzantıları da olmuştur. Örneğin, Windows 8, C ++'da uygulanan ve tasarım tarafından nesne yönelimli olan Windows API ve Windows Runtime API'sını sağlar.[4]