SendGridのPython用ライブラリを使ってメールを送信するメモ。なんか妙にいろいろハマってしまった。。。
バージョンは5.6.0で現行6.0.2よりちょっと古い。引数とか割と違うし、結局ソースコードみるのが早い。。。
目次
環境
環境は以下。
- macOS mojave 10.14.4
- python 3.7.3
- sendgrid 5.6.0
- 最新の6.0.2だと引数とかいろいろ違ったので、バージョンによってちゃんとソースみたほうがよい。。。
ソースコード
以下のように書く。
import sendgrid
from sendgrid.helpers.mail import Mail, Email, Content
if __name__ == '__main__':
message = Mail(
from_email=Email('from_address@example.com'),
subject='タイトル',
to_email=Email('to_address@example.com'),
content=Content('text/plain', '本文'),
)
# SendGrid の APIキー を使うが ここでは環境変数に入れている
sg = sendgrid.SendGridAPIClient(apikey=os.getenv('SENDGRID_API_KEY'))
response = sg.client.mail.send.post(request_body=message.get())
print(response.status_code)
各種変数や、SENDGIRD_API_KEYのところを入れておく。うまくいけばステータスコードの202が返る。
参考
githubの情報が便りなのだけれど(「GitHub - sendgrid/sendgrid-python: The Official SendGrid Led, Community Driven Python API Library」)、Quick Startのままやっても動かなくて、うーんとか思っていたら、手元のバージョンが違っていたという。。。
コメント