Sendery
Sendery

フレームワーク連携

Spring Boot

Sendery を使って Spring Boot アプリケーションからトランザクションメールを送信します。

インストール
<dependency>
  <groupId>co.sendery</groupId>
  <artifactId>sendery-spring-boot-starter</artifactId>
  <version>0.1.0</version>
</dependency>
ソースコード

動作環境

Spring Boot 4.1 と Java 17 以上が必要です。

アプリの設定

name と action_url を使う welcome テンプレートを公開し、プロジェクトの API キーを作成します。サーバーの環境変数 SENDERY_API_KEY に保存してください。 以下を application.properties に追加します。

application.properties
# application.properties
sendery.api-key=${SENDERY_API_KEY}

メールを送信

Sendery を注入し、宛先、名前、固有のイベントキーを渡してサービスを呼び出します。再試行では同じ値を使います。戻り値の SendReceipt から id() と status() を取得できます。

Java
import co.sendery.Sendery;
import co.sendery.SendReceipt;
import org.springframework.stereotype.Service;
import java.util.Map;

@Service
public class WelcomeEmails {
    private final Sendery sendery;

    public WelcomeEmails(Sendery sendery) {
        this.sendery = sendery;
    }

    public SendReceipt send(String address, String name, String eventKey) {
        return sendery.prepare(address, "welcome", Map.of(
            "name", name,
            "action_url", "https://example.com/start"
        ), null, eventKey).retry(3).send();
    }
}

状態取得とエラー処理

sendery.get(id) で状態を取得します。API エラーは SenderyException を返します。status()、code()、errors()、retryAfter() を確認してください。呼び出しは同期型です。このスターターは Sendery のテンプレートクライアントを提供し、JavaMailSender は設定しません。