Loading...

2023-11-08(水) 15:00

⚙️ Resendで独自ドメインを使うための設定手順

Resend
Resendで独自ドメインからのメールを送信するために独自ドメインを設定する手順を解説します。

目次

前提と注意事項

以下が前提と注意事項になります。

  • Resend のアカウントと API キーは作成済みとします。
  • 設定する独自ドメインの DNS レコードを各自が利用しているドメインサービスで設定できる必要があります。
  • 動作確認のために cURL コマンドを使用します。

もし Resend のアカウントと API キーを持っていない場合は、以下の手順をまとめていますので必要な方は参考にしてみてください。

✉️ メール配信サービスのResendを試す

開発者のためのメール配信サービスとして展開しているResendを使ってメール送信するまでの手順を解説します。

ritaiz.com

この記事のゴール

Resend で独自ドメインを設定し、 cURL コマンドを使って設定した独自ドメインのメールアドレスを送信元としたメールを送信するところまでを解説します。

Resend で独自ドメインを設定する

まずResendにログインして、以下のようにサイドメニューのDomainsをクリックします。

ResendのDomainメニュー

サイドメニューのDomainsをクリックすると、以下のように独自ドメイン設定用のページに遷移するのでAdd domainをクリックします。

ResendのDomainページ

Add domainをクリックすると、以下のように設定する独自ドメインの入力フォームとリージョンの選択フォームが表示されるので、それぞれ入力、選択します。

Domainの追加フォーム

記事公開時点では、選択できるリージョンは以下の3つのみです。リージョンはユーザーのなるべく近い場所を選択するほどユーザーにメールが到達までの時間が短くなり良いですが、現在は以下の3つしなく、無料プランではNorth Virginia (us-east-1)のみ選択可能なため、North Virginia (us-east-1)を選択します。

  • North Virginia (us-east-1)
  • Ireland (eu-west-1)
  • Sao Paulo (sa-east-1)

Addをクリックすると、以下のように設定した独自ドメインの DNS レコードが表示されます。

追加したドメインのDNSレコード情報

MXレコード1つと、TXTレコード2つが表示されます。この3つの DNS レコードを自身が取得した独自ドメインの管理画面などで DNS レコードに追加します。

ドメインサービスに Resend の DNS レコードを追加する

私は Google Domains(Squarespace 社が 2023 年 9 月 7 日に買収)で取得した独自ドメインを Resend で使用するために、以下のように3つの DNS レコードを Google Domains に登録しました。 この作業は各自が使用しているドメインサービスによって異なりますが、必要なのは Resend で表示された3つの DNS レコードをドメインサービスに登録することです。

Google Domainsに追加したDNSレコード

ドメインサービスに Resend の DNS レコードを追加したら、Resend に戻ってVerify DNS Recordsをクリックして DNS レコードが正しくドメインサービスに追加されたか検証を開始します。

DNSレコードの検証開始

Verify DNS Recordsをクリックすると、以下のように検証が開始され、3つの DNS レコードのステータスがPendingになります。

DNSレコードが検証中

検証は数分から数時間かかるようです。検証が完了した場合はアカウントのメールアドレスに検証完了の通知メールが送信されると記載されていますが、私の場合は検証完了してもメールは届きませんでした。 私の環境ではおおよそ10分ほどで検証が完了し、以下のようにステータスがVerifiedに更新されました。

DNSレコードの検証中完了

動作確認

cURL コマンドを使用して設定した独自ドメインをfromに指定してメールを送信してみます。 ここでは、以下のようにこのサイトの独自ドメインritaiz.comfromに指定してメールを送信しています。

cURLでメールを送信する
$ curl -X POST 'https://api.resend.com/emails' \
  -H 'Authorization: Bearer re_**********************' \
  -H 'Content-Type: application/json' \
  -d $'{
    "from": "[email protected]",
    "to": "[email protected]",
    "subject": "Hello World",
    "html": "<p>Congrats on sending your <strong>first email</strong>!</p>"
  }'
  {"id":"007ff9d1-b211-37d2-2819-66b104ce9d5e"}%

設定済みの独自ドメインをfromに指定していれば上記のように送信したメールの ID がレスポンスとして返ってきます。しかしもし未設定の独自ドメインを指定した場合は以下のようなエラーがレスポンスとして返ってきます。

未設定の独自ドメインをfromに指定した場合のエラー
{"statusCode":400,"message":"The ritaiz.com domain is not verified. Please, add and verify your domain on https://resend.com/domains","name":"validation_error"}

まとめ

Resend で独自ドメインを使うための設定について解説しました。他のサービスと同様に簡単に設定でき、自分が持つ独自ドメインを使い始めることができます。ただし、記事公開時点では無料プランでは1つの独自ドメインしか設定できません。2つ以上の独自ドメインを使用したい場合は、有料プランにアップグレードする必要があります。