Zur Dokumentation springen
API

Planen und abbrechen

Später senden, verschieben oder stoppen.

PATCHapi.openemail.uk/emails/{id}

Führt jeden der 2 Aufrufe auf dieser Seite gegen Ihren Workspace aus, mit Ihrem eigenen Schlüssel.

Planung

scheduledAt nimmt einen ISO-8601-Zeitpunkt oder eine Dauer wie PT2H, bis zu ein Jahr im Voraus. Eine geplante Nachricht antwortet mit 202 und status: "scheduled" und bleibt bis zum Versand abbrechbar.

cancellableForSeconds leistet dasselbe für einen sofortigen Versand: das Undo-Fenster des Composers, hier offengelegt statt fest an eine Benutzereinstellung gebunden, die über das Verhalten einer API nicht zu entscheiden hat. Beide schließen einander aus: Eine geplante Nachricht ist ohnehin abbrechbar.

Einen Versand planen

Zwei Stunden im Voraus. Die Antwort enthält die id, die Sie zum Verschieben oder Stoppen brauchen.

curl
curl -X POST "$OE/emails" -H "$AUTH" -H "Content-Type: application/json" \    -d '{      "from": "[email protected]",      "to": ["[email protected]"],      "subject": "Your September invoice",      "html": "<p>Invoice attached.</p>",      "scheduledAt": "PT2H"    }'
Antwort
HTTP/1.1 202 Accepted  Location: /emails/msg_8cd0a316930b4482a8b8440b   {    "object": "email",    "id": "msg_8cd0a316930b4482a8b8440b",    "status": "scheduled",    "scheduledAt": "2026-09-01T10:19:41.345Z",    "cancellableUntil": "2026-09-01T10:19:41.345Z",    "messageId": null,    "transport": null,    "sentAt": null  }

202, nicht 200: Es muss noch etwas mit ihr geschehen. Ein sofortiger Versand antwortet mit 200 und status: "sent", ein Aufrufer kann also allein über den Statuscode verzweigen.

Verschieben

PATCH /emails/{id}. Nur scheduledAt kann sich ändern, und nur solange die Nachricht in der Warteschlange steht oder geplant ist.

curl
curl -X PATCH "$OE/emails/msg_8cd0a316930b4482a8b8440b" \    -H "$AUTH" -H "Content-Type: application/json" \    -d '{ "scheduledAt": "PT6H" }'
Antwort
{    "object": "email",    "id": "msg_8cd0a316930b4482a8b8440b",    "status": "scheduled",    "scheduledAt": "2026-09-01T14:20:15.881Z"  }

Stoppen

POST /emails/{id}/cancel.

curl
curl -X POST "$OE/emails/msg_8cd0a316930b4482a8b8440b/cancel" -H "$AUTH"
Antwort
{ "object": "email", "id": "msg_8cd0a316930b4482a8b8440b", "status": "cancelled" }

Zweimal abzubrechen ist kein Fehler. Der zweite Aufruf gibt dieselbe abgebrochene Nachricht zurück; ein erneuter Versuch ist also unbedenklich.

Eine bereits versendete abzubrechen ergibt ein 409 email_not_cancellable. Sie lässt sich nicht zurückholen, und alles andere zu antworten wäre gelogen.