request generator