# Send test email Send a test email with intelligent defaults based on domain health. Features: - Supports 3 test modes: basic, standard, full - Auto-disables tracking based on test mode - Basic spam word detection (not comprehensive scoring) - Returns warnings and recommendations - Provides next steps for new domains Test Modes: - basic: Disables all tracking regardless of request. Best for new domains. - standard: Disables open tracking, enables click tracking. For warming domains. - full: Honors your tracking preferences. For established domains. Best Practice: 1. Call /api/v1/customer/domains/test-readiness/:domain_id first 2. Use the recommended test mode 3. Review warnings before sending 4. Follow next steps provided in response Content Analysis: Set analyze_content: true to receive basic spam word warnings. > Note: This endpoint performs only basic spam detection. For comprehensive content > scoring with detailed analysis, use POST /api/content-score (subject to tier limits). Endpoint: POST /api/v1/customer/test-email Version: 1.0.0 Security: ApiKeyAuth ## Request fields (application/json): - `domain_id` (string, required) Domain ID - `from` (string, required) From email address - `to` (string, required) To email address - `subject` (string) Email subject (default "Test Email") - `html` (string) HTML content - `text` (string) Plain text content - `track_opens` (boolean) Enable open tracking (overridden by test_mode) - `track_clicks` (boolean) Enable click tracking (overridden by test_mode) - `test_mode` (string) Test mode to use (recommended from test-readiness API) Enum: "basic", "standard", "full" - `analyze_content` (boolean) Run basic spam word detection (not full content scoring) ## Response 201 fields (application/json): - `message` (string) - `email` (object) - `email.id` (string) - `email.from` (string) - `email.to` (string) - `email.subject` (string) - `email.domain` (string) - `email.message_id` (string) - `email.status` (string) - `email.tracking` (object) - `email.tracking.opens` (boolean) - `email.tracking.clicks` (boolean) - `domain_info` (object) - `domain_info.age_in_days` (integer) - `domain_info.has_custom_tracking` (boolean) - `warnings` (array) - `warnings.type` (string) - `warnings.severity` (string) - `warnings.recommendation` (string) - `content_analysis` (object,null) Basic spam detection results (not comprehensive scoring) - `content_analysis.basic_check_performed` (boolean) Indicates basic spam check was performed - `content_analysis.spam_words_found` (integer) Number of common spam phrases detected - `content_analysis.note` (string) Information about using full content scoring endpoint - `next_steps` (array) ## Response 400 fields (application/json): - `error` (string) Error code or message ## Response 401 fields (application/json): - `error` (string) Error code or message ## Response 403 fields (application/json): - `error` (string) - `customer_status` (object) - `customer_status.suspended` (boolean) - `customer_status.blocked` (boolean) ## Response 404 fields (application/json): - `error` (string) Error code or message ## Response 500 fields (application/json): - `error` (string) Error code or message