What This Tool Does

When you connect an existing mailbox via OAuth, the system creates a brand-new emailAccounts row for the OAuth credentials. If your old SMTP-based row for the same email still exists, that row keeps your signature, customer assignment, BDR leader, and sending-rate settings — but the new OAuth row starts blank. This tool finds those duplicate-email pairs and copies the data forward onto the OAuth row, so your hard-earned signatures and settings aren't lost. It is read-first: it scans, shows you the merge plan, and waits for your confirmation before writing anything.

Backfill: Link Legacy Rows to OAuth Twin

Finds legacy emailAccounts rows that were merged via this tool (have mergedIntoAccountId set) but are missing the oauthAccountId field. Without that field, the cron's routing check falls through to legacy SMTP and Google rejects the send with 535 BadCredentials. Running this backfill is the fix for "every send today is failing with BadCredentials."

Click Scan to find legacy rows that need their oauthAccountId backfilled.

Scan Results

Duplicate-Email Pairs

Each card below shows your old account on the left and the new OAuth-linked account on the right. Yellow-highlighted fields are the ones that will be copied forward when you click Merge. Already-populated fields on the OAuth side are left untouched.

Scanning…

Audit Log

Every action taken on this page is appended here.

Ready.