Curl version:
curl 7.55.1 (Windows) libcurl/7.55.1 WinSSL
Ruby version:
ruby 2.4.4p296 (2018-03-28 revision 63013) [x64-mingw32]
Line 17 of authenticate_user has the safe navigation operator which could potentially be causing issues, but I just checked and that was added in ruby 2.3.
Perhaps this is just an issue with development on windows, but I haven't had issues with curl in the past.