url abstracted, other logic