[AEM Forms]{class="badge positive" title="AEM Formsに適用)。"}

Edge Delivery Services用Forms Submission Service

Forms Submission Serviceは、Adobeがホストするソリューションで、フォーム送信データを任意のスプレッドシート(Google Sheets、Microsoft OneDrive、SharePoint)に直接保存します。 これにより、複雑なバックエンドのインフラストラクチャを必要とせずに、リアルタイムのデータ収集と管理が可能になります。

概要

Forms送信サービス
図:Forms Submission Service ワークフロー – フォーム送信からスプレッドシート ストレージまで

このサービスは誰が利用すべきか?

次に最適:

  • コンテンツ作成者​がシンプルなデータ収集フォームを作成しています
  • フォームからスプレッドシートへのクイックワークフローが必要な小規模企業
  • マーケティング チーム​がリード情報を収集しています
  • イベント主催者​が登録を管理しています

次の代替案を検討する:

  • カスタムロジックを必要とする複雑なワークフロー
  • データベースとの企業統合
  • 高度な検証または処理が必要なForms
一般的なユースケース
table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3
ユースケース 例 スプレッドシートの利点
Formsへのお問い合わせ web サイトのお問い合わせ→ Googleシート 容易なフォローアップとCRM インポート
イベント登録 Excel Online→会議のサインアップ リアルタイムの参加者トラッキング
リードジェネレーション SharePoint→ニュースレター登録数 マーケティングキャンペーン分析
フィードバックコレクション Google Sheets→アンケート回答 迅速なデータ可視化

主なメリット

Forms Submission Serviceには、効率的なデータ収集のためのいくつかの利点があります。

簡素化された設定
  • バックエンド インフラストラクチャ​は必要ありません – Adobeが送信エンドポイントをホストします
  • 一般的なスプレッドシート プラットフォームとの直接統合
  • フォームフィールドからスプレッドシート列への自動データマッピング
リアルタイムデータ管理
  • 即時のデータキャプチャ – 送信がスプレッドシートにすぐに表示されます
  • 構造化ストレージ – 簡単に分析できるように整理された列
  • ライブコラボレーション – 複数のチームメンバーがデータにアクセスして分析できます
ビルトインのセキュリティとアクセス制御
  • 既存の権限を利用 - スプレッドシート プラットフォームの共有制御を使用します
  • Adobeが管理するセキュリティ - エンタープライズレベルの保護機能を備えたセキュアな送信エンドポイント
  • データの所有権 – 選択したスプレッドシート プラットフォームにデータが保持されます

前提条件

Forms Submission Serviceを設定する前に、次のことを確認してください。

技術要件
  • 最新のアダプティブ Forms ブロックがインストールされたEdge Delivery Services プロジェクト用に設定された​GitHub リポジトリ
  • アクセスの承認 - リポジトリが許可リストに追加されました
スプレッドシートプラットフォームの設定

サポートされているプラットフォームのいずれかを選択します。

  • Google シート - シート作成権限を持つGoogle アカウント
  • Microsoft OneDrive - Excel Onlineへのアクセス権を持つMicrosoft 365 アカウント
  • SharePoint - リスト/ライブラリ権限を持つSharePoint アクセス
権限とアクセス
  • 対象スプレッドシートの​権限の編集
  • 機能を共有​してforms@adobe.comへのアクセス権を付与する
  • 選択したプラットフォームの​ リンク生成 ​権限
TIP
Edge Delivery Servicesを初めて使用する場合は、 はじめにから始めて、プロジェクト基盤を設定します。

設定方法

Forms Submission Serviceには、2つの設定アプローチがあります。 ワークフローに最も適した方法を選択します。

設定方法の選択
table 0-row-4 1-row-4 2-row-4
メソッド 次に最適 必要な時間 技術レベル
手動設定 コンテンツ制作者,1回限りの設定 10~15 分 初心者
API設定 開発者、自動化されたワークフロー 5~10 分 中級者
プロジェクトのセットアップ

いずれかの方法を設定する前に、AEM プロジェクト基盤の準備が整っていることを確認します。

  1. 最新のアダプティブ AEM ブロックを使用して、Forms プロジェクト​を作成または更新します(はじめにチュートリアル ​)

  2. プロジェクト ルートのfstab.yaml​を更新:

    code language-yaml
    # Replace with the path to your shared folder
    mountpoints:
      /: https://drive.google.com/drive/folders/your-shared-folder-id
    
  3. プロジェクトフォルダー​をforms@adobe.comと共有します(編集権限が必要です)

手動設定

フォーム送信サービスの ​ ワークフロー
図:Forms Submission Serviceの手動セットアップのワークフローを完了させる

スプレッドシートの送信を使用してフォームを設定するには、次の手順に従います。

ステップ 1:フォーム定義の作成

Google シートまたはMicrosoft Excelを使用してフォーム構造を作成します。

フォーム作成手順:

  1. スプレッドシート プラットフォームを開く (Google シートまたはMicrosoft Excel)
  2. フォームプロジェクト用に新しいスプレッドシート​を作成する
  3. シートに名前を付けます (helix-defaultまたはshared-aemのいずれかである必要があります)
  4. **フォーム作成ガイド を使用してフォーム構造**​を定義

​ フォーム定義
例:フィールドタイプ、ラベル、検証ルールを含むフォーム定義

note important
IMPORTANT
シートの命名要件
フォーム定義シートには、次のいずれかの名前を付ける必要があります。
  • helix-default (単一フォームの場合に推奨)
  • shared-aem (マルチフォーム プロジェクトの場合)
その他のシート名はシステムで認識されません。

検証チェックポイント:

  • フォーム構造は、すべての必須フィールドで完了します
  • シートに正しい名前が付けられます(helix-defaultまたはshared-aem)
  • フィールドタイプと検証ルールが適切に設定されている
手順2:データ収集シートの作成

フォーム送信データを受信するための専用シートを設定します。

データシートの設定:

  1. 既存のスプレッドシートに新しいシート​を追加する
  2. シートに正確なincoming​という名前を付けます(大文字と小文字を区別します)
  3. フォームフィールドに一致する列ヘッダー​を設定します
  4. スプレッドシートを保存​して、変更を確実に保存します

受信シート
例:フォームフィールドに一致する列ヘッダーを持つ受信シート

note warning
WARNING
重要な要件
シートには正確にincoming (小文字)の名前を付ける必要があります。 このシートを使用せずに:
  • フォーム送信は拒否されます
  • データは保存されません
  • 送信エラーが表示されます

検証チェックポイント:

  • スプレッドシートにincoming シートが存在します
  • 列ヘッダーがフォームフィールド名と一致する
  • シートは適切に保存され、アクセス可能です
note tip
TIP
プロ向けのヒント: フォーム定義から正確なフィールド名をコピーして、フォームフィールドとスプレッドシート列が完全に一致するようにします。
手順3:スプレッドシートをAdobe サービスと共有する

Adobe Forms Submission Serviceにスプレッドシートへのアクセス権を付与します。

共有プロセス:

  1. スプレッドシートの右上隅にある共有ボタン​をクリックします

  2. Adobe サービスアカウントを追加:

    • 電子メール:forms@adobe.com
    • 権限レベル:編集者 (データの書き込みに必要)
  3. 共有招待を送信

  4. 次の手順のためにスプレッドシートのリンク​をコピー

    受信シートを共有
    Adobe サービスアクセスを許可するためのステップバイステップの共有プロセス

プラットフォーム固有の手順:

Google シート:

  • forms@adobe.comをエディターとして追加
  • 「リンクを持つ誰でも閲覧可能」が有効になっていることを確認します
  • 共有可能なリンクをコピー

Microsoft Excel (OneDrive/SharePoint):

  • 編集権限を持つforms@adobe.comを追加

  • リンク共有を「リンクを持つ誰でも編集可能」に設定

  • 共有URLをコピー

    着信シートのリンクをコピー
    例:フォーム設定の共有可能なリンクをコピー

検証チェックポイント:

  • forms@adobe.comさんには、スプレッドシートへのエディターへのアクセス権があります
  • スプレッドシートリンクがコピーされ、使用できる状態になります
  • 共有権限で外部アクセスを許可する
手順4:フォームをスプレッドシートに接続する

フォーム定義を送信スプレッドシートにリンクします。

Form-Spreadsheet接続:

  1. フォーム定義スプレッドシート​を開きます(helix-defaultまたはshared-aem シートを含むもの)

  2. フォーム定義内の送信フィールド行​を探します

  3. コピーしたスプレッドシート リンク​を送信フィールドの​ アクション ​列に貼り付けます

  4. 変更をフォーム定義に保存​します

    ​ スプレッドシートのリンク ​

例:送信アクションをデータ収集スプレッドシートに接続する

フォームを公開しています:

  1. ブラウザーでAEM Sidekick​を開く
  2. フォームをプレビュー​して、設定をテストします
  3. フォームを公開​して公開します

最終検証:

  • スプレッドシートリンクが正しくフィールドの送信アクションに追加されました
  • フォーム定義が保存され、公開されます
  • フォームプレビューでは、すべてのフィールドが正しく表示されます
  • 送信ボタンが正しく設定されています
note success
SUCCESS
セットアップ完了! これで、フォームがForms Submission Serviceに接続されました。 サンプルデータを送信し、incoming シートを確認してテストします。

参考資料:

API 設定

APIを利用すれば、開発者はForms Submission Serviceにデータをプログラムで送信できます。これは、自動化されたワークフローとカスタム統合に最適です。

APIを使用するタイミング

次に最適:

  • 自動化されたデータ収集システム
  • カスタムフォーム実装
  • 既存アプリケーションとの統合
  • データの一括送信ワークフロー
APIの前提条件

APIを使用する前に、次のことを確認してください。

  • スプレッドシートの設定​が完了しました(incoming枚を含む)
  • Adobe サービスアクセス​がforms@adobe.comに付与されました
  • 公開済みフォームの​フォーム ID
  • リポジトリ情報 (組織とサイト名)
note important
IMPORTANT
必要な設定手順
このAPIでは、手動設定と同じスプレッドシート設定が必要です。
  • incoming シートが存在する必要があります
  • forms@adobe.comには編集者アクセス権が必要です
  • シートはAEM Sidekick経由で公開する必要があります
API エンドポイントと認証

ベース URL: https://forms.adobe.com/adobe/forms/af/submit/{id}

必要なヘッダー:

  • Content-Type: application/json
  • x-adobe-routing: tier=live,bucket=main--[repository]--[organization]

API ドキュメント: 完全なAPI リファレンス ​

Postmanの使用

Postmanは、API送信をテストするための使いやすいインターフェイスを提供します。

セットアップ手順:

  1. Postmanで​新しいPOST リクエストを作成

  2. エンドポイントの設定: https://forms.adobe.com/adobe/forms/af/submit/{id}

  3. プレースホルダーの置き換え:

    • {id}→実際のフォーム ID
    • [repository] → GitHub リポジトリ名
    • [organization]→あなたのGitHub組織/ユーザー名

設定の要求:

code language-json
POST https://forms.adobe.com/adobe/forms/af/submit/your-form-id

Headers:
Content-Type: application/json
x-adobe-routing: tier=live,bucket=main--your-repo--your-org

Body (JSON):
{
        "data": {
            "startDate": "2025-01-10",
            "endDate": "2025-01-25",
            "destination": "Australia",
            "class": "First Class",
            "budget": "2000",
            "amount": "1000000",
            "name": "Mary",
            "age": "35",
            "subscribe": null,
            "email": "mary@gmail.com"
                }
}

期待される応答:

  • ステータスコード: 201 Created
  • データがincoming スプレッドシートにすぐに表示されます

​ ポストマン画面
例:Postman インターフェイスを使用したAPIの正常な送信

コマンドラインの使用(curl)

ターミナル/コマンドプロンプトを好む開発者の場合は、curlを使用してプログラムでデータを送信します。

コマンドライン設定:

以下のコマンドで、次のプレースホルダーを置き換えます。

  • {id}→実際のフォーム ID
  • [repository] → GitHub リポジトリ名
  • [organization]→あなたのGitHub組織/ユーザー名
tabs
macOS/Linux
code language-bash
curl -X POST "https://forms.adobe.com/adobe/forms/af/submit/your-form-id" \
    --header "Content-Type: application/json" \
  --header "x-adobe-routing: tier=live,bucket=main--your-repo--your-org" \
    --data '{
        "data": {
            "startDate": "2025-01-10",
            "endDate": "2025-01-25",
            "destination": "Australia",
            "class": "First Class",
            "budget": "2000",
            "amount": "1000000",
            "name": "Joe",
            "age": "35",
            "subscribe": null,
      "email": "joe@example.com"
                }
            }'
Windows コマンド プロンプト
code language-cmd
curl -X POST "https://forms.adobe.com/adobe/forms/af/submit/your-form-id" ^
    --header "Content-Type: application/json" ^
  --header "x-adobe-routing: tier=live,bucket=main--your-repo--your-org" ^
  --data "{\"data\": {\"startDate\": \"2025-01-10\", \"endDate\": \"2025-01-25\", \"destination\": \"Australia\", \"class\": \"First Class\", \"budget\": \"2000\", \"amount\": \"1000000\", \"name\": \"Joe\", \"age\": \"35\", \"subscribe\": null, \"email\": \"joe@example.com\"}}"
Windows PowerShell
code language-powershell
$body = @{
  data = @{
    startDate = "2025-01-10"
    endDate = "2025-01-25"
    destination = "Australia"
    class = "First Class"
    budget = "2000"
    amount = "1000000"
    name = "Joe"
    age = "35"
    subscribe = $null
    email = "joe@example.com"
  }
} | ConvertTo-Json -Depth 3

Invoke-RestMethod -Uri "https://forms.adobe.com/adobe/forms/af/submit/your-form-id" `
  -Method POST `
  -Headers @{"Content-Type"="application/json"; "x-adobe-routing"="tier=live,bucket=main--your-repo--your-org"} `
  -Body $body
APIの応答と検証

正常な応答:

code language-http
HTTP/1.1 201 Created
Connection: keep-alive
Content-Length: 0
X-Request-Id: 02a53839-2340-56a5-b238-67c23ec28f9f
X-Message-Id: 42ecb4dd-b63a-4674-8f1a-05a4a5b0372c
Date: Fri, 10 Jan 2025 13:06:10 GMT
Access-Control-Allow-Origin: *

データ検証:

提出が成功した後、データがスプレッドシートに表示されることを確認します。

更新されたシート
例:API​経由で受信シートにデータが正常に書き込まれました

応答の検証:

  • HTTP ステータス: 201 Createdは、送信に成功したことを示します
  • X-Request-Id:​送信を追跡するための一意のID
  • データがincoming シートに​秒以内に表示されます
  • すべてのフォームフィールド​は、スプレッドシート列に正しくマッピングされています

トラブルシューティング

一般的な問題と解決策

問題:403 Forbidden エラー

code language-none
Causes: Missing or incorrect access permissions
Solutions:
- Verify forms@adobe.com has Editor access to your spreadsheet
- Check that your repository is added to the allowlist
- Confirm the x-adobe-routing header format

問題:404が見つかりません。エラー

code language-none
Causes: Incorrect Form ID or endpoint URL
Solutions:
- Verify your Form ID is correct
- Check the API endpoint URL format
- Ensure your form is published and live

問題:スプレッドシートにデータが表示されない

code language-none
Causes: Missing 'incoming' sheet or permission issues
Solutions:
- Confirm 'incoming' sheet exists (case-sensitive)
- Verify column headers match form field names exactly
- Check forms@adobe.com has edit permissions
- Ensure spreadsheet is shared properly

問題:無効なJSON形式エラー

code language-none
Causes: Malformed request body
Solutions:
- Validate JSON syntax using online JSON validators
- Ensure proper escaping of special characters
- Check quote marks and brackets are balanced
ヘルプの表示

サポートチャネル:

次の手順

Forms Submission Serviceが設定されたので、次の関連トピックを調べてください。

Formsの機能強化
代替送信方法
データ管理
  • Form Analytics - フォームのパフォーマンスと使用状況を追跡します
  • データ統合 - フォームをデータベースおよびCRM システムに接続します

概要

Forms Submission Serviceは、フォームデータをスプレッドシートに直接収集するための強力なノーコードソリューションを提供します。 主なメリットは次のとおりです。

  • クイックセットアップ - バックエンドインフラストラクチャは不要です
  • リアルタイムデータ – 即座の送信キャプチャ
  • 柔軟なプラットフォーム - Google Sheets、OneDrive、またはSharePoint
  • API アクセス - プログラム送信機能
  • エンタープライズセキュリティ - アクセス制御を備えたAdobeで管理されるエンドポイント

開始する準備ができましたか? ビジュアル設定については、手動設定 ガイドに従うか、プログラム統合についてはAPI設定に移動してください。

recommendation-more-help
experience-manager-cloud-service-help-main-toc