blastengineは開発者にとって使いやすいメール配信サービスを提供しています。まだサービスローンチしたばかりでSDKが不足しているのですが、徐々に開発を進めています。
まず最初にNode.js向けに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, { Bulk } from 'blastengine';
初期化
先ほどのAPIキーとユーザIDを使って初期化します。
new Blastengine(YOUR_USER_ID, YOUR_API_KEY);
一斉配信オブジェクトを作成する
一斉配信用のオブジェクトを生成します。
const bulk = new Bulk;
必要な情報をセットする
続けて、一斉配信オブジェクトに必要なオブジェクトをセットします。
bulk
.setFrom('info@example.com', 'From Name')
.setSubject('Test subject')
.setText('__name__さん宛のメール本文');
メール配信内容を登録する
一斉配信内容をblastengineに登録します。
const res = await bulk.register();
宛先をセットする
次に宛先をセットします。それと一緒に、差し込みコードもセットできます。差し込みコードはキーと値を持っており、そのキーに該当する部分が値に変換されながらメール配信されます。メール本文では __キー__
のように __
でキーを囲んでください。
追加したら update メソッドを実行して更新します。
bulk.addTo('example1@example.com', {name: '名前 1'});
bulk.addTo('example2@example.com', {name: '名前 2'});
await bulk.update();
この時、送り先が50件を超えるとCSVアップロードを利用する方法に切り替わります。メソッドは同じですが、若干時間がかかる可能性があります。
配信を開始する
後は send メソッドで配信を実行します。配信時には任意の時間を設定できます。デフォルトでは1分後としています。
await bulk.send();
// 一日後の場合
const date = new Date;
date.setDate(date.getDate() + 1);
const res = await bulk.send(date);
res.delivery_id
に数字が入っていれば、送信完了です。
res.delivery_id
// => 18
削除する
一斉配信用のオブジェクトを削除する場合には delete メソッドを使ってください。なお、一斉配信用のオブジェクトは10個までしか作成できません。
await bulk.delete();
コードについて
コードはGitHubにアップしてあります。ライセンスはMIT Licenseになります。
blastengineMania/blastengine-node
まとめ
blastengineには他にも一括メール配信を行ったり、添付ファイル付きのメール配信機能などもあります。これらの機能もSDKに随時実装していきますので、ぜひ皆さんのシステム開発に役立ててください。