如何使用 GMAIL API 更改电子邮件签名?

How to change email signature using GMAIL API?

我想为域中的每个用户设置电子邮件签名。问题是我已经准备好 html 签名,但我不知道如何将 html 签名与 GMAIl API 一起使用。我正在使用 python,当我尝试这样做时,它只会将其转换为文本。有什么方法可以将 html 签名嵌入到变量中,然后使用 GMAIl API 将其插入到 gmail 帐户中?

我建议查看文档 Managing signatures

primary_alias = None
aliases = gmail_service.users().settings().sendAs().\
    list(userId='me').execute()
for alias in aliases.get('sendAs'):
    if alias.get('isPrimary'):
        primary_alias = alias
        break

sendAsConfiguration = {
    'signature': 'I heart cats'
}
result = gmail_service.users().settings().sendAs().\
    patch(userId='me',
          sendAsEmail=primary_alias.get('sendAsEmail'),
          body=sendAsConfiguration).execute()
print 'Updated signature for: %s' % result.get('displayName')

documentation 表示应该是 HTML

感谢您的回复。我找到了使用 html 签名的解决方案。我所做的是使用 python 脚本创建 html 文件(您也可以用任何其他方式创建它们。我只是使用 python 因为我想要一个脚本来创建 html 签名以及更改用户的电子邮件签名)。

然后将整个 html 作为文本导入到 python 变量中,如下所示。

file = open(test.html, 'r')
    htmlfile = file.read()
    ESignature = {'signature': htmlfile}

在那之后,在电子邮件签名正文参数中,我只使用了我存储 html 签名的变量并且它起作用了。

sig = service.users().settings().sendAs().update(userId='me', sendAsEmail="test@example.org", body=ESignature).execute()