← SOP

New member email setup

Get your [email protected] address working in Gmail — fully self-service, no admin needed.
2026-05-28 SOP — Onboarding ~10 min Audience: all team members

TL;DR

Open Claude Code in the sponic repo, paste the prompt from Step 1, fill in your details, and follow along. Claude handles the Cloudflare setup; you handle one verification click and the Gmail “Send mail as” config. No admin involvement required.

How Sponic email works

Sponic Gardens doesn’t run its own mail server. Two services work together so you can send and receive @sponicgardens.com mail from your existing personal Gmail:

Receiving mail Someone sends to [email protected] → Cloudflare Email Routing catches it → forwards to your personal Gmail → appears in your inbox like any other email Sending mail You compose in Gmail, pick "[email protected]" from the From dropdown → Gmail relays through Brevo SMTP → Brevo signs it with our domain keys (DKIM) → recipient sees "From: Your Name <[email protected]>"

The result: one Gmail inbox for everything. No extra apps, no separate login.

What you need before starting

1 Paste the setup prompt into Claude Code

Copy the prompt below, replace the three placeholder values with your real info, and paste it into Claude Code. Claude will register your email address in Cloudflare and then pause for you to verify.

Set up a new @sponicgardens.com email address for me. I have the sponic
repo open and BW access on this machine.

My details:
- Sponic address I want: [email protected]
- My personal Gmail: [email protected]
- Display name: FULL NAME

Do the following in order:

1. Unlock BW via infra/bin/bw-sponic and get the Cloudflare Email Routing
   token for sponicgardens.com (check infra/runbook.md for the BW item
   name and the zone/account IDs).

2. Check if my personal Gmail is already a verified destination on the
   wingsiebird CF account. If not, register it:
   POST /accounts/{acct}/email/routing/addresses
   Body: {"email": "[email protected]"}

3. STOP and tell me to check my personal Gmail for the Cloudflare
   verification email (from [email protected]). I need to click the
   link before you can continue. Wait for me to confirm.

4. After I confirm: create the routing rule on the sponicgardens.com zone:
   POST /zones/{zone}/email/routing/rules
   Body: {
     "name": "[email protected][email protected]",
     "matchers": [{"type":"literal","field":"to","value":"[email protected]"}],
     "actions":  [{"type":"forward","value":["[email protected]"]}],
     "enabled": true, "priority": 10
   }

5. Update infra/runbook.md — add the new rule to the sponicgardens.com
   routing table and add my Gmail to the verified-destinations list.

6. Tell me the Cloudflare side is done and I should continue with Step 4
   in the email setup guide at:
   https://in.sponicgardens.com/indocs/sop/email-setup.html

What to replace

2 Click the Cloudflare verification email

After Claude registers your Gmail as a destination, Cloudflare sends a verification email directly to your personal Gmail.

  1. Open your personal Gmail.
  2. Search for from:[email protected] "email routing".
  3. Open it and click the verification link. You’ll see a Cloudflare page that says “Email address verified.”

Don’t see it?

Check Spam. If it’s been more than 15 minutes, tell Claude to re-send it via the API. The link expires after 24 hours.

3 Tell Claude you clicked it

Go back to your Claude Code session and say something like “I clicked the verification link, go ahead.” Claude will create the routing rule and update the runbook. Once it confirms success, your inbound email is live — mail sent to your @sponicgardens.com address will start arriving in your personal Gmail immediately.

4 Configure “Send mail as” in Gmail

Inbound is handled. Now set up outbound so you can compose and reply from your @sponicgardens.com address inside Gmail.

4a. Open Gmail settings

  1. Go to Gmail in your browser (not the mobile app).
  2. Click the gear icon (top right) → See all settings.
  3. Click the Accounts and Import tab.

4b. Add another email address

  1. Scroll to the “Send mail as” section.
  2. Click “Add another email address”. A popup window opens.
  3. Fill in:
    • Name: your display name (e.g. “Mariia Sataraka”).
    • Email address: your @sponicgardens.com address.
    • Leave “Treat as an alias” checked.
  4. Click Next Step.

4c. Enter the SMTP credentials

Gmail asks for SMTP server details. Enter exactly:

SMTP Serversmtp-relay.brevo.com
Port587
Username[email protected]
Passwordxsmtpsib-f622d0a1822828b66a53d4217e0334309430674ce871a39ed4f59a9defaee61e-OYvK4dvnRYvRD6U7
Secured connectionSelect TLS (this is the default for port 587)

Common mistakes

The username is the literal string [email protected]not your personal email, not your @sponicgardens.com address. The password is the long xsmtpsib-… key — copy-paste it exactly, no trailing spaces. Everyone on the team uses the same username and password.

  1. Click Add Account.

5 Confirm the Gmail verification code

After clicking “Add Account”, Gmail sends a verification email to your @sponicgardens.com address. Because Cloudflare is already forwarding that address to your personal Gmail, the code lands right in the same inbox — usually within 30 seconds.

  1. Look for an email from [email protected] with subject “Gmail Confirmation.”
  2. Either click the confirmation link or copy the numeric code into the still-open Gmail popup.
  3. The popup closes. Your new address now appears under “Send mail as.”

Verification email didn’t arrive?

This means the inbound routing rule isn’t active yet — go back to your Claude Code session and make sure Step 3 completed successfully (Claude should have confirmed the rule was created).

6 Set defaults and send a test

6a. Configure reply behavior

In Settings → Accounts and Import → Send mail as:

6b. Send a test

  1. Compose a new message. In the From dropdown, select your @sponicgardens.com address.
  2. Send to a different email account you can check.
  3. Confirm the recipient sees Your Name <[email protected]>.
  4. Reply from the recipient side. Confirm the reply lands in your Gmail.

Don’t test by sending to yourself

If you send from your Gmail (via the alias) to any address that routes back to the same Gmail, Gmail silently hides the message (it only appears in Sent). This is Gmail deduplication, not a bug. Always test with a different account.

Once the test passes: you’re done. Start using your @sponicgardens.com address for all Sponic correspondence.

Already set up with Resend SMTP?

If you previously configured “Send mail as” using Resend (smtp.resend.com), you should switch to Brevo. Resend’s idempotency handling conflicts with Gmail’s retry behavior, causing intermittent 550 errors.

  1. Gmail → Settings → Accounts and Import.
  2. Find your @sponicgardens.com address under “Send mail as.”
  3. Click “edit info”Next Step.
  4. Replace the SMTP fields with the Brevo credentials from Step 4c above.
  5. Click Save Changes.
  6. Send yourself a test to confirm.

Troubleshooting

SymptomCause & fix
Claude Code can’t unlock BW Make sure your Bitwarden master password is stored in macOS Keychain under bitwarden-cli. Run infra/bin/bw-sponic unlock manually to test. If you don’t have access to the DevOps-sponicgarden collection, ask an existing team member to add you.
Claude says “Destination address is not verified” You haven’t clicked the Cloudflare verification email yet (Step 2). Check your personal Gmail, including Spam. Tell Claude to re-send it if needed.
Never received the Cloudflare verification email Check Spam. If not there, Claude may have registered the wrong Gmail address. Tell Claude to list the pending destinations via the CF API and re-register if needed.
Gmail says “Authentication failed” Double-check the SMTP credentials in Step 4c. Username is [email protected] (not your email). Password is the xsmtpsib-… key — no trailing spaces.
Gmail verification code never arrives (Step 5) The CF routing rule isn’t active. Go back to Claude Code and confirm Step 3 completed. Claude should show the rule-creation API response with "success": true.
Test email sent to yourself didn’t appear Gmail deduplication — not a bug. When sender and recipient resolve to the same Gmail, Gmail suppresses the inbox copy. Test with a different account.
Sent a test but recipient didn’t get it Check Gmail → Sent to confirm it left. If it’s in Sent, the Brevo domain authentication may have lapsed — ask in #tech-support.
Reply from an external sender never arrives The routing rule may not exist. Tell Claude to GET /zones/{zone}/email/routing/rules and check.

Need help?

Last updated 2026-05-28. Infra: Cloudflare Email Routing (wingsiebird account), Brevo SMTP ([email protected]), BW collection DevOps-sponicgarden.