updated with exponential_backoff for send.request