blastengine(ブラストエンジン)はシンプルに使える開発者向けメールサービスを提供しています。何かと面倒なメール配信をシンプルに、かつ確実に送信先に届くようになります。
現在、Node.js向けに、blastengine SDKを開発しています。この記事では、その使い方を解説します。まずはテキストメールの即時送信についてです。
ユーザ登録する
blastengineにユーザ登録します。管理画面に入るためのユーザID、パスワードが手に入るので、ログインします(ユーザIDは後で使います)。
送信元ドメインのSPFを設定する
送信元として利用するドメイン(自分で持っているもの)の設定をします。これは任意のドメイン管理サービスで設定できますが、TXTレコードに以下のSPFを追加します。
txt @ v=spf1 include:spf.besender.jp ~all
APIキーを取得する
ログイン後、管理画面の右上にある設定メニューに移動します。
そして設定の中で、APIキーを取得します。
必要な情報について
SDKを使う上で必要なのは、先ほどのAPIキーとユーザIDになります。
SDKのインストール
SDKは npm コマンドでインストールできます。
npm i blastengine
SDKのインポート
まずSDKをインポートします。
import Blastengine, { Transaction } from 'blastengine';
初期化
先ほどのAPIキーとユーザIDを使って初期化します。
new Blastengine(YOUR_USER_ID, YOUR_API_KEY);
トランザクションオブジェクトの作成
メールを即時配信する際にはトランザクションオブジェクトを使います。
const transaction = new Transaction;
必要な情報をセットする
続けて、トランザクションオブジェクトに必要なオブジェクトをセットします。
transaction
.setFrom('info@example.com', 'From Name')
.setSubject('メールの件名')
.setTo('to@example.jp')
.setText('メールの本文');
添付ファイルをセットする
添付ファイルはファイルへのパスかBlobオブジェクト、またはBufferを適用してください。複数指定可能です。
transaction
.addAttachment('file.png')
.addAttachment('another.png')
後は send
メソッドで送信できます。これは非同期メソッドです。
const res = await transaction.send();
res.delivery_id
に数字が入っていれば、送信完了です。
res.delivery_id
// => 18
コードについて
コードはGitHubにアップしてあります。ライセンスはMIT Licenseになります。
blastengineMania/blastengine-node
まとめ
blastengineには他にも一括メール配信を行う機能があります。ぜひ皆さんのシステム開発におけるメール配信を素早く実装するのに役立ててください。