---
title: DaVinci and frontend flows
description: DaVinci flows designated as PingOne flows (triggered by a PingOne authorize request) use the redirect method to launch and execute the flow in a new browser tab. These flows identify a DaVinci flow policy by its ID and use PingOne endpoints to associate the flow policy with the application. After the user completes all sign-on actions, the flow terminates with specific nodes such as Return a Success Response or Return an Error Response to redirect back to the application.
component: pingone-api
page_id: pingone-api:davinci:getting-started-with-davinci/frontend-flows
canonical_url: https://developer.pingidentity.com/pingone-api/davinci/getting-started-with-davinci/frontend-flows.html
section_ids:
  why-use-davinci-frontend-flows: Why use DaVinci frontend flows
  frontend-implementation-method-comparison: Frontend implementation method comparison
---

# DaVinci and frontend flows

DaVinci flows designated as PingOne flows (triggered by a PingOne authorize request) use the redirect method to launch and execute the flow in a new browser tab. These flows identify a DaVinci flow policy by its ID and use PingOne endpoints to associate the flow policy with the application. After the user completes all sign-on actions, the flow terminates with specific nodes such as `Return a Success Response` or `Return an Error Response` to redirect back to the application.

|   |                                                                                                                                                                                                                                                                                                                        |
| - | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|   | DaVinci frontend flows that use the widget integration method are not initiated through a call to the PingOne authorization server. These flows require the inclusion of the DaVinci widget JavaScript file (`davinci.js`) into your application's code. This integration method will not be covered in this document. |

## Why use DaVinci frontend flows

PingOne DaVinci frontend flows (using the redirect method) is a more efficient, easier to use integration method than the widget or API methods. The benefits include:

* **No-code/low-code implementation**: The redirect method provides a fast integration because it requires minimal or no development skills compared to embedding widgets or building API calls.

* **Protocol support:** The redirect method supports both OpenID Connect (OIDC) and Security Assertion Markup Language (SAML) application types.

* **Versatile user experience:** It supports complex, multi-step flows such as registration, profile management, or step-up authentication.

* **Session management:** Using the PingOne Authentication Connector with a redirect creates a PingOne user authentication session upon successful completion of the authentication flow, simplifying session handling.

## Frontend implementation method comparison

The following table provides guidance on frontend implementation method features and when to use the supported DaVinci methods.

| Feature          | Redirect           | Widget           | SDK                         |
| ---------------- | ------------------ | ---------------- | --------------------------- |
| User experience  | Full-page redirect | Embedded in page | Completely native or custom |
| Developer effort | None to low        | Minimal          | Medium                      |
| Domain           | PingOne domain     | Your domain      | Your domain                 |
| Speed            | Fastest setup      | Fast             | Slower setup                |
