wip, request() needs to be updated and tested
better base agent requet