[firebase/auth] Auth action links ignore linkDomain param
Describe your environment
- Operating System version: macOS Sequoia
- Firebase SDK version: 13.1.0
- Firebase Product: auth
- Node.js version: v22.14.0
- NPM version: v10.9.2
Describe the problem
Steps to reproduce:
Whenever we make a call to admin.auth.generateSignInWithEmailLink or any other actionLink-related method, the linkDomain is ignored and the firebase project default url is used instead.
The firebase-admin SDK calls the Identity Toolkit API, which is the actor that is probably ignoring the linkDomain param.
Relevant Code:
var actionCodeSettings = {
url: `${appDomain}/mobile/emailLinkSignIn`,
handleCodeInApp: false,
linkDomain: '<other-site>.firebaseapp.com, // Other Hosting site: Does not work, uses default instead
// linkDomain: '<custom-domain>, // Custom domain registered in Hosting: Does not work, uses default instead
};
const signInWithEmailLink = await admin.auth.generateSignInWithEmailLink(email, actionCodeSettings);
console.log(signInWithEmailLink) // Returns "https://<project-id>.firebaseapp.com/__/auth/action?..."
We're also facing the same issue with generateSignInWithEmailLink.
Firebase SDK version: 13.2.0 Firebase Product: auth Node.js version: v20.11.0 PNPM version: v8
Our domain is connected on Firebase hosting and has been added to authorised domains whitelist.
I'm also seeing the same problem. There doesn't seem to be any way to generate links for different hosting domains.
Just replace the domain after the link has been generated. For verification in app, only the search params are relevant (like continueUrl, oobCode etc.)