Invalid redirect URI on spotify auth
AuthenticationSpotifyAuthentication Problem Overview
I try to auth user through my app with spotify Web API but I receive this error:
INVALID_CLIENT: Invalid redirect URI
URL:
GET https://accounts.spotify.com/authorize/?client_id=6ae90bf75bf748c8874a75d16682f0c5&response_type=code&redirect_uri=https%3A%2F%2Fexample.com%2Fcallback&scope=user-read-private%20user-read-email
I cant see where is the problem... Can you help?
Authentication Solutions
Solution 1 - Authentication
You have to add the redirect URI to the White-list in "My Applications" panel.
Solution 2 - Authentication
app.js:
var redirect_uri = 'http://localhost:8888/callback';
(https://developer.spotify.com/dashboard) Spotify > My application:
http://localhost:8888/callback
Dont forget to save.
Solution 3 - Authentication
I ran into a similar issue when authenticated via Authorization Code Flow.
Per the docs The value of this parameter must exactly match the value of redirect_uri supplied when requesting the authorization code.
So make sure that the:
redirect_uri
that is configured in the dashboardredirect_uri
in the GET https://accounts.spotify.com/authorizeredirect_uri
in the POST https://accounts.spotify.com/api/token
is exactly the same or else you will get a INVALID_CLIENT: Invalid redirect URI
Solution 4 - Authentication
Navigate to your Spotify developer dashboard and open the project you are working on.
Next click "edit settings" and look for the redirect URIs field.
Put your redirect URI in the field. ex: http://localhost:8888/callback
Click save.
You should be good
Solution 5 - Authentication
First. You have to be sure that you're using app.js from authorization_code directory.
Second. Be sure you edited app.js. That third line is important.
var client_id = '---'; // Your client id
var client_secret = '---'; // Your secret
var redirect_uri = 'http://localhost:8888/callback'; // Your redirect uri - EXAMPLE
Solution 6 - Authentication
I use the SpotifyAPI-NET API wrapper by JohnnyCrazy and was having this problem despite adding the URL I specified in my wrapper call to my white list as specified above.
The browser's address bar should show the redirect URL it is using buried in the middle of the string - I found that it was also making a request with "https://accounts.spotify.com:8000/authorize" as the redirect URL - perhaps the wrapper is making 2 API calls, but I found that only by whitelisting both this URL and the one I was specifying would it work for me.
Solution 7 - Authentication
This is super specific, so make sure you have exact url in each place.
In my app dashboard on spotify I had: http://localhost:3005/
And my url is: https://accounts.spotify.com/authorize?client_id=XXXXXXXXXXXXXXXXX&response_type=code&redirect_uri=http %3A%2F%2Flocalhost:3005/&scope=user-read-currently-playing%20user-top-read
Note the trailing slash in both places.
Solution 8 - Authentication
This error also appears when the redirect_uri is missing in the request. I figured that out the hard way due to writing "redirect_url" (with an L) instead.
Took me way too long to figure out. Hopefully this can save someone else some time.
Solution 9 - Authentication
+1 to adding 'http://localhost:8888/callback'; to the Redirect URIs list in your App's settings via https://developer.spotify.com/dashboard/applications
It's a shame this is not mentioned on the quick start: https://developer.spotify.com/documentation/web-playback-sdk/quick-start/
Solution 10 - Authentication
> Include a path after the first pair of forward slashes. For example: > Your app name is My Awesome App The redirect URI may be > my-awesome-app-login://callback or > awesomeprotocol123://returnafterlogin. > > For more information please refer this link Spotify Redirect URI Example