Closed8
Firebase Auth で Email Link ログインの本文カスタマイズ調査レポート
やりたいこと
firebaseのemail link loginのメール本文をカスタマイズしたい
結論?
firebase 公式のやり方では、ログインメールの本文(テンプレート)は変えられないみたい。スパム予防のためとかで。
参考: https://firebase.google.com/docs/auth/custom-email-handler?hl=ja
stackoverflowを見ても、やはり基本的には難しそう
別のAPIを使用する等の知恵と工夫で、login linkを生成することはできないか・・・?
firebase-adminでlogin linkを生成できるAPIが存在したので、それを利用する
// Admin SDK API to generate the sign in with email link.
const usremail = 'user@example.com';
getAuth()
.generateSignInWithEmailLink(usremail, actionCodeSettings)
.then((link) => {
// Construct sign-in with email link template, embed the link and
// send using custom SMTP server.
return sendSignInEmail(usremail, displayName, link);
})
.catch((error) => {
// Some error occurred.
});
実装できたので、後で zenn記事に起こす。
実装の工夫で、emulatorでも開発体験を変えることなく email-loginが実装できた。ここについては記事で。

実装できたので、後で zenn記事に起こす。
こちらの件、実装された記事へのリンクを教えて頂けますか?
返信遅くなってしまい申し訳ないです・・・!
window.origin
を使用時にパラメータで渡すことで運用していました!
下記はCloud Functionsで実行する際のサンプルコードです!
export const signInEmailLinkFunc = async ({ email, origin }: Params) => {
const loginAfterURL = new URL('login-complete', origin).href;
const actionCodeSettings = { url: loginAfterURL, handleCodeInApp: true };
const link = await admin.auth().generateSignInWithEmailLink(email, actionCodeSettings);
...
};
このスクラップは2022/04/16にクローズされました