adding API data extraction and manip