The API (Application Programmable Interface) is the main class responsible for delegating tasks. This class decides which modules to load, which routing to use, how to handle authentication and many other things.
To put it simply: the API class is responsible for reading input data and producing output.
How to use it?
Your web software may have multiple application (API) classes: frontend, backend, REST, cron, command-line etc. Your API classes will extend API classes already provided by Agile Toolkit: ApiFrontend, ApiCLI or ApiWeb.