API (Application Programming Interface) is a group of routines, protocols and tools used by programmers to create software. A good API makes it easier for the programmer to create new software, because it provides the functionality or parts of the functionality of client or server software as a set of function calls. The programmer uses the function calls either to enhance the functionality of existing standard software or to write new standard software. Most operating systems, like MS Windows, provide an API so that programmers can create software compatible to the operating system. Although APIs are mainly for programmers, they also have advantages for users because they make sure that all software based on a common API provides similar graphical user interfaces. For the user, this simplifies the handling of new software.