29
CodeDev system / System reference

CodeDev inquiries, CRM, and Resend notifications

The implemented contact-to-CRM flow, preferred-contact data, Resend owner notifications, retry behavior, and what the system does not claim about final email delivery.

codedevcontactcrmresendgmailprivacy

01The database is authoritative

A valid project inquiry is committed to the Lead table before CodeDev attempts the optional Resend owner notification. If Resend is unavailable or rejects the request, the inquiry remains in the Admin Inbox and its notification state records the operational failure for retry.

textImplemented inquiry sequence
Visitor POST /contact
  -> server validation + rate limit + honeypot
  -> commit Lead to database
  -> optional Resend owner notification
  -> store sent/failed notification metadata
  -> HTTP 303 redirect to /contact?sent=1

02Preferred contact data

Every inquiry requires a validated email address. Email, Messenger, Phone, and Other are supported preferred-contact choices. Non-email choices expose and validate a separate preferred_contact_detail field; Email uses the validated inquiry email as the contact address.

03Resend behavior

  • CONTACT_FROM_EMAIL must be a sender on a domain verified in Resend.
  • The visitor email is used as Reply-To rather than From so sender-domain authentication remains valid.
  • CONTACT_TO_EMAIL is the owner mailbox, such as Gmail.
  • A successful API request stores the provider message ID.
  • Failure response bodies are not retained; the application stores only a sanitized operational failure category/status.
bashProduction notification verification
python -m flask --app manage.py notification-check
python -m flask --app manage.py notification-check --send-test