First time here? Check out the FAQ!

401 Nonce Expired

1: url: 2: username: NAM HOANG (I am a realtor, not a vendor, but I have access to RETS)

This is the output from my debug log:

rets-client:request request: { debugId: 1, uri: '', method: 'GET', headers: { 'User-Agent': 'RETS node-client/4.x', 'RETS-Version': 'RETS/1.5', host: '' } } +0ms

rets-client:request auth: { debugId: 1, statusCode: 401, headers: { 'cache-control': 'private', 'content-type': 'text/html', expires: 'Mon, 01 Jan 0001 00:00:00 GMT', 'rets-server': 'RETS-Paragon/1.0', 'rets-version': 'RETS/1.5', 'www-authenticate': 'Digest qop="auth",realm="HUDSON",nonce="2019-05-16T03:21:53",opaque="",stale="false",domain="\rets\fnisrets.aspx\HUDSON"', 'x-server': 'A11', date: 'Thu, 16 May 2019 03:11:52 GMT', connection: 'close', 'content-length': '1293', vary: 'Accept-Encoding' }, uri: '' } +367ms

rets-client:request request: { debugId: 1, uri: '', method: 'GET', headers: { 'User-Agent': 'RETS node-client/4.x', 'RETS-Version': 'RETS/1.5', authorization: 'Digest username="NAM HOANG", realm="HUDSON", nonce="2019-05-16T03:21:53", uri="/rets/fnisrets.aspx/HUDSON/login?rets-version=rets%2F1.5", qop=auth, response="5fde621f01bd55b0f260ff0455f3ea22", nc=00000001, cnonce="5c5be3e2b46d463bb0c0b5661a084170"', referer: '', host: '' } } +9ms

rets-client:request response: { debugId: 1, headers: { 'cache-control': 'private', 'content-type': 'text/html', expires: 'Mon, 01 Jan 0001 00:00:00 GMT', 'rets-server': 'RETS-Paragon/1.0', 'rets-version': 'RETS/1.5', 'www-authenticate': 'Digest qop="auth",realm="HUDSON",nonce="2019-05-16T03:21:53.8b328b9a2a7239800da8f610b6d31326",opaque="",stale="true",domain="\rets\fnisrets.aspx\HUDSON"', 'x-server': 'A11', date: 'Thu, 16 May 2019 03:11:53 GMT', connection: 'close', 'content-length': '1293', vary: 'Accept-Encoding' }, statusCode: 401, body: '\r\n<html xmlns="">\r\n<head>\r\n<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>\r\n<title>401 - Unauthorized: Access is denied due to invalid credentials.</title>\r\n<style type="text/css">\r\n\r\n</style>\r\n</head>\r\n<body>\r\n

Server Error


401 - Unauthorized: Access is denied due to invalid credentials.


You do not have permission to view this directory or page using the credentials that you supplied.

\r\n </fieldset>
\r\n</body>\r\n</html>\r\n' } +220ms Unhandled rejection RetsServerError: RETS Server error while attempting login - HTTP Status 401 returned (Nonce Expired)

namland's avatar
asked 2019-05-15 22:16:04 -0500
edit flag offensive 0 remove flag close merge delete


What client are you using for RETS access?
I was able to login successfully using your account information.

bwolven's avatar bwolven (2019-05-16 13:07:36 -0500) edit

Hi Bruce, I've tried the RETS Python 3 Client library:, as well as the NodeJS rets-client library: Can you validate that the http headers I'm sending are correct? Any idea why I would be getting that error that my nonce is expired? From the debug log, it's clear that I'm returning the nonce sent to me in the initial 401 response from the RETS server. Can you also tell me how you were able to login?

namland's avatar namland (2019-05-16 14:31:58 -0500) edit

I tested using a test app that uses the libRETS library.
I also tested by putting the login URL you listed in Chrome and entering credentials there too.
You can try it in the browser to see if the login is successful.
I would suggest using RETS-Verson=RETS/1.7.2 instead of 1.5 but it will login with either.

bwolven's avatar bwolven (2019-05-16 14:38:04 -0500) edit

I've tried both of your suggestions and neither worked. I navigated in Chrome to: I was prompted for my username and password, entered it, and still got a 401. I am using the same username and password which works when I go through the front end application:

namland's avatar namland (2019-05-16 14:44:48 -0500) edit

I've also tried specifying RETS 1.5, 1.7.2, and 1.8, none worked for me, same 401 Nonce Expired.

namland's avatar namland (2019-05-16 14:45:36 -0500) edit

Make sure you don't have any trailing white space in your credentials.
If it doesn't work when you test in the browser, something is wrong with the credentials you are using.
I used the user name "NAM HOANG" you specified above.
It looks as though your password was changed twice on 5/13/2019.

bwolven's avatar bwolven (2019-05-16 14:52:28 -0500) edit

My username and password work for, but NOT: Do you have an idea of why this might happen? The same credentials should be valid on both urls right?

namland's avatar namland (2019-05-16 15:00:43 -0500) edit
add a comment see more comments

1 Answer



It looks like SafeMLS and Paragon are not correctly in sync. I've reached out to our support manager here as a heads up, with the information on the account. Please reach out to the MLS for further instruction.

Thank you,

Sadie's avatar
answered 2019-05-16 15:23:59 -0500, updated 2019-05-16 15:24:48 -0500
edit flag offensive 0 remove flag delete link


Ok I finally got it sorted out. I was using my safeMLS password, when I should have been using my PIN! Very confusing, but glad it's solved. Thanks for your help Bruce.

namland's avatar namland (2019-05-16 15:41:28 -0500) edit

Glad to hear that.

bwolven's avatar bwolven (2019-05-16 15:42:52 -0500) edit

Hey Sadie, thanks so much for your help, but I have resolved the issue. I didn't realize that the paragon password I had was just for safeMLS, and that the RETS server is actually asking for my PIN.

namland's avatar namland (2019-05-16 15:43:16 -0500) edit
add a comment see more comments

Your Answer

Login/Signup to Answer