Contact API

Handle contact form submissions with validation and email processing.

Overview

The Contact API endpoint handles form submissions from the contact form, validates the input data, and processes the contact request. It includes validation for required fields, email format, and privacy policy acceptance.

/api/contact

Endpoint Details

URL

POST /api/contact

Content Type

application/json

Authentication

No authentication required.

Request Format

Request Body

Send a JSON object with contact form data including name, email, subject, message, and privacy acceptance.

Required Fields

name - Contact person's full name
email - Valid email address
subject - Message subject line
message - Message content
privacy - Must be true (privacy policy acceptance)

Response Format

Success Response (200)

Returns success confirmation with message ID for tracking.

Validation Error (400)

Returns validation errors for invalid or missing required fields.

Server Error (500)

Returns error message when email sending fails.

Usage Examples

JavaScript Fetch

Use POST request with JSON data to submit contact form.

Implementation Notes

Email Service Integration

To enable actual email sending, integrate with an email service:

  • SendGrid for reliable email delivery
  • Mailgun for developer-friendly API
  • AWS SES for cost-effective solution
  • Nodemailer for SMTP integration

Security Considerations

  • Implement rate limiting to prevent spam
  • Add CAPTCHA for additional protection
  • Sanitize input data before processing
  • Use HTTPS for secure data transmission
  • Validate email format server-side