uses ID to lookup instead of passing object