同じメールを、
両方の書き方で。
返信先アドレスとタグを 1 つずつ付けたメッセージを、まず SendGrid で、次に OpenEmail で送ります。
import sgMail from '@sendgrid/mail'sgMail.setApiKey(process.env.SENDGRID_API_KEY)try {const [response] = await sgMail.send({from: { email: '[email protected]', name: 'Acme' },to: '[email protected]',replyTo: '[email protected]',subject: 'Your invoice is ready',html: '<p>Thanks for your order.</p>',categories: ['invoice'],})console.log(response.statusCode)} catch (error) {console.error(error.response?.body ?? error)}
import { init, openemail } from '@openemail/sdk'init({ apiKey: process.env.OPENEMAIL_API_KEY })try {const email = await openemail.emails.send({from: { email: '[email protected]', name: 'Acme' },to: '[email protected]',replyTo: '[email protected]',subject: 'Your invoice is ready',html: '<p>Thanks for your order.</p>',tags: { category: 'invoice' },})console.log(email.status)} catch (error) {console.error(error.message)}
フィールドごとに、
何がどこへ行くか。
SendGrid が受け付ける各オプションと、OpenEmail での置き場所。
| SendGrid | OpenEmail | 備考 |
|---|---|---|
personalizations[].to | to | personalization 1 件につきメッセージ 1 通。 |
reply_to | replyTo | 1 通につきアドレスは 1 つ。 |
content[] | html, text | コンテンツタイプごとにフィールドが 1 つ。 |
template_id, dynamic_template_data | template: { id, props } | 先に OpenEmail でテンプレートを作り直してください。 |
categories, custom_args | tags | キーと値のペアを最大 10 個。 |
send_at | scheduledAt | Unix 秒ではなく日付。 |
tracking_settings | tracking: { opens, clicks } | メッセージごとに 2 つのスイッチ。 |
attachments[].type | attachments[].contentType | Base64 またはバイト列で、合計 5 MB まで。 |
batch_id | emails.cancel(id) | メッセージごとに、その ID でキャンセルします。 |
asm.group_id | suppressions.add | 配信停止は 1 つの抑制リストにまとまります。 |
コンバーター
SendGrid のコードを貼り付けて、
OpenEmail 用のコードを受け取る。
コードの移行元と言語を選んでください。検出したキーはブラウザ内で取り除き、貼り付けた内容は保存しません。
コードのほかに、
あと 4 つのステップ。
- 01
送信ドメインを追加する
OpenEmail でドメインを追加し、表示される DNS レコードを公開します。署名レコードが応答すると、送信が始まります。
- 02
API キーを作成する
キーは oe_live_ で始まり、付与したスコープだけを持ちます。
- 03
Webhook を移す
下に挙げたイベント用のエンドポイントを作成し、すべてのリクエストで X-OpenEmail-Signature ヘッダーを確認してください。
- 04
連絡先と抑制リストを移す
連絡先はオーディエンスのページで CSV としてインポートし、SendGrid で抑制されていたアドレスは抑制リストに追加します。
Webhook イベントを、
新しい名前で。
SendGrid の各イベントと、それに代わる OpenEmail のイベント。どのリクエストにも、署名付きのイベントが 1 つ入っています。
| SendGrid | OpenEmail |
|---|---|
processed | email.sent |
delivered | email.delivered |
deferred | email.delivery_delayed |
bounce | email.bounced |
dropped | email.suppressed |
spamreport | email.complained |
open | email.opened |
click | email.clicked |
unsubscribe | suppression.added |
SendGrid からの移行について、
お答えします。
ほかのプラットフォームから
移りますか?
どのガイドにも、同じコンバーター、フィールド対応表、チェックリストがあります。
変換できましたか?
コードが読み込むキーを作りましょう。
ワークスペースは 1 分で作れます。ドメインを追加し、API キーを作成して、OPENEMAIL_API_KEY を設定してください。