Menu

Resend統合

Resendは開発者向けに特化したメールAPIで、トランザクションメールの送信、追跡、管理のプロセスを簡素化します。開発者がメールインフラストラクチャの複雑さに深入りすることなく、アプリケーションの構築に集中できるように支援します。

Nextyボイラープレートでは、Resendを使用して以下の通知を実装しています:

  • 新規ユーザー歓迎メール
  • Magic Linkログインメール
  • ニュースレター購読通知
  • 支払い失敗メール通知

ResendはAPIを通じてメールを送信できるだけでなく、Resendダッシュボードのブロードキャスト機能を使用してマーケティングメールを送信することも可能です。

次に、NextyボイラープレートでのResend統合プロセスを紹介します。

登録と基本設定

  1. Resendにアクセスし、メールアドレスでアカウントを登録します

  2. API Keysページに移動し、API Keyを作成します

Resend API Keys
Resend API Keys
  1. API Keyをプロジェクトの環境変数RESEND_API_KEYに追加します

  2. 次に、Domainsページを開き、あなたのドメインを追加します

Resend Domains
Resend Domains
  1. DNSレコードを追加します
Resend DNS

ここでは4つのDNSレコードを設定する必要があります。右上の「Sign in to Cloudflare」ボタンをクリックすると最初の3つは自動的に処理されますが、_dmarcレコードはCloudflare DNSページで手動で追加する必要があります。

Resend DNS

_dmarcレコードの設定のベストプラクティスは以下の通りです:

  • 初期段階(早期監視): まずv=DMARC1; p=none; rua=mailto:[email protected]; ruf=mailto:[email protected]; pct=100から始めて、レポートを監視します。これにより、メール配信に影響を与えることなく、メール送信状況を確認し、メールの失敗を引き起こす可能性のある問題を特定できます。集約レポートを分析して、どのメールがSPFとDKIM検証に失敗したかを理解します。
  • 中間段階(中期隔離): メール送信状況に自信が持てたら、ポリシーをv=DMARC1; p=quarantine; rua=mailto:[email protected]; ruf=mailto:[email protected]; pct=100に変更します。これにより、検証に失敗したメールがスパムフォルダーに隔離されます。
  • 最終段階(最終拒否): メール送信設定が完全に正しいことが確信できたら、ポリシーをv=DMARC1; p=reject; rua=mailto:[email protected]; ruf=mailto:[email protected]; pct=100に変更します。これにより、検証に失敗したメールが拒否されます。これはドメインの最大限の保護を提供する最もセキュアな設定です。

ruarufは、メール送信レポートを受信するあなたのメールアドレスに置き換える必要があります。

_dmarcを設定する主な目的は、外部からの攻撃を防ぎ、攻撃者があなたのドメインになりすましてフィッシングメール、マルウェア、スパムを送信することを阻止することです。

すべてのDNSレコードが検証をパスすると、ステータスがVerifiedと表示されます。

Resend DNS

注目すべき点:

ステータスが長時間更新されない場合は、Restartをクリックしてみてください。

  1. 次にAudiencesページに移動し、Audience IDを環境変数RESEND_AUDIENCE_IDにコピーします
Resend Audience ID

Audience IDが表示されない場合は、まずAPIをクリックし、次にaudienceIdをコピーしてください。

Resend Audience ID API
Resend Audience ID API

検証

これで、ページフッターでメール購読を試して、以下の検証を実行できます:

  • Resendダッシュボードのメールページでメール送信ステータスを確認する
  • Resendダッシュボードの Audiencesページでオーディエンス追加を確認する
  • Resendダッシュボードのログページでメール送信ログを確認する
  • 送信したメールアドレスで、APIによって送信された通知メールを受信したかどうかを確認する

Nextyボイラープレートでは、Upstash Redisで実装されたレート制限機能も組み込まれており、メール購読機能で使用例を提供しています。次章では、レート制限機能を有効にするためにUpstash設定を完了します。