> ## Documentation Index
> Fetch the complete documentation index at: https://docs-dev-feat-3p-app-cross-app.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Learn how to configure a progressive profile form using Forms for Actions

# Use Cases: Configure a progressive profile form using Forms

<Card title="Before you start">
  1. Create a [Machine-to-Machine Application](/docs/get-started/auth0-overview/create-applications/machine-to-machine-apps) with the following scopes enabled:

  * `read:users`
  * `update:users`
  * `create:users`
  * `read:users_app_metadata`
  * `update:users_app_metadata`
  * `create:users_app_metadata`

  2. Add a [Vault connection](/docs/customize/forms/vault) using the M2M application credentials.
</Card>

Forms for Actions allows you to create progressive profiling flows to decide when to prompt users to collect missing information, such as company name and job title, and store them as `user_metadata` attributes.

<Frame>
  <img src="https://mintcdn.com/docs-dev-feat-3p-app-cross-app/3DZWrdr-bChuBNSD/docs/images/cdy7uua7fh8z/xUx9YmnHvnAqL19JvNtNP/60dae88f893d4ebe8e3523421e960596/Progressive-profle-overview.png?fit=max&auto=format&n=3DZWrdr-bChuBNSD&q=85&s=a8bc1ad811f2331dd7fc46c7ebd4bc86" alt="Dashboard > Actions > Forms > Form" data-og-width="1404" width="1404" data-og-height="638" height="638" data-path="docs/images/cdy7uua7fh8z/xUx9YmnHvnAqL19JvNtNP/60dae88f893d4ebe8e3523421e960596/Progressive-profle-overview.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-feat-3p-app-cross-app/3DZWrdr-bChuBNSD/docs/images/cdy7uua7fh8z/xUx9YmnHvnAqL19JvNtNP/60dae88f893d4ebe8e3523421e960596/Progressive-profle-overview.png?w=280&fit=max&auto=format&n=3DZWrdr-bChuBNSD&q=85&s=f2916bb15bffddcbabb1ca2ed7c4e3d1 280w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/3DZWrdr-bChuBNSD/docs/images/cdy7uua7fh8z/xUx9YmnHvnAqL19JvNtNP/60dae88f893d4ebe8e3523421e960596/Progressive-profle-overview.png?w=560&fit=max&auto=format&n=3DZWrdr-bChuBNSD&q=85&s=00df9c146da4fa6eb1a7e8436450e5ca 560w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/3DZWrdr-bChuBNSD/docs/images/cdy7uua7fh8z/xUx9YmnHvnAqL19JvNtNP/60dae88f893d4ebe8e3523421e960596/Progressive-profle-overview.png?w=840&fit=max&auto=format&n=3DZWrdr-bChuBNSD&q=85&s=c324fab71d084ac47a2379de1b499b30 840w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/3DZWrdr-bChuBNSD/docs/images/cdy7uua7fh8z/xUx9YmnHvnAqL19JvNtNP/60dae88f893d4ebe8e3523421e960596/Progressive-profle-overview.png?w=1100&fit=max&auto=format&n=3DZWrdr-bChuBNSD&q=85&s=95baad1a829c725c4f836b5a45e14fad 1100w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/3DZWrdr-bChuBNSD/docs/images/cdy7uua7fh8z/xUx9YmnHvnAqL19JvNtNP/60dae88f893d4ebe8e3523421e960596/Progressive-profle-overview.png?w=1650&fit=max&auto=format&n=3DZWrdr-bChuBNSD&q=85&s=a9d2bf74e239ba0c58450dc43ed5c3a0 1650w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/3DZWrdr-bChuBNSD/docs/images/cdy7uua7fh8z/xUx9YmnHvnAqL19JvNtNP/60dae88f893d4ebe8e3523421e960596/Progressive-profle-overview.png?w=2500&fit=max&auto=format&n=3DZWrdr-bChuBNSD&q=85&s=449ee379c80627eca04aedc455495117 2500w" />
</Frame>

The sections below outline how you can create a progressive profile form using nodes and flows, along with steps for adding your form to a [Post Login Action](/docs/customize/actions/explore-triggers/signup-and-login-triggers/login-trigger).

## Create a form from scratch

Follow these steps to create a form to gather information:

1. Open the Form editor by selecting **Auth0 Dashboard > Actions > Forms.**
2. Select **Create Form** > **Start from scratch**.

By default, a new form contains a Start node, a Step node, and an Ending screen node.

<Frame>
  <img src="https://mintcdn.com/docs-dev-feat-3p-app-cross-app/t0gEEBc-vF3EXTvr/docs/images/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?fit=max&auto=format&n=t0gEEBc-vF3EXTvr&q=85&s=3f0c6813264fdb7510f1f9fd0ec155a3" alt="Dashboard > Forms > Use Cases > Form" data-og-width="1234" width="1234" data-og-height="371" height="371" data-path="docs/images/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-feat-3p-app-cross-app/t0gEEBc-vF3EXTvr/docs/images/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=280&fit=max&auto=format&n=t0gEEBc-vF3EXTvr&q=85&s=29b853723fcc8cda8ea7a6dda8494a58 280w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/t0gEEBc-vF3EXTvr/docs/images/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=560&fit=max&auto=format&n=t0gEEBc-vF3EXTvr&q=85&s=82b67e558846f10884c32e67d88dc2ed 560w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/t0gEEBc-vF3EXTvr/docs/images/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=840&fit=max&auto=format&n=t0gEEBc-vF3EXTvr&q=85&s=40001d51febfbf8793a52ee6c7828707 840w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/t0gEEBc-vF3EXTvr/docs/images/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=1100&fit=max&auto=format&n=t0gEEBc-vF3EXTvr&q=85&s=71cac94a26ace0413b457fa1efc3f728 1100w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/t0gEEBc-vF3EXTvr/docs/images/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=1650&fit=max&auto=format&n=t0gEEBc-vF3EXTvr&q=85&s=414ed388bb1c5e7de5311c9d9dfa2b1d 1650w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/t0gEEBc-vF3EXTvr/docs/images/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=2500&fit=max&auto=format&n=t0gEEBc-vF3EXTvr&q=85&s=4b79a5b97bde2c3e6032b7b998144e75 2500w" />
</Frame>

### Configure the Step node

The Step node is the graphical interface visible to users. Add [Fields](/docs/customize/forms/nodes-and-components) to the Step node to collect the user's company name and job title values by following these steps:

1. Drag a **Rich text** field from the **Components menu** into the **Step** node.

   * **Rich text**: Enter a custom message.

     * **Example**: `Complete your profile! We need you to complete your profile to personalize your experience.`
   * Select **Save**.
2. Drag a **Text** field into the **Step** node.

   * **ID**: Enter `company_name`.
   * **Label**: Enable the checkbox.
   * **Label**: Enter `Company name`.
   * **Required**: Enable the checkbox.
   * Select **Save**.
3. Drag a **Text** field into the **Step** node.

   1. **ID**: Enter `job_title`.
   2. **Label**: Enter `Job title`.
   3. **Label**: Enable the checkbox.
   4. **Required**: Enable the checkbox.
   5. Select **Save**.
4. Select **Publish** to save.

<Frame>
  <img src="https://mintcdn.com/docs-dev-feat-3p-app-cross-app/Ut5GOi8nj2Y7yf7V/docs/images/cdy7uua7fh8z/6H1lRzwKyYioQyQJ9MtIoM/aa248e92fc028a68a5b92ff361a11644/progressive-profile-step.png?fit=max&auto=format&n=Ut5GOi8nj2Y7yf7V&q=85&s=10ae67751bd6811e1b6a6f831f5dcdf1" alt="Dashboard > Actions > Forms > Form > Step node" data-og-width="1404" width="1404" data-og-height="533" height="533" data-path="docs/images/cdy7uua7fh8z/6H1lRzwKyYioQyQJ9MtIoM/aa248e92fc028a68a5b92ff361a11644/progressive-profile-step.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-feat-3p-app-cross-app/Ut5GOi8nj2Y7yf7V/docs/images/cdy7uua7fh8z/6H1lRzwKyYioQyQJ9MtIoM/aa248e92fc028a68a5b92ff361a11644/progressive-profile-step.png?w=280&fit=max&auto=format&n=Ut5GOi8nj2Y7yf7V&q=85&s=f97d2e70d0aec09b230c518af8378506 280w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/Ut5GOi8nj2Y7yf7V/docs/images/cdy7uua7fh8z/6H1lRzwKyYioQyQJ9MtIoM/aa248e92fc028a68a5b92ff361a11644/progressive-profile-step.png?w=560&fit=max&auto=format&n=Ut5GOi8nj2Y7yf7V&q=85&s=21517aff47df7e3eb343b207374600eb 560w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/Ut5GOi8nj2Y7yf7V/docs/images/cdy7uua7fh8z/6H1lRzwKyYioQyQJ9MtIoM/aa248e92fc028a68a5b92ff361a11644/progressive-profile-step.png?w=840&fit=max&auto=format&n=Ut5GOi8nj2Y7yf7V&q=85&s=11c59aa14e299d5c4c8a0434dcb03b54 840w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/Ut5GOi8nj2Y7yf7V/docs/images/cdy7uua7fh8z/6H1lRzwKyYioQyQJ9MtIoM/aa248e92fc028a68a5b92ff361a11644/progressive-profile-step.png?w=1100&fit=max&auto=format&n=Ut5GOi8nj2Y7yf7V&q=85&s=971a975bad7392a9577e5fee388471f8 1100w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/Ut5GOi8nj2Y7yf7V/docs/images/cdy7uua7fh8z/6H1lRzwKyYioQyQJ9MtIoM/aa248e92fc028a68a5b92ff361a11644/progressive-profile-step.png?w=1650&fit=max&auto=format&n=Ut5GOi8nj2Y7yf7V&q=85&s=ca8769befbcc3412c0160735c890bc7d 1650w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/Ut5GOi8nj2Y7yf7V/docs/images/cdy7uua7fh8z/6H1lRzwKyYioQyQJ9MtIoM/aa248e92fc028a68a5b92ff361a11644/progressive-profile-step.png?w=2500&fit=max&auto=format&n=Ut5GOi8nj2Y7yf7V&q=85&s=10d71d18ee3a983b9d8581ec7a87dc6f 2500w" />
</Frame>

### Configure the flow node

Add a **Flow** node after the **Step** node to update the `user_metadata` and resume the authentication flow by following these steps:

1. Select **Flow** from the bottom of the Form editor.
2. Remove the existing link between the **Step** and **Ending Screen** nodes.
3. Select the new **Flow** > **Click to add a flow** > **Create a new flow.**

   * Enter `Update user_metadata` in the **Name** field.
   * Select **Create**.
   * Select **Save**.
4. Link the **Flow** node to the **Step** and **Ending Screen** nodes as pictured below.
5. Select **Publish** to save.

<Frame>
  <img src="https://mintcdn.com/docs-dev-feat-3p-app-cross-app/cDs5cWzqgA92geHT/docs/images/cdy7uua7fh8z/5C91DaWn4LGtJT9BF87ssu/095171d0c452a287c44bfde12fd6d13f/link-nodes.png?fit=max&auto=format&n=cDs5cWzqgA92geHT&q=85&s=a94c5ab65c945db64bd2fbfe92a41a82" alt="Dashboard > Actions > Forms > Form" data-og-width="1404" width="1404" data-og-height="540" height="540" data-path="docs/images/cdy7uua7fh8z/5C91DaWn4LGtJT9BF87ssu/095171d0c452a287c44bfde12fd6d13f/link-nodes.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-feat-3p-app-cross-app/cDs5cWzqgA92geHT/docs/images/cdy7uua7fh8z/5C91DaWn4LGtJT9BF87ssu/095171d0c452a287c44bfde12fd6d13f/link-nodes.png?w=280&fit=max&auto=format&n=cDs5cWzqgA92geHT&q=85&s=c605f6f688d1053c67f58182c7ed65c7 280w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/cDs5cWzqgA92geHT/docs/images/cdy7uua7fh8z/5C91DaWn4LGtJT9BF87ssu/095171d0c452a287c44bfde12fd6d13f/link-nodes.png?w=560&fit=max&auto=format&n=cDs5cWzqgA92geHT&q=85&s=c70365c30841b974ec6ff2da17b8fe47 560w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/cDs5cWzqgA92geHT/docs/images/cdy7uua7fh8z/5C91DaWn4LGtJT9BF87ssu/095171d0c452a287c44bfde12fd6d13f/link-nodes.png?w=840&fit=max&auto=format&n=cDs5cWzqgA92geHT&q=85&s=a81aae3d96a3a16b9dd24baec378cd0c 840w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/cDs5cWzqgA92geHT/docs/images/cdy7uua7fh8z/5C91DaWn4LGtJT9BF87ssu/095171d0c452a287c44bfde12fd6d13f/link-nodes.png?w=1100&fit=max&auto=format&n=cDs5cWzqgA92geHT&q=85&s=badb11c67c09cda44451850a0439c632 1100w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/cDs5cWzqgA92geHT/docs/images/cdy7uua7fh8z/5C91DaWn4LGtJT9BF87ssu/095171d0c452a287c44bfde12fd6d13f/link-nodes.png?w=1650&fit=max&auto=format&n=cDs5cWzqgA92geHT&q=85&s=4773feb818a45e4677d36bf3fdb2328c 1650w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/cDs5cWzqgA92geHT/docs/images/cdy7uua7fh8z/5C91DaWn4LGtJT9BF87ssu/095171d0c452a287c44bfde12fd6d13f/link-nodes.png?w=2500&fit=max&auto=format&n=cDs5cWzqgA92geHT&q=85&s=2ec5080238142847975c402fdf84a3c9 2500w" />
</Frame>

Add an Auth0 Update user action to the flow by following these steps:

1. Select the **Update user\_metadata** flow, then select the **Edit Flow** to open the Flow editor in a new tab.
2. Below the **Start** action, select the **+** icon to add an **Update user** action. Complete the fields below, then select **Save** to continue.

   * **Connection**: Select from the dropdown the Vault connection to your M2M application.

   * **User ID**: Enter `{{context.user.user_id}}`.

   * **Body**: Copy and paste the following code to update the user\_metadata with `job_title` and `company_name` properties.

     ```json lines theme={null}
     {
        "user_metadata": {
           "job_title": "{{fields.job_title}}",
           "company_name": "{{fields.company_name}}"
        }
     }
     ```

   * Select **Save**.
3. Select **Publish** to save.

<Frame>
  <img src="https://mintcdn.com/docs-dev-feat-3p-app-cross-app/KCLWWwpjX2i1oQRe/docs/images/cdy7uua7fh8z/65Jx4W5oIZJyyvA8z4HqIx/0661b1a8ca6361c54fc4fef07ba59f0b/update-user.png?fit=max&auto=format&n=KCLWWwpjX2i1oQRe&q=85&s=656e27d26f02245166e863c9766ce4a5" alt="Dashboard > Actions > Forms > Flows" data-og-width="1404" width="1404" data-og-height="244" height="244" data-path="docs/images/cdy7uua7fh8z/65Jx4W5oIZJyyvA8z4HqIx/0661b1a8ca6361c54fc4fef07ba59f0b/update-user.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-feat-3p-app-cross-app/KCLWWwpjX2i1oQRe/docs/images/cdy7uua7fh8z/65Jx4W5oIZJyyvA8z4HqIx/0661b1a8ca6361c54fc4fef07ba59f0b/update-user.png?w=280&fit=max&auto=format&n=KCLWWwpjX2i1oQRe&q=85&s=c4992e00984cd4662077c39ae04bdc78 280w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/KCLWWwpjX2i1oQRe/docs/images/cdy7uua7fh8z/65Jx4W5oIZJyyvA8z4HqIx/0661b1a8ca6361c54fc4fef07ba59f0b/update-user.png?w=560&fit=max&auto=format&n=KCLWWwpjX2i1oQRe&q=85&s=1ff269e7ab7f7660faf884d5ae43f989 560w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/KCLWWwpjX2i1oQRe/docs/images/cdy7uua7fh8z/65Jx4W5oIZJyyvA8z4HqIx/0661b1a8ca6361c54fc4fef07ba59f0b/update-user.png?w=840&fit=max&auto=format&n=KCLWWwpjX2i1oQRe&q=85&s=d1d5b7a13f53173829001d2b0930c306 840w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/KCLWWwpjX2i1oQRe/docs/images/cdy7uua7fh8z/65Jx4W5oIZJyyvA8z4HqIx/0661b1a8ca6361c54fc4fef07ba59f0b/update-user.png?w=1100&fit=max&auto=format&n=KCLWWwpjX2i1oQRe&q=85&s=1f90e5423e8569e91c470c931561971e 1100w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/KCLWWwpjX2i1oQRe/docs/images/cdy7uua7fh8z/65Jx4W5oIZJyyvA8z4HqIx/0661b1a8ca6361c54fc4fef07ba59f0b/update-user.png?w=1650&fit=max&auto=format&n=KCLWWwpjX2i1oQRe&q=85&s=5a91d342b68099597b709d1f16613a69 1650w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/KCLWWwpjX2i1oQRe/docs/images/cdy7uua7fh8z/65Jx4W5oIZJyyvA8z4HqIx/0661b1a8ca6361c54fc4fef07ba59f0b/update-user.png?w=2500&fit=max&auto=format&n=KCLWWwpjX2i1oQRe&q=85&s=dd2f1190f068889f13dc62b503692e75 2500w" />
</Frame>

### Retrieve the form render code

Retrieve the form render code to visually render the form with a custom Post Login Action by following these steps:

* From the Form editor, select **`<> Render`**.
* Select **Copy**.

<Frame>
  <img src="https://mintcdn.com/docs-dev-feat-3p-app-cross-app/incsyWvpqtVjEku-/docs/images/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?fit=max&auto=format&n=incsyWvpqtVjEku-&q=85&s=6c5e1763035d5cbbd4a29e13369a02d7" alt="Dashboard > Actions > Forms > Form > Embed" data-og-width="1400" width="1400" data-og-height="848" height="848" data-path="docs/images/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-feat-3p-app-cross-app/incsyWvpqtVjEku-/docs/images/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=280&fit=max&auto=format&n=incsyWvpqtVjEku-&q=85&s=c80917557b70958dc41e831f9e1ed6f5 280w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/incsyWvpqtVjEku-/docs/images/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=560&fit=max&auto=format&n=incsyWvpqtVjEku-&q=85&s=4c58d5ea459bf98f25610177a669c77c 560w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/incsyWvpqtVjEku-/docs/images/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=840&fit=max&auto=format&n=incsyWvpqtVjEku-&q=85&s=420dee0f27dba51f80a0f606fa90b6ac 840w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/incsyWvpqtVjEku-/docs/images/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=1100&fit=max&auto=format&n=incsyWvpqtVjEku-&q=85&s=6aeee26aa06badb94cd8a7a68b9f11fe 1100w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/incsyWvpqtVjEku-/docs/images/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=1650&fit=max&auto=format&n=incsyWvpqtVjEku-&q=85&s=901f28f2f5741ece4811b68e1c87c1c2 1650w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/incsyWvpqtVjEku-/docs/images/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=2500&fit=max&auto=format&n=incsyWvpqtVjEku-&q=85&s=0918c498856c517c992bab5ac3a070fe 2500w" />
</Frame>

## Create a Post Login Action

Create a post-login Action to render your form by following these steps:

1. Navigate to **Auth0 Dashboard > Actions > Flows > Login.**
2. Select the **+** icon and select **Build from scratch**:

   * **Name**: Enter `Render Progressive Profile Form`.
   * **Trigger**: Select `Login / Post Login`.
   * **Runtime**: Select the recommended version.
3. Select **Create**.

To configure the post-login Action:

1. Delete the existing code from the Code editor.
2. Paste the form embed code into the Code editor.
3. Edit the code to define the conditional logic that will render the form.

   ```javascript lines theme={null}
   /**
   * @param {Event} event - Details about the user and the context in which they are logging in.
   * @param {PostLoginAPI} api - Interface whose methods can be used to change the behavior of the login.
   */
   exports.onExecutePostLogin = async (event, api) => {
     const FORM_ID = 'REPLACE_WITH_YOUR_FORM_ID';

     if (
       event.stats.logins_count > 2 &&
       !event.user.user_metadata.company_name &&
       !event.user.user_metadata.job_title
     ) {
       api.prompt.render(FORM_ID);
     }
   }

   exports.onContinuePostLogin = async (event, api) => { }
   ```

   <Callout icon="file-lines" color="#0EA5E9" iconType="regular">
     The example code above will render the form when a user has a login count > 2 and is missing the user metadata company\_name and job\_title properties.
   </Callout>
4. Select **Deploy.**
5. Drag and Drop the **Render Progressive Profile Form** Action to the **Login** flow.

   <Frame>
     <img src="https://mintcdn.com/docs-dev-feat-3p-app-cross-app/hEizLjio7kT78qn-/docs/images/cdy7uua7fh8z/1QjjZdpTqTxx012UDN4xk9/99fba5ef4068a5688f1762eea7f42976/renderprogessiveprofile.png?fit=max&auto=format&n=hEizLjio7kT78qn-&q=85&s=bd952fe744842a1e82ab3df7fa4e7cdd" alt="Dashboard > Forms > Use Cases Progressive Profile Login Action" data-og-width="1079" width="1079" data-og-height="524" height="524" data-path="docs/images/cdy7uua7fh8z/1QjjZdpTqTxx012UDN4xk9/99fba5ef4068a5688f1762eea7f42976/renderprogessiveprofile.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-feat-3p-app-cross-app/hEizLjio7kT78qn-/docs/images/cdy7uua7fh8z/1QjjZdpTqTxx012UDN4xk9/99fba5ef4068a5688f1762eea7f42976/renderprogessiveprofile.png?w=280&fit=max&auto=format&n=hEizLjio7kT78qn-&q=85&s=5c6e1349346c5dfc445e7e9fb8960df8 280w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/hEizLjio7kT78qn-/docs/images/cdy7uua7fh8z/1QjjZdpTqTxx012UDN4xk9/99fba5ef4068a5688f1762eea7f42976/renderprogessiveprofile.png?w=560&fit=max&auto=format&n=hEizLjio7kT78qn-&q=85&s=0b7a77aba34c80f7a777e33ece34b459 560w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/hEizLjio7kT78qn-/docs/images/cdy7uua7fh8z/1QjjZdpTqTxx012UDN4xk9/99fba5ef4068a5688f1762eea7f42976/renderprogessiveprofile.png?w=840&fit=max&auto=format&n=hEizLjio7kT78qn-&q=85&s=65f1c97406c8567ef0b424bdfc398274 840w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/hEizLjio7kT78qn-/docs/images/cdy7uua7fh8z/1QjjZdpTqTxx012UDN4xk9/99fba5ef4068a5688f1762eea7f42976/renderprogessiveprofile.png?w=1100&fit=max&auto=format&n=hEizLjio7kT78qn-&q=85&s=33823415742ca541283e18939804c9f1 1100w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/hEizLjio7kT78qn-/docs/images/cdy7uua7fh8z/1QjjZdpTqTxx012UDN4xk9/99fba5ef4068a5688f1762eea7f42976/renderprogessiveprofile.png?w=1650&fit=max&auto=format&n=hEizLjio7kT78qn-&q=85&s=ef92cefbb1403beb5c9b7ad2777bb30c 1650w, https://mintcdn.com/docs-dev-feat-3p-app-cross-app/hEizLjio7kT78qn-/docs/images/cdy7uua7fh8z/1QjjZdpTqTxx012UDN4xk9/99fba5ef4068a5688f1762eea7f42976/renderprogessiveprofile.png?w=2500&fit=max&auto=format&n=hEizLjio7kT78qn-&q=85&s=1666188ebc8ec9512a1ae2a710bcae80 2500w" />
   </Frame>
6. Select **Apply**.

### Test implementation

Test the implementation by following these steps:

1. Log in with an existing user whose login count is greater than 2 and their `user_metadata` attributes `company_name` and `job_title` have no values.
2. The post-login action in the Login flow will render the form and prompt for the information.
3. Select **Auth0 Dashboard > User Management > Users,** locate the user and verify that the `user_metadata` attributes `company_name` and `job_title` contain information.
