Simple Email API

A lightweight email sending API that allows inline styling configuration without requiring company setup or database configuration.

Overview

  • Method: POST
  • URL: /api/send-simple-email
  • Description: Send emails with inline styling and no company setup required
  • Features: Multiple themes, PDF attachments, custom branding, multiple recipients

The Simple Email API is designed for quick, one-off email sending without the complexity of company setup, database configuration, or campaign management. Perfect for simple notifications, alerts, or basic communication needs.

Key Features

  • ✅ No company ID or database setup required
  • ✅ 4 built-in color themes (blue, red, black, stone)
  • ✅ Multiple recipients support (to, cc, bcc)
  • ✅ PDF attachments (automatically downloaded and attached)
  • ✅ Custom branding (logo, company name)
  • ✅ Markdown support in descriptions
  • ✅ Input validation and error handling
  • ✅ Responsive email design

Preview

Interactive Preview

See how your emails will look with different themes. Click the theme buttons to switch between them.

Email Preview - Blue Theme
[object Promise]

This preview shows how your email will look with the blue theme. The actual email will be responsive and work across all email clients.


Request Format

Required Fields

  • to: Email address(es) to send to
  • At least one of title or description

Optional Fields

  • bcc, cc: Additional recipients
  • pdf: PDF attachment URLs (automatically downloaded and attached)
  • logoUrl: Company logo URL
  • theme: Color theme
  • siteName, supportEmail, siteUrl: Branding

Basic Request

{
  "to": ["email@example.com", "email2@example.com"],
  "bcc": ["one@example.com"],
  "cc": ["two@example.com"],
  "title": "This is the title",
  "description": "This is the description",
  "pdf": ["https://s3.com/path/to/file1.pdf", "https://s3.com/path/to/file2.pdf"],
  "logoUrl": "https://s3.com/logo.png",
  "theme": "blue",
  "siteName": "Your Company Name",
  "supportEmail": "support@example.com",
  "siteUrl": "https://example.com"
}

Minimal Request

{
  "to": "user@example.com",
  "title": "Welcome!",
  "description": "Thank you for signing up."
}

Markdown Support

The description field supports Markdown formatting for rich text content:

Supported Markdown Features

  • Bold text: **bold** or __bold__
  • Italic text: *italic* or _italic_
  • Code snippets: `code`
  • Links: [text](url)
  • Line breaks: Double newline
  • Lists: - item or 1. item

Markdown Example

{
  "to": "user@example.com",
  "title": "Welcome to Our Service",
  "description": "Thank you for signing up! We're excited to have you on board.\n\n**Key features:**\n- ✅ No setup required\n- ✅ Multiple themes\n- ✅ PDF attachments\n- ✅ Markdown support\n\nVisit our [documentation](https://docs.audla.ca) to learn more.",
  "theme": "blue"
}

Themes

Available Themes

  • blue (default): Professional blue theme
  • red: Attention-grabbing red theme
  • black: Elegant black theme
  • stone: Neutral stone gray theme

Blue Theme (Default)

{
  "primary": "#3b82f6",
  "secondary": "#1f2937", 
  "accent": "#60a5fa",
  "background": "#f6f9fc",
  "text": "#374151",
  "muted": "#6b7280"
}

Red Theme

{
  "primary": "#ef4444",
  "secondary": "#991b1b",
  "accent": "#f87171", 
  "background": "#fef2f2",
  "text": "#374151",
  "muted": "#6b7280"
}

Black Theme

{
  "primary": "#000000",
  "secondary": "#1f2937",
  "accent": "#374151",
  "background": "#f9fafb",
  "text": "#111827", 
  "muted": "#6b7280"
}

Stone Theme

{
  "primary": "#78716c",
  "secondary": "#44403c",
  "accent": "#a8a29e",
  "background": "#fafaf9",
  "text": "#292524",
  "muted": "#78716c"
}

Examples

Basic Email

Simple welcome message with blue theme.

curl -X POST https://apis.audla.ca/api/send-simple-email \
  -H 'Content-Type: application/json' \
  -d '{
    "to": "user@example.com",
    "title": "Welcome!",
    "description": "Thank you for signing up to our service.",
    "theme": "blue"
  }'

Multiple Recipients with PDF

Send to multiple people with PDF attachments and red theme.

curl -X POST https://apis.audla.ca/api/send-simple-email \
  -H 'Content-Type: application/json' \
  -d '{
    "to": ["user1@example.com", "user2@example.com"],
    "cc": ["manager@example.com"],
    "bcc": ["archive@example.com"],
    "title": "Quarterly Report",
    "description": "Please find attached the Q4 financial report.",
    "pdf": [
      "https://example.com/reports/q4-report.pdf",
      "https://example.com/reports/q4-summary.pdf"
    ],
    "theme": "red",
    "siteName": "Finance Department"
  }'

Black Theme with Logo

Elegant black theme with custom logo.

curl -X POST https://apis.audla.ca/api/send-simple-email \
  -H 'Content-Type: application/json' \
  -d '{
    "to": "client@example.com",
    "title": "Project Complete",
    "description": "Your project has been delivered successfully.",
    "theme": "black",
    "logoUrl": "https://example.com/logo.png",
    "siteName": "Design Studio"
  }'

Stone Theme for Team Communication

Neutral stone theme for team updates.

curl -X POST https://apis.audla.ca/api/send-simple-email \
  -H 'Content-Type: application/json' \
  -d '{
    "to": ["team@example.com"],
    "title": "Weekly Update",
    "description": "Here is your weekly team update and upcoming deadlines.",
    "theme": "stone",
    "siteName": "Team Communications"
  }'

Response Format

Success Response

Returns message IDs and recipient count.

Error Response

Returns error details with validation messages.

Success Response

{
  "success": true,
  "messageIds": ["message-id-1", "message-id-2"],
  "recipients": 2,
  "template": "simple"
}

Error Response

{
  "error": "Invalid email address(es) in `to` field.",
  "message": "Detailed error message",
  "template": "simple"
}

Validation Error

{
  "error": "Invalid theme: purple. Valid themes are: blue, red, black, stone"
}

Validation

The API validates all inputs to ensure data quality and prevent errors:

  • Email addresses: Must be valid email format
  • Required fields: to field and at least one of title or description
  • Theme values: Must be one of: blue, red, black, stone
  • URL format: PDF and logo URLs must be valid HTTP/HTTPS URLs
  • Recipients: At least one recipient is required

Testing

Test the API locally:

npm run test:simple-email

This will run through multiple test cases with different themes and configurations.

Preview

See how the themes look: Interactive Theme Preview

Was this page helpful?