同じメールを、
両方の書き方で。
返信先アドレスとタグを 1 つずつ付けたメッセージを、まず Mailgun で、次に OpenEmail で送ります。
import FormData from 'form-data'import Mailgun from 'mailgun.js'const mailgun = new Mailgun(FormData)const mg = mailgun.client({ username: 'api', key: process.env.MAILGUN_API_KEY })const result = await mg.messages.create('mg.acme.com', {from: 'Acme <[email protected]>',to: ['[email protected]'],subject: 'Your invoice is ready',html: '<p>Thanks for your order.</p>','h:Reply-To': '[email protected]','o:tag': ['invoice'],})console.log(result.id)
import { init, openemail } from '@openemail/sdk'init({ apiKey: process.env.OPENEMAIL_API_KEY })const email = await openemail.emails.send({from: 'Acme <[email protected]>',to: ['[email protected]'],subject: 'Your invoice is ready',html: '<p>Thanks for your order.</p>',replyTo: '[email protected]',tags: { tag: 'invoice' },})console.log(email.id)
フィールドごとに、
何がどこへ行くか。
Mailgun が受け付ける各オプションと、OpenEmail での置き場所。
| Mailgun | OpenEmail | 備考 |
|---|---|---|
messages.create(domain, …) | from | from アドレスのドメインで決まります。 |
h:Reply-To | replyTo | 1 通につきアドレスは 1 つ。 |
h:X-* | headers | 名前と値からなる 1 つのオブジェクト。 |
o:tag, v:* | tags | キーと値のペアを最大 10 個。 |
o:deliverytime | scheduledAt | RFC 2822 の日付ではなく ISO 形式の時刻。 |
o:tracking-opens, o:tracking-clicks | tracking: { opens, clicks } | yes と no ではなく真偽値。 |
template, t:variables | template: { id, props } | 先に OpenEmail でテンプレートを作り直してください。 |
attachment | attachments | Base64 またはバイト列で、合計 5 MB まで。 |
recipient-variables | emails.sendBatch | 受信者ごとに 1 件、値は埋め込み済み。 |
コンバーター
Mailgun のコードを貼り付けて、
OpenEmail 用のコードを受け取る。
コードの移行元と言語を選んでください。検出したキーはブラウザ内で取り除き、貼り付けた内容は保存しません。
コードのほかに、
あと 4 つのステップ。
- 01
送信ドメインを追加する
OpenEmail でドメインを追加し、表示される DNS レコードを公開します。署名レコードが応答すると、送信が始まります。
- 02
API キーを作成する
キーは oe_live_ で始まり、付与したスコープだけを持ちます。
- 03
Webhook を移す
下に挙げたイベント用のエンドポイントを作成し、すべてのリクエストで X-OpenEmail-Signature ヘッダーを確認してください。
- 04
連絡先と抑制リストを移す
連絡先はオーディエンスのページで CSV としてインポートし、Mailgun で抑制されていたアドレスは抑制リストに追加します。
Webhook イベントを、
新しい名前で。
Mailgun の各イベントと、それに代わる OpenEmail のイベント。どのリクエストにも、署名付きのイベントが 1 つ入っています。
| Mailgun | OpenEmail |
|---|---|
accepted | email.sent |
delivered | email.delivered |
failed (temporary) | email.delivery_delayed |
failed (permanent) | email.bounced |
complained | email.complained |
opened | email.opened |
clicked | email.clicked |
unsubscribed | suppression.added |
Mailgun からの移行について、
お答えします。
ほかのプラットフォームから
移りますか?
どのガイドにも、同じコンバーター、フィールド対応表、チェックリストがあります。
変換できましたか?
コードが読み込むキーを作りましょう。
ワークスペースは 1 分で作れます。ドメインを追加し、API キーを作成して、OPENEMAIL_API_KEY を設定してください。