---
schema_version: "1"
id: 0998bd03f883e12f0d04c4e5a71b1e2e28933292aacdf3f49c1144647bd6e897
title: Submit for Approval Action
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/platform/264-0-0/flow_ref_elements_actions_approval.md
canonical_url: https://help.salesforce.com/s/articleView?id=platform.flow_ref_elements_actions_approval.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 284733706a87504b8f58dc4af45e665e32683c198bb9ac695a10a9422eef1c3e
description: Submit one Salesforce record for approval using Classic Approval Processes. This action doesn't submit a record for approval using Flow Approval Processes.
products:
  - Flow Builder
  - Salesforce Platform
release: "264"
---
# Submit for Approval Action

Submit one Salesforce record for approval using Classic Approval Processes. This action doesn't submit a record for approval using Flow Approval Processes.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;"><a href="https://help.salesforce.com/s/articleView?id=platform.flow_ref_supported_editions.htm&amp;release=264.0.0&amp;type=5" title="Learn about the editions and user interfaces that support Flow Builder. Some Flow Builder features integrate with other Salesforce products that require additional licenses.">View supported editions.</a></td></tr></tbody></table>

![Tip](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/images/icon_tip.png)

Tip Before you begin, store the ID for the record that you want to submit for approval in a variable.

In Flow Builder, add an Action element to your flow. In the Action field, enter Submit, and select **Submit for Approval**.

## Set Input Values

Use values from earlier in the flow to set the inputs for the approval request.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:24%">
          <col style="width:76%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d130356e83">Input Parameter</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d130356e86">Description</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Input Parameter" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e83 ">
              <strong class="uicontrol">Record ID</strong>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e86 ">
              <p>The ID of the record that you want to submit for approval.</p>
              <p style="margin-bottom:0;">This parameter
                accepts single-value resources of any type. That value is treated as
                text.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Input Parameter" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e83 ">
              <strong class="uicontrol">Approval Process Name or ID</strong>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e86 ">
              <p>The unique name or ID of the approval process that you want to submit the
                record to. The process needs to have the same object type as the record you
                specified in <strong class="uicontrol">Record ID</strong>. </p>
              <p>Required if <strong class="uicontrol">Skip Entry
                  Criteria</strong> is set to <kbd>true</kbd>.</p>
              <p>If this
                parameter and <strong class="uicontrol">Submitter ID</strong> aren’t set, the flow succeeds
                only when: Make sure that:</p>
              <ul>
                <li>The approver on submit is determined automatically, and </li>

                <li>The user who launched the flow is an allowed initial submitter</li>

              </ul>
              <ul>
                <li>The approver on submit is determined automatically.</li>

                <li>The initial submitters for the approval processes related to this object
                  include all users who could launch this flow.</li>

              </ul>
              <p style="margin-bottom:0;">This parameter accepts single-value resources of any type. That value is
                treated as text.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Input Parameter" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e83 ">
              <strong class="uicontrol">Next Approver IDs</strong>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e86 ">
              <p>The ID of the user to be assigned the approval request when the approval
                process doesn’t assign the approver.</p>
              <p style="margin-bottom:0;">This parameter accepts collection variables
                of type Text that include exactly one item.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Input Parameter" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e83 ">
              <strong class="uicontrol">Skip Entry Criteria</strong>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e86 ">
              <p>If set to <kbd>true</kbd>, the record isn’t evaluated against the
                entry criteria set on the process that is defined in <strong class="uicontrol">Approval Process Name
                  or ID</strong>.</p>
              <p style="margin-bottom:0;">This parameter accepts any single-value resource of type
                Boolean.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Input Parameter" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e83 ">
              <strong class="uicontrol">Submission Comments</strong>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e86 ">
              <p>Text that you want to accompany the submission.

                Don’t reference merge fields or formula expressions.</p>
              <p>Submission
                comments appear in the approval history for the specified record. This text also
                appears in the initial approval request email if the template uses the
                <code>{!ApprovalRequest.Comments}</code> merge field.
              </p>
              <p style="margin-bottom:0;">This parameter accepts single-value resources of any type. That value is treated
                as text.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Input Parameter" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e83 ">
              <strong class="uicontrol">Submitter ID</strong>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e86 ">
              <p>The ID for the user who submitted the record for approval. The user receives
                notifications about responses to the approval request.</p>
              <p>The user needs to be one of
                the allowed submitters for the process.</p>
              <p>If you don’t set this field, the
                user who launched the flow is the submitter. If a workflow rule triggers a flow
                that includes this element, the submitter is the user who triggered the workflow
                rule. Workflow rules can be triggered when a user creates or edits a record. When
                the record is approved or rejected, the user who launched the flow or triggered
                the workflow rule is notified. </p>
              <p style="margin-bottom:0;">This parameter accepts single-value
                resources of any type. That value is treated as text.</p>
            </td>

          </tr>
        </tbody>
      </table>

## Store Output Values

To use the approval request’s outputs later in the flow, store them in variables. The values are assigned when the approval request is created.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:24%">
          <col style="width:76%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d130356e250">Optional Output Parameter</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d130356e253">Description</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Optional Output Parameter" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e250 ">
              <strong class="uicontrol">Instance ID</strong>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e253 ">
              <p>The ID of the approval request that was submitted.</p>
              <p style="margin-bottom:0;">This parameter accepts
                single-value variables of type Text, Picklist, or Multi-Select
                Picklist.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Optional Output Parameter" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e250 ">
              <strong class="uicontrol">Instance Status</strong>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e253 ">
              <p>The status of the current approval request. Valid values are Approved,
                Rejected, Removed, or Pending.</p>
              <p style="margin-bottom:0;">This parameter accepts single-value variables of
                type Text, Picklist, or Multi-Select Picklist.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Optional Output Parameter" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e250 ">
              <strong class="uicontrol">New Work Item IDs</strong>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e253 ">
              <p>The IDs of the new items submitted to the approval request. There can be 0 or 1
                approval processes.</p>
              <p style="margin-bottom:0;">This parameter accepts collection variables of type
                Text.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Optional Output Parameter" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e250 ">
              <strong class="uicontrol">Next Approver IDs</strong>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e253 ">
              <p>The IDs of the users who are assigned as the next approvers.</p>
              <p style="margin-bottom:0;">This parameter
                accepts collection variables of type Text.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Optional Output Parameter" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e250 ">
              <strong class="uicontrol">Record ID</strong>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d130356e253 ">
              <p>The ID of the record that the flow submitted for approval.</p>
              <p style="margin-bottom:0;">This parameter
                accepts single-value variables of type Text, Picklist, or Multi-Select
                Picklist.</p>
            </td>

          </tr>
        </tbody>
      </table>

## Usage

At run time, the approval request isn’t created until the interview’s transaction is completed. Transactions are complete when the interview either finishes or runs a Screen, Local Action, or Wait element.

#### See Also

- [Flow Elements](https://help.salesforce.com/s/articleView?id=platform.flow_ref_elements.htm&release=264.0.0&type=5 "An element represents an action that the flow can run. Examples include reading or writing Salesforce data, displaying information and collecting data from flow users, runnning business logic, or manipulating data.")
- [Add and Edit Elements](https://help.salesforce.com/s/articleView?id=platform.flow_build_elements.htm&release=264.0.0&type=5 "Use elements to define actions that the flow can run. When they’re on the canvas, connect them to create the order in which they run.")
- [Customize What Happens When a Flow Fails](https://help.salesforce.com/s/articleView?id=platform.flow_build_logic_fault.htm&release=264.0.0&type=5 "Learn how fault paths customize what happens when a flow fails. Choose how to notify admins, guide users, and take a follow-up action.")
- [Move and Connect Elements to Change a Flow Route](https://help.salesforce.com/s/articleView?id=platform.flow_build_logic_route_add.htm&release=264.0.0&type=5 "Identify which elements the flow runs and in what order by connecting the elements on your canvas together. To change the run order, move elements and add or remove connectors.")
- [Request an Approval Action](https://help.salesforce.com/s/articleView?id=platform.automate_flow_ref_elements_actions_run_flow_approval_process.htm&release=264.0.0&type=5 "Run an active, autolaunched flow approval process with the specified inputs asynchronously. This action doesn’t submit a record for approvals that use Classic Approval Processes.")