Secure HTTPS request fails 90% of the time
Increase the timeout for your request with HTTPClient.setTimeout(). Note the timeout is in milliseconds.

HTTPClient http;
http.setTimeout(15000); // 15 Seconds
http.begin(url, thumbprint);