all 3 APIs working, added some formatting