コンテンツにスキップ
Delivery API
機能を前提に計画する前に、機能の提供状況をご確認ください。

ガイドエンゲージメント

フォームとリード

Studio でフォームを作成し、ウェブサイトに表示して、Turnstile でスパムを防ぎ、すべての問い合わせをリードとして受け取ります。

このページは英語から翻訳されたものです。内容に相違がある場合は、英語版が優先されます。 英語版を読む

Atlas のフォームはウェブサイト上で問い合わせを収集し、1 件ごとにリードに変えます。チームはリードを割り当て、フォローアップし、エクスポートできます。フォームは開発環境のウェブサイトで動作し、本番環境が稼働した後はライブウェブサイトでも動作します。

  1. Studio でフォームを作成する。 フィールド、ラベル、同意文、送信ボタンのラベル、完了メッセージを Forms & leads で設定します。

  2. ウェブサイトがフォームを表示する。 ウェブサイトがフォーム定義を取得し、独自のコンポーネントでフィールドを描画するため、フォームはデザインに合わせて表示されます。

  3. 訪問者が送信する。 ブラウザーは Atlas に直接 POST します。トークンは使いません。Atlas は、Origin がウェブサイトの登録済みアドレスであるリクエストだけを受け付けます。

  4. Atlas がチェックして保存する。 まずスパムと不正利用のチェックが実行され、その後リードが保存され、チームにメールで通知され、Webhook に送信されます。

開発環境とライブウェブサイト

Section titled “開発環境とライブウェブサイト”
開発環境のウェブサイト ライブウェブサイト(本番環境)
フォームが応答する時 常時 本番環境が有効かつ署名付きリリースがライブである時
フォームのバージョン 公開済みの最新の下書き ライブリリースに含まれるバージョン
受け付ける Origin 開発環境のアドレス https:// で始まる本番環境のドメインのみ
リードの表示場所 Leads → Development Leads → Live website(「Leads from the live website」)
リードメール デフォルトはオフ デフォルトはオン。一時停止できる

フォームはページと同様に、リリースに含まれて本番環境へ届きます。開発環境で変更したフォームは、次に承認されたリリースでライブウェブサイトに反映され、リリースから削除されたフォームはそこでは応答しなくなります。

本番環境がオフの間、そのフォームのアドレスは 404 CP_NOT_FOUND を返します。本番環境がオンでも署名付きリリースがまだライブになっていない場合は、403 CP_PRODUCTION_LOCKED を返します。

// GET /v1/public/environments/{environmentId}/forms/{formKey}
// → { key, name, version, fields, settings: { submitLabel, successMessage, consentText },
// challenge: { provider: 'turnstile', action, siteKey } }

fields は独自の入力欄で描画します。challenge.provider が turnstile の場合は、指定された siteKey と action で Cloudflare Turnstile ウィジェットを表示し、Content-Security-Policy で Turnstile を許可してください。

// POST /v1/public/environments/{environmentId}/forms/{formKey}/submissions
{
"idempotencyKey": "<new UUID per attempt>",
"sessionId": "<16–128 chars, A–Z a–z 0–9 _ ->",
"startedAt": 1761210000000, // when the visitor opened the form, in ms
"challengeToken": "<Turnstile token>",
"website": "", // hidden honeypot field; leave empty
"consent": true,
"fields": { "name": "…", "email": "…", "message": "…" }
}
レスポンス 意味
201 { status: 'received' } 受理されました。settings.successMessage を表示します
422 SUBMISSION_INVALID フィールドの検証に失敗しました。フィールドのエラーを表示します
400 SUBMISSION_REJECTED 拒否されました(たとえばチャレンジの失敗)
429 送信が多すぎます。訪問者に、しばらくしてからやり直すよう案内します

不審な送信は隔離されますが、201 が返されるため、攻撃者は何が検知されたかを知ることができません。

  • サイトごとの Cloudflare Turnstile チャレンジ。
  • ハニーポットフィールドと最小入力時間。
  • 10 分以内の重複検出。
  • サイト、フォーム、訪問者セッション、IP アドレスごとのレート制限。制限をご覧ください。

Studio の Spam review タブには、開発環境で隔離された送信が表示されます。ライブウェブサイトで隔離された送信は、まだ Studio で確認できません。

サイトオーナーが、Integrations → Email でメール接続(SMTP またはメールプロバイダー)を追加します。パスワードと API キーは暗号化して保存され、再表示もログ記録もされません。

Email for enquiries and leads カードには、2 つのスイッチがあります。

  • Live website: 本番環境が稼働すると、デフォルトでオンになります。「emails paused」に切り替えると、フォームに手を加えずにメールを止められます。
  • Development: デフォルトはオフのため、テスト送信で誰かにメールが届くことはありません。テスト送信には [Test] が付きます。

これらのスイッチを変更できるのは、サイト管理者だけです。訪問者への自動返信は、オンにしない限りオフです。