allowing users to specify request timeout in seconds