2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

blastengineのPython SDKを使ってメールを即時配信する

Last updated at Posted at 2022-08-22

blastengineはエンジニアフレンドリーなメール配信サービスです。APIとSMTPリレーの両方をサポートしており、手軽に素早くメール配信ができるようになっています。

今回はPythonでblastengineのAPIを簡単に使えるSDKを開発しましたので、使い方を紹介します。現在はトランザクションメール(即時発信メール)のみサポートしています。

インストール

インストールはpipコマンドで行ってください。

pip3 install blastengine

インポート

クライアントとトランザクションをインポートします。

from blastengine.Client import Blastengine
from blastengine.Transaction import Transaction

初期化

Blastengineを初期化します。ユーザ名とAPIキーを使います。

# 初期化
Blastengine('USER_NAME', 'API_KEY')

メールオブジェクトの用意

トランザクションメールは Transaction を使います。件名やテキスト本文、宛先などを指定します。

# トランザクション(即時発送)メールオブジェクトの作成
transaction = Transaction()
# 情報を適用する
transaction.subject('メールの件名')
transaction.text_part('テキスト本文')
# 2つ目の引数(名前)はなくても大丈夫です
transaction.fromAddress('info@example.jp', '管理者')
# 宛先は1回に1アドレスです
transaction.to('user1@example.com')
# CC/BCCも同様です
transaction.cc('cc@example.com')
transaction.bcc('bcc@example.com')

添付ファイルの追加

添付ファイルは attachments メソッドで、ファイルのパスを指定してください。

# 添付ファイルがある場合
transaction.attachments('./test.py')
transaction.attachments('./image.png')

送信

送信は send メソッドになります。返値はデリバリーIDになります。このデリバリーIDで、メールの送信状況や配信停止などを行います(トランザクションメールは即時配信されるので停止できません)。

try:
	# 送信
	delivery_id = transaction.send()
	print(delivery_id)
except Exception as e:
	# APIエラー
	print(e)

まとめ

Python SDKを使えばWebアプリケーションはもちろん、機械学習やIoTと組み合わせてblastengineを活用してもらえます。監視カメラ的なデバイスから、撮影された画像を添付してメールするのも容易でしょう。

ぜひblastengineのPython SDKを活用ください!

blastengine · PyPI

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?