updated to watch for request errors (ex. server down)

updated to watch for request errors (ex. server down) and pass back the error to allow the calling app to handle it