> ## Documentation Index
> Fetch the complete documentation index at: https://docs-staging-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-staging-feat-3p-app-cross-app/aH-Zcsya1BPKiMl1/docs/images/cdy7uua7fh8z/xUx9YmnHvnAqL19JvNtNP/60dae88f893d4ebe8e3523421e960596/Progressive-profle-overview.png?fit=max&auto=format&n=aH-Zcsya1BPKiMl1&q=85&s=a1f51b3ab45384659a8f5204fa8416c3" 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-staging-feat-3p-app-cross-app/aH-Zcsya1BPKiMl1/docs/images/cdy7uua7fh8z/xUx9YmnHvnAqL19JvNtNP/60dae88f893d4ebe8e3523421e960596/Progressive-profle-overview.png?w=280&fit=max&auto=format&n=aH-Zcsya1BPKiMl1&q=85&s=597981c16662908b6bcd920a01c5256b 280w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/aH-Zcsya1BPKiMl1/docs/images/cdy7uua7fh8z/xUx9YmnHvnAqL19JvNtNP/60dae88f893d4ebe8e3523421e960596/Progressive-profle-overview.png?w=560&fit=max&auto=format&n=aH-Zcsya1BPKiMl1&q=85&s=cd477777edecf8c4cb092b5bed207fe8 560w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/aH-Zcsya1BPKiMl1/docs/images/cdy7uua7fh8z/xUx9YmnHvnAqL19JvNtNP/60dae88f893d4ebe8e3523421e960596/Progressive-profle-overview.png?w=840&fit=max&auto=format&n=aH-Zcsya1BPKiMl1&q=85&s=381e2b81d9dad13b89852aaafb429661 840w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/aH-Zcsya1BPKiMl1/docs/images/cdy7uua7fh8z/xUx9YmnHvnAqL19JvNtNP/60dae88f893d4ebe8e3523421e960596/Progressive-profle-overview.png?w=1100&fit=max&auto=format&n=aH-Zcsya1BPKiMl1&q=85&s=ca8013c18a15a0d7319707982dbf0fd4 1100w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/aH-Zcsya1BPKiMl1/docs/images/cdy7uua7fh8z/xUx9YmnHvnAqL19JvNtNP/60dae88f893d4ebe8e3523421e960596/Progressive-profle-overview.png?w=1650&fit=max&auto=format&n=aH-Zcsya1BPKiMl1&q=85&s=46df1cc5563cefa9a0895260bd17a4cc 1650w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/aH-Zcsya1BPKiMl1/docs/images/cdy7uua7fh8z/xUx9YmnHvnAqL19JvNtNP/60dae88f893d4ebe8e3523421e960596/Progressive-profle-overview.png?w=2500&fit=max&auto=format&n=aH-Zcsya1BPKiMl1&q=85&s=ea57b81016400f04503987eff8ae10df 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-staging-feat-3p-app-cross-app/nLiwM1yzsAsC-Cbb/docs/images/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?fit=max&auto=format&n=nLiwM1yzsAsC-Cbb&q=85&s=d18e3e805de196070b2c5c301f6425d4" 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-staging-feat-3p-app-cross-app/nLiwM1yzsAsC-Cbb/docs/images/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=280&fit=max&auto=format&n=nLiwM1yzsAsC-Cbb&q=85&s=f4ae72eb11154faca54cf4fb465808c2 280w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/nLiwM1yzsAsC-Cbb/docs/images/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=560&fit=max&auto=format&n=nLiwM1yzsAsC-Cbb&q=85&s=c0942591226dbf62339ba04965e1a7c7 560w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/nLiwM1yzsAsC-Cbb/docs/images/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=840&fit=max&auto=format&n=nLiwM1yzsAsC-Cbb&q=85&s=cca02e4f6f089935b44e27da920ec872 840w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/nLiwM1yzsAsC-Cbb/docs/images/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=1100&fit=max&auto=format&n=nLiwM1yzsAsC-Cbb&q=85&s=0b666069cb311ff9683dde82259740b1 1100w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/nLiwM1yzsAsC-Cbb/docs/images/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=1650&fit=max&auto=format&n=nLiwM1yzsAsC-Cbb&q=85&s=ee3020be1c66e87c804c6fa3a2afad10 1650w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/nLiwM1yzsAsC-Cbb/docs/images/cdy7uua7fh8z/2TZ9jSjgEcARFpULI6hz4R/a4319a1bd482f2ee5cc23100fdb2f42c/New-form-Forms-for-action-use-case.png?w=2500&fit=max&auto=format&n=nLiwM1yzsAsC-Cbb&q=85&s=b1ae2a0f9cd200cb818450a19ed8221d 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-staging-feat-3p-app-cross-app/nTdGsZGW3CusC03P/docs/images/cdy7uua7fh8z/6H1lRzwKyYioQyQJ9MtIoM/aa248e92fc028a68a5b92ff361a11644/progressive-profile-step.png?fit=max&auto=format&n=nTdGsZGW3CusC03P&q=85&s=41a2177b7da820fc8de2cf9831bec11c" 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-staging-feat-3p-app-cross-app/nTdGsZGW3CusC03P/docs/images/cdy7uua7fh8z/6H1lRzwKyYioQyQJ9MtIoM/aa248e92fc028a68a5b92ff361a11644/progressive-profile-step.png?w=280&fit=max&auto=format&n=nTdGsZGW3CusC03P&q=85&s=d6832af85c0312d7b88a1c225eb60b6d 280w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/nTdGsZGW3CusC03P/docs/images/cdy7uua7fh8z/6H1lRzwKyYioQyQJ9MtIoM/aa248e92fc028a68a5b92ff361a11644/progressive-profile-step.png?w=560&fit=max&auto=format&n=nTdGsZGW3CusC03P&q=85&s=ff00004b1936591229e4b110e22d9f73 560w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/nTdGsZGW3CusC03P/docs/images/cdy7uua7fh8z/6H1lRzwKyYioQyQJ9MtIoM/aa248e92fc028a68a5b92ff361a11644/progressive-profile-step.png?w=840&fit=max&auto=format&n=nTdGsZGW3CusC03P&q=85&s=6da3ba37431e0c49d95a563ff2876805 840w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/nTdGsZGW3CusC03P/docs/images/cdy7uua7fh8z/6H1lRzwKyYioQyQJ9MtIoM/aa248e92fc028a68a5b92ff361a11644/progressive-profile-step.png?w=1100&fit=max&auto=format&n=nTdGsZGW3CusC03P&q=85&s=899ec3c165474b89e7798bc2df575d08 1100w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/nTdGsZGW3CusC03P/docs/images/cdy7uua7fh8z/6H1lRzwKyYioQyQJ9MtIoM/aa248e92fc028a68a5b92ff361a11644/progressive-profile-step.png?w=1650&fit=max&auto=format&n=nTdGsZGW3CusC03P&q=85&s=6a7dad1a31e8c77c32f25d4a964368ce 1650w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/nTdGsZGW3CusC03P/docs/images/cdy7uua7fh8z/6H1lRzwKyYioQyQJ9MtIoM/aa248e92fc028a68a5b92ff361a11644/progressive-profile-step.png?w=2500&fit=max&auto=format&n=nTdGsZGW3CusC03P&q=85&s=f6e2381cd83157465fd6fa0b73d99955 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-staging-feat-3p-app-cross-app/XxknlFCIvL5gg2oE/docs/images/cdy7uua7fh8z/5C91DaWn4LGtJT9BF87ssu/095171d0c452a287c44bfde12fd6d13f/link-nodes.png?fit=max&auto=format&n=XxknlFCIvL5gg2oE&q=85&s=6525b4b7c24dd58a2065e1185a0acce2" 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-staging-feat-3p-app-cross-app/XxknlFCIvL5gg2oE/docs/images/cdy7uua7fh8z/5C91DaWn4LGtJT9BF87ssu/095171d0c452a287c44bfde12fd6d13f/link-nodes.png?w=280&fit=max&auto=format&n=XxknlFCIvL5gg2oE&q=85&s=0428fa7af1907388013a810a6d0b4267 280w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/XxknlFCIvL5gg2oE/docs/images/cdy7uua7fh8z/5C91DaWn4LGtJT9BF87ssu/095171d0c452a287c44bfde12fd6d13f/link-nodes.png?w=560&fit=max&auto=format&n=XxknlFCIvL5gg2oE&q=85&s=8d788d15898e3ccc19755208eb77855c 560w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/XxknlFCIvL5gg2oE/docs/images/cdy7uua7fh8z/5C91DaWn4LGtJT9BF87ssu/095171d0c452a287c44bfde12fd6d13f/link-nodes.png?w=840&fit=max&auto=format&n=XxknlFCIvL5gg2oE&q=85&s=be55e97321115c38d09707229845ea26 840w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/XxknlFCIvL5gg2oE/docs/images/cdy7uua7fh8z/5C91DaWn4LGtJT9BF87ssu/095171d0c452a287c44bfde12fd6d13f/link-nodes.png?w=1100&fit=max&auto=format&n=XxknlFCIvL5gg2oE&q=85&s=c9e9074b6ebce30fde198fc3816360f6 1100w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/XxknlFCIvL5gg2oE/docs/images/cdy7uua7fh8z/5C91DaWn4LGtJT9BF87ssu/095171d0c452a287c44bfde12fd6d13f/link-nodes.png?w=1650&fit=max&auto=format&n=XxknlFCIvL5gg2oE&q=85&s=f766d4526539bf957cf2f421a95e224a 1650w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/XxknlFCIvL5gg2oE/docs/images/cdy7uua7fh8z/5C91DaWn4LGtJT9BF87ssu/095171d0c452a287c44bfde12fd6d13f/link-nodes.png?w=2500&fit=max&auto=format&n=XxknlFCIvL5gg2oE&q=85&s=2818916ad965912f90df6a62c87a302a 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-staging-feat-3p-app-cross-app/cTIKF7WTqp0TFnxB/docs/images/cdy7uua7fh8z/65Jx4W5oIZJyyvA8z4HqIx/0661b1a8ca6361c54fc4fef07ba59f0b/update-user.png?fit=max&auto=format&n=cTIKF7WTqp0TFnxB&q=85&s=4a96ba545159b76e79b1804b2bea08b2" 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-staging-feat-3p-app-cross-app/cTIKF7WTqp0TFnxB/docs/images/cdy7uua7fh8z/65Jx4W5oIZJyyvA8z4HqIx/0661b1a8ca6361c54fc4fef07ba59f0b/update-user.png?w=280&fit=max&auto=format&n=cTIKF7WTqp0TFnxB&q=85&s=a5ed87313c3e0bc61f413e8fa62a35c7 280w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/cTIKF7WTqp0TFnxB/docs/images/cdy7uua7fh8z/65Jx4W5oIZJyyvA8z4HqIx/0661b1a8ca6361c54fc4fef07ba59f0b/update-user.png?w=560&fit=max&auto=format&n=cTIKF7WTqp0TFnxB&q=85&s=4d5d95c7c507e74425c3eae0b292c435 560w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/cTIKF7WTqp0TFnxB/docs/images/cdy7uua7fh8z/65Jx4W5oIZJyyvA8z4HqIx/0661b1a8ca6361c54fc4fef07ba59f0b/update-user.png?w=840&fit=max&auto=format&n=cTIKF7WTqp0TFnxB&q=85&s=386162b872bd988bd3ea9bcd1fc551b1 840w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/cTIKF7WTqp0TFnxB/docs/images/cdy7uua7fh8z/65Jx4W5oIZJyyvA8z4HqIx/0661b1a8ca6361c54fc4fef07ba59f0b/update-user.png?w=1100&fit=max&auto=format&n=cTIKF7WTqp0TFnxB&q=85&s=9e6a8d17a6ec57d3ee4b69347a1850ee 1100w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/cTIKF7WTqp0TFnxB/docs/images/cdy7uua7fh8z/65Jx4W5oIZJyyvA8z4HqIx/0661b1a8ca6361c54fc4fef07ba59f0b/update-user.png?w=1650&fit=max&auto=format&n=cTIKF7WTqp0TFnxB&q=85&s=4e3da73eda8841a283c4cae63bb2f93e 1650w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/cTIKF7WTqp0TFnxB/docs/images/cdy7uua7fh8z/65Jx4W5oIZJyyvA8z4HqIx/0661b1a8ca6361c54fc4fef07ba59f0b/update-user.png?w=2500&fit=max&auto=format&n=cTIKF7WTqp0TFnxB&q=85&s=4556c014a452dee6c2d585ed139e4f3e 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-staging-feat-3p-app-cross-app/8eYScLyZhtkRvDs6/docs/images/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?fit=max&auto=format&n=8eYScLyZhtkRvDs6&q=85&s=7c53ff75193ba521333e16faa86c3edc" 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-staging-feat-3p-app-cross-app/8eYScLyZhtkRvDs6/docs/images/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=280&fit=max&auto=format&n=8eYScLyZhtkRvDs6&q=85&s=8ed032b3914ff7ba5822d7d36df16c76 280w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/8eYScLyZhtkRvDs6/docs/images/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=560&fit=max&auto=format&n=8eYScLyZhtkRvDs6&q=85&s=c89cf819dfc0bf0bd451bda42095c501 560w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/8eYScLyZhtkRvDs6/docs/images/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=840&fit=max&auto=format&n=8eYScLyZhtkRvDs6&q=85&s=ea38d4794f2ce0b84f001e8f3af3158b 840w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/8eYScLyZhtkRvDs6/docs/images/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=1100&fit=max&auto=format&n=8eYScLyZhtkRvDs6&q=85&s=40b7965646d2ab244d301aaa7a854345 1100w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/8eYScLyZhtkRvDs6/docs/images/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=1650&fit=max&auto=format&n=8eYScLyZhtkRvDs6&q=85&s=55afb0840d1315569156da044bc61db9 1650w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/8eYScLyZhtkRvDs6/docs/images/cdy7uua7fh8z/2EIUzc539sq9lwoTKbjoJv/496a864c0fc44a782c9cadca119dbfb0/embed.png?w=2500&fit=max&auto=format&n=8eYScLyZhtkRvDs6&q=85&s=94def41c1daafc90ae7dec62fa3ad8bf 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-staging-feat-3p-app-cross-app/nrXf0FyDioSCigoE/docs/images/cdy7uua7fh8z/1QjjZdpTqTxx012UDN4xk9/99fba5ef4068a5688f1762eea7f42976/renderprogessiveprofile.png?fit=max&auto=format&n=nrXf0FyDioSCigoE&q=85&s=c305973a6a101e107c4674cb6cc3601c" 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-staging-feat-3p-app-cross-app/nrXf0FyDioSCigoE/docs/images/cdy7uua7fh8z/1QjjZdpTqTxx012UDN4xk9/99fba5ef4068a5688f1762eea7f42976/renderprogessiveprofile.png?w=280&fit=max&auto=format&n=nrXf0FyDioSCigoE&q=85&s=9b2441174a51c0f21ad71891aa3f7c48 280w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/nrXf0FyDioSCigoE/docs/images/cdy7uua7fh8z/1QjjZdpTqTxx012UDN4xk9/99fba5ef4068a5688f1762eea7f42976/renderprogessiveprofile.png?w=560&fit=max&auto=format&n=nrXf0FyDioSCigoE&q=85&s=3305b495d2f5479d656bf1fe8314290e 560w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/nrXf0FyDioSCigoE/docs/images/cdy7uua7fh8z/1QjjZdpTqTxx012UDN4xk9/99fba5ef4068a5688f1762eea7f42976/renderprogessiveprofile.png?w=840&fit=max&auto=format&n=nrXf0FyDioSCigoE&q=85&s=7b4ee1be47b71fe3877af7021de2fdb3 840w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/nrXf0FyDioSCigoE/docs/images/cdy7uua7fh8z/1QjjZdpTqTxx012UDN4xk9/99fba5ef4068a5688f1762eea7f42976/renderprogessiveprofile.png?w=1100&fit=max&auto=format&n=nrXf0FyDioSCigoE&q=85&s=aead47b4042919cbd8e1a674ad530a7b 1100w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/nrXf0FyDioSCigoE/docs/images/cdy7uua7fh8z/1QjjZdpTqTxx012UDN4xk9/99fba5ef4068a5688f1762eea7f42976/renderprogessiveprofile.png?w=1650&fit=max&auto=format&n=nrXf0FyDioSCigoE&q=85&s=66569d606ba559450eb54b909454e4fe 1650w, https://mintcdn.com/docs-staging-feat-3p-app-cross-app/nrXf0FyDioSCigoE/docs/images/cdy7uua7fh8z/1QjjZdpTqTxx012UDN4xk9/99fba5ef4068a5688f1762eea7f42976/renderprogessiveprofile.png?w=2500&fit=max&auto=format&n=nrXf0FyDioSCigoE&q=85&s=8fffa3b973c0aed6b08f9bc605880474 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.
