言語別 SDK
Java
Java から Sendery の公開済みテンプレートを送信します。
インストール
<dependency>
<groupId>co.sendery</groupId>
<artifactId>sendery-java</artifactId>
<version>0.1.0</version>
</dependency>動作環境
Java 17 以上が必要です。
設定
name と action_url を使う welcome テンプレートを公開し、プロジェクトの API キーを作成します。サーバーの環境変数 SENDERY_API_KEY に保存してください。
Shell
export SENDERY_API_KEY="your_project_api_key"メールを送信
受付済みメールの id と status が返ります。
Java
import co.sendery.Sendery;
import java.util.Map;
public class SendWelcome {
public static void main(String[] args) {
var sendery = new Sendery(System.getenv("SENDERY_API_KEY"));
var receipt = sendery.send("[email protected]", "welcome", Map.of(
"name", "Alex",
"action_url", "https://example.com/start"
));
System.out.println(receipt.id());
}
}メールの状態を取得
返された ID で配信状態を確認します。 SendReceipt には errorCode()、createdAt()、submittedAt() もあります。呼び出しはリクエスト完了までブロックします。
Java
var message = sendery.get(receipt.id());
System.out.println(message.status());送信を再試行
welcome-123 などのキーを 1 通に割り当て、再試行時は元の内容を使います。retry(3) は一時的なエラーに対して最大 3 回の追加試行を行い、send() だけでは 1 回のみ試行します。
Java
var email = sendery.prepare("[email protected]", "welcome", Map.of(
"name", "Alex", "action_url", "https://example.com/start"
), null, "welcome-123");
var receipt = email.retry(3).send();エラー処理
Java
try {
var receipt = email.retry(3).send();
System.out.println(receipt.id());
} catch (co.sendery.SenderyException error) {
System.err.println(error.status() + ": " + error.code());
// error.errors() contains field-level validation errors.
// error.retryAfter() is a delay in seconds, when provided.
throw error;
}