Saltar para a documentação
Python

Rascunhos

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

Todos os métodos

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 mantém o id do rascunho, pelo que o valor com que responde é sempre o que passou. Um id desconhecido dá 404 em vez de criar um novo rascunho.

list pagina da mesma forma que threads.list: o pageToken da API é devolvido como nextCursor e enviado como cursor, e list_all e iterate seguem-no por si.

Para enviar um rascunho, passe o seu id a emails.send. O rascunho fornece o conteúdo e o envio fornece o envelope.

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

Parâmetros: drafts.create e drafts.update (DraftInput)

tolist[str]
Endereços dos destinatários como strings simples, e não nas formas `RecipientInput` que `emails.send` aceita, porque este endpoint junta o array na lista separada por vírgulas que o driver espera. Na criação, um array omitido é guardado vazio; na atualização, um campo omitido deixa os destinatários guardados intactos, já que o handler lê primeiro o rascunho e depois faz a junção.
cclist[str]
Endereços em Cc, na mesma forma de string simples que `to`. Vazio na criação quando omitido, e inalterado na atualização quando omitido.
bcclist[str]
Endereços em Bcc, na mesma forma de string simples que `to`. Vazio na criação quando omitido, e inalterado na atualização quando omitido.
subjectstr
O assunto do rascunho, com no máximo 998 caracteres, o limite de linha do RFC 5322. Na criação, a predefinição é uma string vazia, pelo que um rascunho tem sempre um.
htmlstr
O corpo do rascunho em markup, com no máximo 1 000 000 caracteres. É este o corpo que prevalece: `html` e `text` alimentam o campo de mensagem único do driver, pelo que enviar ambos guarda este.
textstr
Um corpo em texto simples, com no máximo 1 000 000 caracteres, usado apenas quando `html` está ausente. O rascunho guarda um único corpo em vez de duas partes, pelo que o texto fornecido aqui é devolvido em `html` quando o rascunho é lido.
fromstr
O endereço do remetente a guardar no rascunho. Na atualização, quando omitido, é mantido a partir do rascunho guardado. O driver reconstrói a mensagem inteira a partir do que recebe, pelo que uma atualização parcial que o omitisse alteraria silenciosamente o remetente escolhido.
threadIdstr
Associa o rascunho a uma conversa existente para que seja guardado como resposta. Tal como `from`, é mantido na atualização quando omitido, porque reconstruir a mensagem sem ele separaria a resposta da sua conversa.

Resposta: DraftResource (drafts.get)

objectLiteral['draft']
Sempre `draft`.
idstr
O id do rascunho. As escritas respondem com um `SavedDraftResource` em vez de um rascunho completo, por isso leia o id do resultado em vez de reutilizar o que enviou.
tolist[str]
Os endereços dos destinatários tal como o rascunho os guardou. Uma lista vazia, nunca `None`, quando o rascunho não tem nenhum.
cclist[str]
Endereços em Cc tal como foram guardados. Uma lista vazia, nunca `None`, quando o rascunho não tem nenhum.
bcclist[str]
Endereços em Bcc tal como foram guardados. Uma lista vazia, nunca `None`, quando o rascunho não tem nenhum.
subjectstr
O assunto guardado, ou uma string vazia quando o rascunho não tem nenhum. Este campo nunca é `None`, por isso verifique o seu comprimento e não a sua presença.
htmlstr
O corpo guardado, ou uma string vazia quando o rascunho não tem nenhum. Não existe um campo de texto separado na resposta: um rascunho guardado apenas com `text` é devolvido aqui.

Referência