Sendery
Sendery

フレームワーク連携

Nuxt

Sendery の JavaScript SDK を使い、Nuxt のサーバーからトランザクションメールを送信します。

インストール
npm install @sendery/sdk
ソースコード

動作環境

Node.js 22.12 以上のサーバー環境で JavaScript SDK を使用します。name と action_url を使う welcome テンプレートを公開し、プロジェクトの API キーを作成してください。

非公開の設定を追加

senderyApiKey を runtimeConfig に追加します。runtimeConfig.public には含めないでください。

nuxt.config.ts
// nuxt.config.ts
export default defineNuxtConfig({
  runtimeConfig: { senderyApiKey: '' },
});

環境変数を設定

サーバーの環境変数に NUXT_SENDERY_API_KEY を設定します。Nuxt が runtimeConfig.senderyApiKey に反映します。

環境変数
NUXT_SENDERY_API_KEY=your_project_api_key

サーバーから送信

認証済みのサーバーハンドラーから await sendWelcome(event, user, eventKey) を呼び出します。宛先、名前、URL は信頼できるアプリのデータから取得し、再試行では元の値とイベントキーを使います。

TypeScript
// server/utils/sendWelcome.ts
import { Sendery } from '@sendery/sdk';
import type { H3Event } from 'h3';

type Welcome = { email: string; name: string; actionUrl: string };

export async function sendWelcome(event: H3Event, user: Welcome, eventKey: string) {
  const config = useRuntimeConfig(event);
  const sendery = new Sendery(config.senderyApiKey);
  return sendery.prepare({
    to: user.email,
    template: 'welcome',
    data: { name: user.name, action_url: user.actionUrl },
  }, eventKey).retry().send();
}