Files
service-finder/docs/v201/testing_logs/live_email_verification_report.md

3.6 KiB

Live Email Delivery Verification Report

Date: 2026-03-27
Test Type: Integration QA - Live Email Delivery Verification
Status: PARTIAL SUCCESS (Issues Identified)

Executive Summary

A "Live Fire" email delivery test was conducted to verify that emails actually leave our infrastructure via SendGrid and arrive at external mailboxes. The test revealed that while SendGrid is configured, the API key appears invalid or the sender email is not verified, resulting in 401 Unauthorized errors.

Test Configuration

Environment Audit

  • SENDGRID_API_KEY: Present in container environment (69 characters)
  • SMTP_HOST: sf_mailpit (development Mailpit service)
  • SMTP_PORT: 1025
  • EMAIL_PROVIDER: smtp (configured to use Mailpit)
  • MAIL_FROM Email: info@profibot.hu (from config.py)
  • MAIL_FROM Name: Profibot

Current Email Flow

The system is currently configured to use Mailpit (local SMTP catcher) instead of SendGrid for production email delivery.

Test Execution

Test 1: Direct SendGrid API Test

  • Objective: Send email directly via SendGrid API
  • Result: FAIL - HTTP 401 Unauthorized
  • Error: python_http_client.exceptions.UnauthorizedError: HTTP Error 401: Unauthorized
  • Analysis: The SendGrid API key is either invalid, expired, or the sender email (info@profibot.hu) is not verified in SendGrid dashboard.

Test 2: EmailService Integration Test

  • Objective: Use backend's EmailService with SendGrid provider
  • Result: FAIL - Email provider set to "disabled" in database
  • Error: Database configuration issues with system parameters scope
  • Analysis: The email system is configured to use SMTP (Mailpit) as fallback due to database configuration.

Issues Identified

Critical Issues

  1. Invalid SendGrid API Key: The current API key returns 401 Unauthorized
  2. Unverified Sender: info@profibot.hu may not be verified in SendGrid
  3. Database Configuration: Email provider set to "disabled" in system parameters

Configuration Issues

  1. System parameter scope enum mismatch causing configuration retrieval errors
  2. Email provider defaults to Mailpit instead of SendGrid

Recommendations

Immediate Actions

  1. Verify SendGrid API Key: Check if the API key in environment is valid and active
  2. Verify Sender Domain: Ensure profibot.hu domain is verified in SendGrid
  3. Update Database Configuration: Fix system parameter scope and enable SendGrid provider

Complete Live Test Requirements

To perform a complete live delivery verification:

  1. Obtain Mail7.io Credentials: Register at mail7.io for disposable email API
  2. Configure Environment Variables:
    MAIL7_API_KEY=your_api_key
    MAIL7_API_SECRET=your_api_secret
    
  3. Run Complete Test: Execute tests/fire_drill_email.py with valid credentials

Scripts Created

  1. tests/fire_drill_email.py - Complete live fire test with Mail7.io integration
  2. tests/sendgrid_live_test.py - Direct SendGrid API test
  3. backend/sendgrid_live_test.py - Copy for container execution

Next Steps

  1. Fix SendGrid API key or sender verification
  2. Update database email configuration to use SendGrid
  3. Obtain Mail7.io credentials for external verification
  4. Re-run live fire test with external mailbox verification

Evidence

Test logs and error outputs are available in:

  • Container stdout from test execution
  • System logs in Docker containers
  • This report document

Test Concluded: 2026-03-27T12:40:00Z
Test Lead: Integration QA Automation
Status: Requires SendGrid configuration fix before full live test can be completed