自社アプリへのインタラクティブなコース&ウェビナーの埋め込み

自社のエンドユーザーは自社のものであり、MailInAppのものではありません — 埋め込みAPIを使えば、バックエンドがそのユーザーをコースやウェビナーに登録・受講登録させ、実際の視聴体験を自社アプリに埋め込めます。権利の判断は自社の請求システムが行い、MailInAppはホスティング、動画、そしてその周りのライフサイクルメールを担当します。

件名

You're registered — here's your link

埋め込みAPIを使えば、自社のバックエンドが自社のエンドユーザーをMailInAppのコースやウェビナーに登録・受講登録させ、視聴体験を自社アプリに埋め込めます — そのユーザーがMailInAppのダッシュボードアカウントに一切触れることはありません。

自社のエンドユーザーは自社のものであり、MailInAppのものではありません — 自社が代わりにホストしているコースを見るためだけに、別のアカウントを作らされるべきではありません。

自社のバックエンド、自社の権利判断

POST /api/v1/courses/[id]/enrollはメールアドレスに対するコースアクセスを許可・取り消しし、POST /api/v1/webinars/[id]/registerはウェビナー参加者を登録します — どちらも送信APIと同じBearer APIキーで認証されます。誰に権利があるかは自社の請求やチェックアウトシステムが決め、MailInAppはその結果をレンダリングするだけです。

実際のビューアーを埋め込む

受講登録が済むと、POST /api/v1/courses/[id]/embed-tokenが短命な署名付きトークンを発行します。自社アプリのiframeやウィンドウを返されたURLへリダイレクトすると、裏側で決定的なサインインが自動的に行われます — エンドユーザーは常に自社アプリを目にし、MailInAppのログインを目にすることはありません。

望むなら、登録の周りにインタラクティブメールを

コースやウェビナーのlifecycleBindingsは、registered/reminder/enrolled/completedの各イベントをスタジオプロジェクトへ向けることができます — 本物の参加ボタンを持つミーティングリンクや、開始時刻までのカウントダウンなどです。何も紐付けられていない場合は自動的にプレーンテキストの文面にフォールバックするため、オプトインしても既存の設定が壊れることはありません。

同じキー、専用の割り当て

埋め込みAPIは、送信APIのキーごとに毎分60リクエストの上限を共有し、さらにプランごとの専用の月間呼び出し割り当てがあります — Free/Starterではゼロで、送信API自体がそれらの階層でゲートされているのと同じです。

はじめに

開発者セクションでAPIキーを発行し、自社のバックエンドから登録または受講登録のエンドポイントを呼び出し、その後埋め込みトークンを発行してそこへリダイレクトします — リクエストの完全な形式は埋め込みAPIクイックスタートを参照してください。

典型的な作成・送信の流れ

  1. 1

    APIキーを発行する

    埋め込みAPIは、トランザクション送信APIと同じBearer APIキーを共有します — 1つのキーで、アカウント上のすべてのルートが認証されます。

  2. 2

    エンドユーザーを登録または受講登録させる

    登録制のウェビナーには`POST /api/v1/webinars/[id]/register`を、コースへのアクセスには`POST /api/v1/courses/[id]/enroll`を使います — 自社のバックエンドがこれを呼び出し、MailInAppのフォームやアカウントは一切関与しません。

  3. 3

    ビューアーを埋め込む

    `POST /api/v1/courses/[id]/embed-token`が短命な署名付きトークンを発行します。自社アプリのiframeやウィンドウを返されたURLへリダイレクトし、実際のコース/ウェビナー体験に引き渡します。

  4. 4

    任意で、ライフサイクルメールを紐付ける

    コースやウェビナーの`lifecycleBindings`は、registered/reminder/enrolled/completedの各イベントをスタジオプロジェクトに向けることができ、これらのメールは既定のプレーンテキストの文面ではなく、本物のインタラクティブブロックを載せられます — 何も紐付けられていない場合は自動的にフォールバックします。

よくある質問

エンドユーザーはMailInAppのダッシュボードアカウントを必要としますか?

いいえ — それが埋め込みAPIの狙いです。署名付きの埋め込みトークンが裏側で決定的なサインインを自動的に行うため、エンドユーザーは常に自社アプリだけを目にし、MailInAppのログインやダッシュボードを目にすることはありません。

ユーザーがコースを利用する権利があるかどうかは誰が決めますか?

あなたです — 自社のバックエンドが、自社の請求やチェックアウトシステムに基づいてアクセスを許可・取り消しするために、受講登録エンドポイントを呼び出します。MailInAppはコースをレンダリングするだけで、誰が支払ったかの正となる情報源ではありません。

登録・リマインダーメールにも、通常のキャンペーンのようにインタラクティブブロックを含められますか?

はい。コースやウェビナーに、そのイベントをスタジオプロジェクトへ向ける`lifecycleBindings`のエントリがあれば可能です — フォールバックエンジンを含め、他のどの送信とも同じパイプラインでレンダリングされます。紐付けがない場合、そのイベントは引き続き既存のプレーンテキストのライフサイクル文面をメールで送るため、オプトインしなくても何も壊れません。

埋め込みAPI専用のレート制限や割り当てはありますか?

送信APIと同じ、キーごとに毎分60リクエストの上限を共有し、さらにプランごとの専用の月間呼び出し割り当てがあります — Free/Starterではゼロで、トランザクション送信API自体がそれらの階層でゲートされているのと同じです。

アプリに埋め込まれたものだけでなく、公開サインアップのウェビナーでも動作しますか?

どちらでも動作します — ウェビナーは、MailInApp自身のホスティングされたページから誰でも登録できる状態のままにしておくことも、アプリに埋め込んだ登録に埋め込みAPIを使うことも、その両方を同時に行うこともできます。APIは単に、オープンアクセスではなく登録モードを強制するだけです。

スタジオでこれを作ってみましょう

無料プランから始められます — すべてのインタラクティブブロックと完全なフォールバックエンジンが、どのプランにも含まれています。