Anhänge und eingebettete Bilder
Dateien als Base64 anhängen und Bilder mit contentId im Text zeigen.
Anhänge
Jeder Eintrag in attachments hat einen filename, die Datei als Base64 in content und optional einen contentType wie application/pdf. Anhänge zählen zur Grenze von 15 MB pro E-Mail wie versendet; Base64 macht eine Datei etwa um ein Drittel grösser, also passen etwa 10 MB Anhänge, über die API wie über SMTP.
{
"attachments": [
{ "filename": "invoice-1042.pdf", "content": "JVBERi0xLjcK...", "contentType": "application/pdf" }
]
}
Ein fehlender Dateiname oder Inhalt, der kein Base64 ist, ergibt 422 invalid_attachment. Ein contentType, der nicht die Form type/subtype hat, oder gar keiner, wird zu application/octet-stream.
Nach dem Versand listet GET /v1/emails/{id}/content die Anhänge wie versendet, und GET /v1/emails/{id}/content/attachments/{index} liefert die Bytes eines Anhangs, index ist seine Position in dieser Liste; siehe E-Mails lesen.
Eingebettete Bilder
Geben Sie einem Anhang eine contentId und verweisen Sie im HTML mit cid:<contentId> darauf. Das Bild erscheint dann in der E-Mail statt als Datei.
{
"html": "<p><img src=\"cid:logo\" alt=\"Acme\" width=\"120\"></p>",
"attachments": [
{ "filename": "logo.png", "content": "iVBORw0KGgo...", "contentType": "image/png", "contentId": "logo" }
]
}
Eine contentId besteht aus Buchstaben, Ziffern und !#$%&'*+/=?^_`{|}~.@-, höchstens 128 Zeichen, und kommt pro E-Mail nur einmal vor.