Working Version for all 3 APIs