trying to reduce api calls