Skip to main content
HTTP send requests can include up to 10 attachments. Each attachment is sent as base64 content inside the JSON body.

Limits

LimitValue
Attachments per email10
Request body25 MB
Base64 content counts towards the request body size, so keep files below the full request limit.

Allowed files

Sendmux accepts common image, document, spreadsheet, presentation, text, calendar, and contact formats. Executables and archives are rejected. Binary files are checked against their claimed file type. Text-based files are checked by extension.

Add an attachment

{
  "from": { "email": "hello@example.com" },
  "to": { "email": "user@example.com" },
  "subject": "Invoice attached",
  "html_body": "<p>Please find your invoice attached.</p>",
  "attachments": [
    {
      "filename": "invoice-2026-03.pdf",
      "content": "JVBERi0xLjQKMSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZw...",
      "type": "application/pdf"
    }
  ]
}

Fields

FieldRequiredNotes
filenameYesMust include an allowed extension.
contentYesBase64-encoded file content.
typeNoOptional MIME type override.

What happens next

If an attachment is too large, unsupported, or does not match its file type, the request fails with validation_error or payload_too_large. Fix the file and retry.

Send by HTTP

Add attachments to single or batch send requests.

Sending errors

Handle validation and payload size errors.