Next-Auth - Error: This action with HTTP GET is not supported by NextAuth.js

I have a next.js app that uses next-auth for authentication, prism to handle the database connection and planetscale as the database. (Not sure how much of that is relevant.) The auth functionality has been working without a hitch since first initializing the app with create-t3-app but my recent builds are unusable as I don’t get a sign in page just the text ‘Error: This action with HTTP GET is not supported by NextAuth.js.’

In the network tab of Chrome I can see that the request comes back with the status 400 but I don’t see any errors in the functions logs in Netlify. To confirm that the issue is specific to netlify, I deployed the application to Vercel as well and don’t get the same error, instead I get directed to the sign in page as expected.

I first noticed the error after upgrading next-auth to 4.18.3 from 4.16.4 but rolling back to 4.16.4 hasn’t helped and neither has another major version (4.17.0).

url: flourishing-teams-deashboard.netlify.app
Next’s Version: 13.0.3
Next-Auth Version: 4.16.4 (replicated the issue on 4.17.0 and 4.18.3)

2 Likes

I’m experiencing this too! I had to roll back to an older deploy while I sort this out: I can’t seem to version my way out of it either @imjoshnewton.

  • Site URL: ringofkeys.netlify.app
  • @netlify/plugin-nextjs: ^4.16.0 (replicated the issue on 4.29.2)
  • next: ^12.2.3
  • next-auth: ^4.2.1

Unfortunately my only way around this at this point was very brute force…

I created a new project from the same template I had started from and deployed it to make sure authentication was working and added features and routes one at a time to see what would break it and after a day or so of copying files over and deploying to make sure it still worked, I had my app to the current state of development with no error so I continued working from the new project.

I would like to know what caused the error so that it doesn’t come up again but I have resolved the issue on my end.

2 Likes

I had to take a different but similarly brute force approach :melting_face:

I used npm-check-updates to just bulk update every package to the latest version. And that worked for me after a mildly tedious unexpected Next 13 upgrade.

I think that the issue lies in some mismatch of Netlify, NextJS, and NextAuth versions since there are so many breaking changed at play between Next 13’s release, Netlify’s support for it, and the major EOL for the old runtime on Netlify, but :person_shrugging:t2:

Glad you were able to solve, cheers!

1 Like

Hi @franknoirot, thanks for providing @imjoshnewton additional tips to what helped you solve this issue. We appreciate the engagement in the community. (:smiling_face_with_three_hearts: