Zur Dokumentation springen
Python

Entwürfe

`drafts.list`, `list_all`, `iterate`, `get`, `create`, `update` und `delete`.

Jede Methode

usage.py
from openemail import openemail page = openemail.drafts.list(query='invoice', limit=25)draft = openemail.drafts.get('draft_…') created = openemail.drafts.create({    'to': ['[email protected]'],    'cc': [],    'bcc': [],    'subject': 'Your September invoice',    'html': '<p>Draft body.</p>',    'from': '[email protected]',    'threadId': 'thread_…',}) draft_id = created['id'] if draft_id is not None:    openemail.drafts.update(draft_id, {'subject': 'Revised'})    openemail.drafts.delete(draft_id)

update behält die id des Entwurfs bei, der zurückgegebene Wert ist daher immer der übergebene. Eine unbekannte id ergibt ein 404 und keinen neuen Entwurf.

list paginiert wie threads.list: Der pageToken der API kommt als nextCursor zurück und geht als cursor hinein, und list_all und iterate folgen ihm für Sie.

Um einen Entwurf zu senden, übergeben Sie seine id an emails.send. Der Entwurf liefert den Inhalt, der Versand den Umschlag.

send_draft.py
from openemail import openemail openemail.emails.send({    'from': '[email protected]',    'to': '[email protected]',    'draftId': 'draft_…',})

Parameter: drafts.create und drafts.update (DraftInput)

tolist[str]
Empfängeradressen als einfache Strings, nicht in den `RecipientInput`-Formen, die `emails.send` akzeptiert, denn dieser Endpunkt fügt das array zu der kommaseparierten Liste zusammen, die der Treiber erwartet. Bei create wird ein weggelassenes array leer gespeichert; bei update lässt ein weggelassenes Feld die gespeicherten Empfänger unverändert, da der Handler den Entwurf zuerst liest und zusammenführt.
cclist[str]
Cc-Adressen, in derselben einfachen String-Form wie `to`. Bei create leer, wenn weggelassen, und bei update unverändert, wenn weggelassen.
bcclist[str]
Bcc-Adressen, in derselben einfachen String-Form wie `to`. Bei create leer, wenn weggelassen, und bei update unverändert, wenn weggelassen.
subjectstr
Der Betreff des Entwurfs, höchstens 998 Zeichen, das Zeilenlimit von RFC 5322. Bei create ist der Standard eine leere Zeichenkette, ein Entwurf hat daher immer einen.
htmlstr
Der Entwurfstext als Markup, höchstens 1.000.000 Zeichen. Dieser Text setzt sich durch: `html` und `text` speisen dasselbe einzelne Nachrichtenfeld des Treibers, werden beide gesendet, wird dieses gespeichert.
textstr
Ein Nur-Text-Body, höchstens 1.000.000 Zeichen, wird nur verwendet, wenn `html` fehlt. Der Entwurf speichert einen Body statt zweier Teile, hier übergebener Text kommt daher beim Lesen des Entwurfs auf `html` zurück.
fromstr
Die Absenderadresse, die am Entwurf gespeichert wird. Bei update wird sie aus dem gespeicherten Entwurf übernommen, wenn sie weggelassen wird. Der Treiber baut die gesamte Nachricht aus dem neu auf, was ihm übergeben wird, ein Teil-Patch, der sie fallen ließe, würde den gewählten Absender stillschweigend ändern.
threadIdstr
Hängt den Entwurf an einen bestehenden Thread an, sodass er als Antwort gespeichert wird. Wie `from` wird der Wert bei update übernommen, wenn er weggelassen wird, denn die Nachricht ohne ihn neu aufzubauen würde die Antwort von ihrem Thread lösen.

Antwort: DraftResource (drafts.get)

objectLiteral['draft']
Immer `draft`.
idstr
Die id des Entwurfs. Schreibvorgänge antworten mit einer `SavedDraftResource` statt mit einem vollständigen Entwurf, lesen Sie die id daher aus dem Ergebnis, statt die gesendete wiederzuverwenden.
tolist[str]
Die Empfängeradressen, wie der Entwurf sie gespeichert hat. Eine leere Liste, nie `None`, wenn der Entwurf keine hat.
cclist[str]
Cc-Adressen wie gespeichert. Eine leere Liste, nie `None`, wenn der Entwurf keine hat.
bcclist[str]
Bcc-Adressen wie gespeichert. Eine leere Liste, nie `None`, wenn der Entwurf keine hat.
subjectstr
Der gespeicherte Betreff oder eine leere Zeichenkette, wenn der Entwurf keinen hat. Dieses Feld ist nie `None`, prüfen Sie daher seine Länge und nicht sein Vorhandensein.
htmlstr
Der gespeicherte Body oder eine leere Zeichenkette, wenn der Entwurf keinen hat. Auf dem Rückweg gibt es kein separates Textfeld: Ein nur mit `text` gespeicherter Entwurf wird hier zurückgegeben.

Referenz