support all types of authentication. add requests.