added first generate endpoint