what exactly is api, and what is it used for.