Edge Delivery Services Formsを使用したForms送信サービス

この機能は、早期アクセスプログラムを通じて利用できます。 アクセスをリクエストするには、GitHub 組織名とリポジトリ名を記載したメールを公式アドレスから aem-forms-ea@adobe.comに送信してください。 例えば、リポジトリ URL がhttps://github.com/adobe/abcの場合、組織名は adobe で、リポジトリ名は abc. です

Forms送信サービスを使用すると、フォーム送信データを OneDrive、SharePoint、Google Sheets などの任意のスプレッドシートに保存でき、目的のスプレッドシートプラットフォーム内でフォームデータに簡単にアクセスして管理できます。

Forms送信サービス

Forms Submission サービスを使用するメリット

スプレッドシートでForms送信サービスを使用する利点は次のとおりです。

  • 直接統合:指定したスプレッドシートにデータを直接送信するようにフォームを設定できるので、手動でデータを転送する必要がなくなります。
  • データ構造:送信を設定する際に、フォームフィールドを対応するスプレッドシートの列にマッピングして、整理されたデータストレージを使用できます。
  • アクセス制御:既存の権限を活用して、選択したスプレッドシートサービスに応じて、送信されたフォームデータにアクセスして変更できるユーザーを制御できます。

前提条件

Forms Submission サービスを使用するための前提条件を以下に示します。

  • AEM プロジェクトに最新のアダプティブフォームブロックが含まれていることを確認します。
  • Forms送信サービスを使用するには、Git リポジトリが許可リストに追加されていることを確認してください。 Forms送信サービスを使用する 🔗許可リストに追加するには、mailto:aem-forms-ea@adobe.com} と、GitHub の組織名およびリポジトリ名を入力してください。

Forms送信サービスの設定

アダプティブ AEM ブロックが設定された新しいForms プロジェクトを作成します。 新しいAEM プロジェクトの作成方法については、 はじめに – 開発者向けチュートリアルを参照してください。 プロジェクトの fstab.yaml ファイルを更新します。 既存の参照を、forms@adobe.com と共有したフォルダーのパスに置き換えます。

Forms Submission サービスを手動で設定するまたは API を使用するForms Submission サービスを設定することができます。

手動によるForms送信サービスの設定

Forms 送信サービスのワークフロー

1. フォーム定義を使用してフォームを作成する

Google シートまたはMicrosoft Excel を使用してフォームを作成します。 Microsoft Excel またはGoogle Sheets のフォーム定義を使用してフォームを作成する方法については、 ここをクリックしてください。

次のスクリーンショットは、フォームの作成に使用されたフォーム定義を示しています。

フォームの定義

2. スプレッドシートを有効にしてデータを受け入れます。

フォームを作成してプレビューしたら、対応するスプレッドシートを有効にしてデータの受信を開始します。 新しいシートを incoming のように追加します。 スプレッドシートを手動で有効にしてデータを受け入れることができます。

受信シート

WARNING
incoming シートが存在しない場合、AEMではこのブックにデータが送信されません。

3. スプレッドシートを共有し、リンクを生成します。

スプレッドシートを forms@adobe.com アカウントと共有してリンクを生成するには、次の手順を実行します。

  1. Excel またはGoogle Sheets で、右上隅の 共有 ボタンをクリックします。

  2. forms@adobe.com アカウントと
    目のアイコンをクリックし、編集 アクセスを選択して、送信 をクリックします。

    受信シートの共有

  3. スプレッドシートリンクをコピーするには、右上隅の 共有 ボタンをクリックし、「リンクをコピー」を選択します。

    受信シートのリンクをコピー

4. フォーム定義でスプレッドシートをリンクする

Forms Submission サービスをGoogle Sheets またはMicrosoft Excel で設定するには、次の手順を実行します。

  1. フォーム定義を含むスプレッドシートを開きます。

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

    スプレッドシートをリンクする

  3. 更新されたフォーム送信サービスで AEM Sidekick を使用して、シートをプレビューして公開します。

NOTE
スプレッドシートを参照して、Forms送信サービスを使用できます。

API を使用したForms Submission サービスの設定

また、フォームに POST リクエストを送信して、incoming シートをデータで更新することもできます。

NOTE
  • incoming シートが存在しない場合、AEMではこのブックにデータが送信されません。
  • incoming シートをAdobe Experience Manager forms@adobe.com と共有し、編集アクセス権を付与します。
  • サイドキックで incoming シートをプレビューして公開します。

シート設定のための POST リクエストのフォーマット方法については、API ドキュメントを参照してください。 以下に例を示します。

以下に示すように、curl やPostmanなどのツールを使用してこの POST リクエストを実行できます。

  • Postmanを使用する場合:

例えば、を置き換えた後、Postmanで以下のリクエストを送信します。

  • フォーム ID を {id}

  • GitHub リポジトリまたはサイト名を site or repository します

  • GitHub ユーザー名を organization します。

    code language-json
    POST 'https://forms.adobe.com/adobe/forms/af/submit/{id}' \
    --header 'Content-Type: application/json' \
    --header 'x-adobe-routing: tier=live,bucket=main--[site/repository]--[organization]' \
    --data '{
        "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"
                }
            }'
    

Postmanで「送信」ボタンをクリックすると、201 Created の応答が返され、送信されたデータで incoming シートが更新されます。

postman 画面

  • Curl コマンドの使用:

例えば、を置き換えた後で、ターミナルまたはコマンドプロンプトで次のコマンドを実行します。

  • フォーム ID を {id}
  • GitHub リポジトリまたはサイト名を site or repository します
  • GitHub ユーザー名を organization します。
macOSの場合
code language-none
"'json
curl -X POST "https://forms.adobe.com/adobe/forms/af/submit/{id}" \
—header "Content-Type: application/json" \
—header "x-adobe-routing: tier=live,bucket=main—[site/repository]—[organization]" \
 – データ '{
"data": {
"startDate": "2025-01-20",
"endDate": "2025-01-25",
"destination": "Australia",
"class":"First First class",
"budget": "2000",
"amount": "1000000",
"name": "Joe",
"age": "35",
"subscribe": null,
"email": "mary@gmail.com"
}

}'s

Windows OS の場合
code language-none
"'json

curl -X POST "https://forms.adobe.com/adobe/forms/af/submit/{id}" ^
 – ヘッダー"Content-Type: application/json" ^
 – ヘッダー"x-adobe-routing: tier=live,bucket=main—[ サイト/リポジトリ ]—[ 組織 ]" ^
 – データ "{\"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\": \"mary@gmail.com\"}}"

"'

上記の POST リクエストでは、incoming シートが下記の応答で更新されます。

    < 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
    < Accept-Ranges: bytes
    < Date: Fri, 10 Jan 2025 13:06:10 GMT
    < Via: 1.1 varnish
    < Access-Control-Allow-Origin: *
    < X-Served-By: cache-del21750-DEL
    < X-Cache: MISS
    < X-Cache-Hits: 0
    < X-Timer: S1736514370.704084,VS0,VE1234

次の画面は、API を使用してデータ送信によって更新された incoming シートのスクリーンショットを示しています。

更新されたシート

関連トピック

recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab