1
0

More than 1 year has passed since last update.

blastengineのNode.js SDKで利用状況を取得する

Last updated at Posted at 2022-08-25

blastengineは開発者にとって使いやすいメール配信サービスを提供しています。まだサービスローンチしたばかりでSDKが不足しているのですが、徐々に開発を進めています。

現在Node.js向けにSDK開発を進めていますが、blastengineの利用状況を取得するAPIに対応しましたので、その使い方を解説します。

blastengine - npm

ユーザ登録する

blastengineにユーザ登録します。管理画面に入るためのユーザID、パスワードが手に入るので、ログインします(ユーザIDは後で使います)。

getting-started-4.jpg

送信元ドメインのSPFを設定する

送信元として利用するドメイン(自分で持っているもの)の設定をします。これは任意のドメイン管理サービスで設定できますが、TXTレコードに以下のSPFを追加します。

txt @ v=spf1 include:spf.besender.jp ~all

APIキーを取得する

ログイン後、管理画面の右上にある設定メニューに移動します。

getting-started-6.jpg

そして設定の中で、APIキーを取得します。

getting-started-5.png

必要な情報について

SDKを使う上で必要なのは、先ほどのAPIキーとユーザIDになります。

SDKのインストール

SDKは npm コマンドでインストールできます。

npm i blastengine

SDKのインポート

まずSDKをインポートします。 Usage が利用状況を取得するオブジェクトです。

import { BlastEngine, Usage } from 'blastengine';

初期化

先ほどのAPIキーとユーザIDを使って初期化します。

new Blastengine(YOUR_USER_ID, YOUR_API_KEY);

利用状況をまとめて取得する

複数月の利用状況を取得する際には、 Usage.get を使います。引数を指定しないと最新月のデータを取得します。

const usages = await Usage.get(3);
const usage = usages[0];
usage.month // -> 202208
usage.current // ->  44
usage.remaining // ->  9956
usage.update_time // ->  undefined
usage.plan_id // ->  'be-plan-10000

Usageクラスには次のようなプロパティがあります。

class Usage extends BEObject{
	// 該当月
	public month?: number;
	// 現在の利用量
	public current?: number;
	// 残量
	public remaining?: number;
	// 更新日時
	public update_time?: string;
	// 利用プランID
	public plan_id?: string;
}

詳細な利用状況を取得する

詳細を取得する際には、インスタンスで get を実行します。取得後は上記同様に各プロパティに値が入ります。

const usages = await Usage.get(3);
const usage = usages[0];
await usage.get();

// こちらでも可
const usage = new Usage({month: '202208'});
await usage.get();

最新の利用状況を取得する

getLatest を使えば、最新の利用状況が取得できます。

const usage = await Usage.getLatest();

まとめ

このAPIを使うことで、月にどれくらいのメールを送信しているかといったレポーティングの元データが作成できます。各プランごとの残数も分かりますので、ぜひblastengineを利用する際に使ってください。

エンジニア向けメール配信システム「ブラストエンジン」

1
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
1
0