now only making a single call where possible to the api. Much snappier