implemented proper API calls and updates