Common Issues
Common setup and runtime failures from the generated project documentation.
Redis connection refused
Fix: Run npm run docker:up or start Redis with redis-server --daemonize yes. Confirm REDIS_HOST and REDIS_PORT.
Prisma Client did not initialize
Fix: Run npm run prisma:migrate, then restart npm run dev. Check DATABASE_URL if migration fails.
JWT_SECRET must be at least 32 characters
Fix: Set long, different values for JWT_SECRET and REFRESH_SECRET in .env.
Cannot POST /auth/login
Fix: The login route only exists in password and password + OAuth templates. JWT-only projects expose /refresh instead.
OAuth redirect_uri_mismatch
Fix: Copy the full callback URI from .env to the Google or GitHub provider dashboard, including protocol, port, and path.
OAuth provider is not configured
Fix: Add the provider to AUTHENIK8_OAUTH_PROVIDERS and set its client ID, secret, and redirect URI.
Invalid, expired, or reused refresh token
Fix: Login again and replace the stored refresh token. Rotation intentionally invalidates the previous token.
Concurrent refresh detected
Fix: Send only one refresh request at a time and share the result with waiting requests in your client.
Port 3000 already in use
Fix: Stop the process using port 3000 or change the listen port in the generated server file.