canRetry: call before first request