> You are reading the Docusign Developer Documentation. For clean Markdown of any page, append .md to the page URL.
>
> Documentation indexes by section:
> - APIs and SDKs: https://docusign.docs.buildwithfern.com/docs/llms.txt
> - Platform 101: https://docusign.docs.buildwithfern.com/platform/llms.txt
> - Extension Apps: https://docusign.docs.buildwithfern.com/extension-apps/llms.txt
> - Docusign CLI: https://docusign.docs.buildwithfern.com/docusign-cli/llms.txt
>
> Authentication (OAuth, JWT Grant, M2M): https://docusign.docs.buildwithfern.com/platform/auth
> Webhooks and Connect: https://docusign.docs.buildwithfern.com/platform/webhooks
>
> OpenAPI specifications: https://docusign.docs.buildwithfern.com/openapi.json
> MCP server: https://docusign.docs.buildwithfern.com/_mcp/server

# Embed a workflow in your web application

> Learn about embedding Workflow Builder workflows in your web application.

When your Workflow Builder API integration starts a workflow instance by making a [Workflows: triggerWorkflow](/docs/workflow-builder-api/reference/workflowbuilder/workflows/triggerworkflow) request, the response includes an `instance_url`. This is the URL of the web page where a user completes the workflow steps. Your integration has two options for displaying the `instance_url`:

* **Redirect the user's browser to the workflow instance URL:** The user is routed from your web application to the Docusign platform. When the user completes the workflow, they remain at the Docusign platform instead of returning to your web application.

  For sample code that demonstrates this option, see [How to trigger a Workflow Builder workflow](/docs/workflow-builder-api/how-to/trigger-workflow) and the [Workflows Sample App](https://workflows.sampleapps.docusign.com/).
* **Embed the workflow instance URL in an iframe:** The workflow is displayed within your web application, and your web application's user interface is visible as users complete the workflow. This contributes to a more seamless user experience. When a user finishes the workflow, their browser window still displays your web application, which can route the user to other pages in your application as needed.

## Embedded workflow instance recommendations and restrictions

### Workflow start methods

For Workflow Builder API integrations that embed workflow instances, the supported [workflow start methods](https://support.docusign.com/s/document-item?language=en_US\&bundleId=yff1696971835267\&topicId=ztb1727892686033.html) are **From a Link** and **From an API call**.

### Workflow starting variable values

If your integration's [Workflows: triggerWorkflow](/docs/workflow-builder-api/reference/workflowbuilder/workflows/triggerworkflow) request will include [starting variable](/docs/workflow-builder-api/workflow-builder101/variables) values passed in the `trigger_inputs` object, Docusign recommends that the workflow start method be set to **From an API cal**l instead of **From a Link**. For sample code that includes starting variable values, see [How to trigger a Workflow Builder workflow](/docs/workflow-builder-api/how-to/trigger-workflow).

### Workflow step types

These restrictions related to [workflow step types](https://support.docusign.com/s/document-item?bundleId=yff1696971835267\&topicId=afu1730332596907.html) apply to embedded workflow instances:

* All workflow step types are supported with integrations that embed workflow instances, except for **Collect Data from an ID**.
* For **Verify Someone's Identity** steps, only the **Phone Authentication** verification method is supported with embedded workflow instances.
* If a workflow does not include any steps that users complete in a UI, Docusign does not recommend embedding workflow instances in your web application. An example of a workflow with no UI steps is one that only sends an email to users.
* For workflows that include a **Send Documents for Signature** step, [focused view](/docs/esign-rest-api/esign101/concepts/embedding/embedded-signing#focused-view) display of the agreement to be signed is not supported.

## Embed a workflow instance URL

To embed the `instance_url` returned in a [Workflows: triggerWorkflow](/docs/workflow-builder-api/reference/workflowbuilder/workflows/triggerworkflow) response, include the URL in an iframe, for example:

```text
<div className={styles.formContainer}>
  <iframe src={triggerUrl} width="800" height="600">
  </iframe>
</div>
```

## Next steps

* See the [API reference](/docs/workflow-builder-api/reference) for details about Workflow Builder API endpoints.
* Learn more about [workflow steps](/docs/workflow-builder-api/workflow-builder101/steps).
* Review the options to [monitor workflow instances](/docs/workflow-builder-api/workflow-builder101/monitor-workflow) that your integration has triggered.