¡Hola!
Gracias por el informe, el tema es importante y va mucho más allá de Spotify.
¿Por qué se bloquea?
Spotify endureció sus reglas de seguridad a principios de 2025 (aplicado a las nuevas aplicaciones desde el 9 de abril de 2025, a todas desde noviembre de 2025). Una URL de redirección OAuth solo se acepta ahora si:
- está en HTTPS, o
- es una dirección de bucle explícito:
http://127.0.0.1:PUERTO o http://[::1]:PUERTO.
localhost ya no se acepta, y una IP local en HTTP (http://192.168.1.50) tampoco. Sin embargo, así es exactamente como la mayoría de ustedes accede a Gladys en casa: una IP local, en HTTP, sin certificado. De ahí el famoso redirect_uri: Not matching configuration.
Es un problema común a todos los proyectos autoalojados, Home Assistant se enfrentó al mismo.
La solución provisional
La mencionada por @Will_71 funciona: declarar en Spotify la URL de callback de Gladys reemplazando la IP local por 127.0.0.1 (manteniendo el puerto y la ruta exactamente iguales), y luego iniciar la autorización desde un navegador que se ejecute en la máquina donde está instalado Gladys, o a través de un túnel SSH (ssh -L) desde tu PC.
Funciona porque Spotify solo verifica que la URL coincida carácter por carácter, nunca necesita contactarla.
Pero seamos honestos: es perfecto para los manitas, e inutilizable para alguien que controla su Gladys desde su teléfono. No es una respuesta aceptable a largo plazo.
La verdadera solución: una URL de redirección oficial de Gladys
Voy a implementar una URL de redirección oficial en HTTPS, alojada por Gladys, sobre el mismo principio que lo que hace Home Assistant con my.home-assistant.io.
El principio:
- Es esta URL oficial (en HTTPS, por lo tanto aceptada por Spotify) la que declaras en tu aplicación de Spotify, ya no necesitas un certificado ni un nombre de dominio en tu casa.
- Después de tu autorización, Spotify redirige a esta página, que redirige simplemente tu navegador a tu Gladys local, con una pantalla de confirmación que te indica claramente a qué dirección vas a ser redirigido.
- Tu instancia completa el intercambio ella misma y almacena los tokens localmente.
Punto importante sobre la privacidad: esta página es totalmente estática, sin servidor detrás. Tus credenciales de Spotify, tus tokens de acceso y tus datos nunca pasan por nuestros servidores, la página solo hace una redirección en tu navegador, exactamente como lo hace Home Assistant.
Otras ventajas:
- funcionará para todas las integraciones externas que utilicen una conexión OAuth2, no solo Spotify;
- no se necesita Gladys Plus ni suscripción: está disponible para todos;
- para quienes ya tienen una URL en HTTPS (nombre de dominio, proxy inverso), podrán seguir usando la suya.
Me encargo de la implementación y vuelvo aquí tan pronto como esté disponible, con la documentación actualizada. Mientras tanto, el contorno 127.0.0.1 mencionado anteriormente permite salir del paso.
Gracias por reportar el problema 