Skip to Content

Send raw

Send a fully-formed MIME message (RFC 5322). For when you need control over headers, attachments, multipart structure, or DKIM-signed forwarding. Equivalent to AWS SES SendRawEmail.

POST /api/v1/partner/email/send-raw

Request body

{ "raw_message_base64": "RnJvbTogaGVsbG9AeW91cmNvbXBhbnkuY29tDQpUbzogY3VzdG9tZXJAZXhhbXBsZS5jb20NClN1YmplY3Q6IEhlbGxvDQpDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9dXRmLTgNCg0KSGVsbG8h", "configuration_set_name": "production" }
FieldTypeRequiredNotes
raw_message_base64stringyesbase64-encoded RFC 5322 message. Max 10 MB decoded.
fromstringnoOverride From-address parsing. Defaults to parsing the message’s From: header
tostring[]noOverride recipient parsing. Defaults to parsing To: header
configuration_set_namestringno
customer_idstringno
categorystringno
tagsobjectno

What you control

  • All headers — From, To, Cc, Bcc, Subject, Reply-To, Message-ID, arbitrary X- headers, In-Reply-To, References
  • MIME structure — multipart/alternative, multipart/mixed, multipart/related (inline images via Content-ID:)
  • Attachments — encode each part with the right Content-Type + Content-Disposition + Content-Transfer-Encoding
  • Custom headers — anything not on the reserved list

What we override

  • Date: — set to send time if missing
  • Message-ID: — added if missing
  • DKIM-Signature — we always sign with our shared key
  • Return-Path — set to our bounce address for VERP routing

When to use this

  • Sending forwarded mail with original headers preserved
  • Replying inside an existing thread (In-Reply-To / References)
  • Multipart with attachments
  • Custom List-Id / List-Help / List-Subscribe / List-Unsubscribe headers

For simple HTML+text sends, use /send — much less ceremony.

Example

Building a multipart message in Node:

import { createMimeMessage } from "mimetext"; const msg = createMimeMessage(); msg.setSender("hello@yourcompany.com"); msg.setRecipient("customer@example.com"); msg.setSubject("Receipt + invoice attached"); msg.addMessage({ contentType: "text/plain", data: "See attached." }); msg.addMessage({ contentType: "text/html", data: "<p>See attached.</p>" }); msg.addAttachment({ filename: "invoice.pdf", contentType: "application/pdf", data: pdfBase64, }); const raw = msg.asEncoded(); const rawB64 = Buffer.from(raw).toString("base64"); await fetch("https://apis.splashifypro.com/api/v1/partner/email/send-raw", { method: "POST", headers: { Authorization: `Bearer ${API_KEY}` }, body: JSON.stringify({ raw_message_base64: rawB64 }), });