ADR-002: resolve form backend as AWS SES via API Gateway + Lambda

This commit is contained in:
Tom Roth
2026-07-31 07:21:33 +02:00
parent 1a6f9fc509
commit 5c3dcab6bf
2 changed files with 12 additions and 12 deletions

View File

@@ -16,17 +16,18 @@ This file records stable architectural decisions and their rationale. Items here
- **Consequences**:
- Contact form delivery must be handled via a static-compatible approach (see ADR-002)
## ADR-002 — Form backend: existing AWS service
- **Status**: Partially accepted (details pending)
## ADR-002 — Form backend: AWS SES via API Gateway + Lambda
- **Status**: Accepted (endpoint details to be confirmed at implementation)
- **Context**: The site must collect quote request form submissions (FR-3, FR-5). The site is static, so a backend service is required.
- **Decision**: Use an **existing AWS service** owned/operated by the stakeholder.
- **Decision**: Use **AWS SES (Simple Email Service)** to deliver form submissions to Diana's inbox. The static form will POST to an **AWS API Gateway + Lambda** endpoint (existing infrastructure) that calls SES to send the email.
- **Rationale**:
- Reuses existing infrastructure
- Avoids new third-party service dependencies
- **Remaining open items** (blocking `38-lead-capture-spec.md`):
- Which AWS service is used (e.g. SES, API Gateway + Lambda)?
- What is the form submission endpoint URL?
- What spam protection is in place or expected (e.g. honeypot, reCAPTCHA, AWS WAF)?
- Reuses existing AWS infrastructure
- SES is reliable, cost-effective, and avoids third-party form service dependencies
- API Gateway + Lambda provides a clean, CORS-friendly endpoint for the static site
- **Remaining items** (to confirm before `38-lead-capture-spec.md` implementation):
- Endpoint URL for the API Gateway
- Recipient email address configured in SES
- Spam protection approach (e.g. honeypot field, reCAPTCHA, or AWS WAF — to specify in `38-lead-capture-spec.md`)
- **See also**: OQ-3
## ADR-003 — Mobile-first, performance-first design