# Create a new Flow

## **Purpose**&#x20;

A "Flow" is the neural schema of your Integration that holds the business logic of the data-synchronization and is written in the form of a pseudo-code. A Flow is usually written with API calls to a system (to access data), along with conditional checks and data formatting, which will successfully execute the objective of your integration.&#x20;

## **Preconditions**&#x20;

In order to successfully build a Flow, certain prerequisites need to be fulfilled:&#x20;

**1.Add a Project**

The Projects page is considered the epicenter of the integration process, where users can create, edit and access all the projects that they have access to.

A new project can be added by clicking on Projects icon from the Dashboard and then the Add New button in the Projects page. For more information click below:

{% content-ref url="/pages/-M-E\_WD1X2W7U5SaXOLZ" %}
[Broken mention](broken://pages/-M-E_WD1X2W7U5SaXOLZ)
{% endcontent-ref %}

&#x20;

**2. Add Systems / Credentials**

After a Project is added, click on the Manage button. The Project console now opens where you can manage Integrations and Credentials, and other project settings. &#x20;

Click on the Credentials icon, and add the system credentials as described below:

{% content-ref url="/pages/-M-Ea72waNKuVT0-t67B" %}
[Credentials](/project-manager/systems/credentials.md)
{% endcontent-ref %}

## **Flowchart**&#x20;

![](/files/DJG3vYEHjRUmoQdK3c6u)

## **Steps to Build a Flow**

1.Go to the Projects page by clicking on the ***Manage*** button against your project in the Dashboard. (See 1, 2 and 3 in the figure below)

![](/files/pKHKvap85tGt44rOX2fq)

2\. From the **Advanced** menu, click on ***Flows***.

![](/files/iY0lQyh0cJzby3IkcCF8)

3\. Click on the ***Add New*** button in the Flows page.&#x20;

![](/files/82dnIRjrvaPczT46RjMF)

4\. The Add Flow window opens. Here, on the right side, you will find the list of Handlers. The center section is the **Play area** where you can drag and drop the Handlers to.&#x20;

![](/files/glBSEmMQXlxCeudbuMtR)

### Preliminary Steps

1.Add a suitable **name** and **description** for your Flow.&#x20;

> Example
>
> Flow Name: Create Customers
>
> Description: Flow to Create Customers from P21 to Magento

2\. Turn ON the status of the Flow by clicking on the ***Toggle On/Off*** button. This will enable/disable your Flow.

3\. You may add a **Source API Response**.&#x20;

*The source API response is used to display the API fields(SOURCE) in Mapping and will be used only in dynamic or webhook pipes. Provide a sample API response here.*

4\. If a **Core Flow** (pre-built template) has been built for your systems, you may load it here.&#x20;

5\. Also, a pre-built Flow can be imported by clicking on ***Import Flow***.

### Core Steps&#x20;

1.Drag and  Drop the required Handler to the Play area.&#x20;

![](/files/jpOK580PL5CdxeOpNcpk)

2\. Configure the Handler by clicking on it in the Play area

> Example:  For the API Call handler, you have to choose a system, select the API call, add a Response Variable and other parameters.&#x20;

More on each type of Handler can be found below:&#x20;

{% content-ref url="/pages/-LvPCaddIg6F\_GTx\_eeE" %}
[Flows & Handlers](/developers/flows.md)
{% endcontent-ref %}

3\. Similarly, you may add other Handlers until the business logic of the data synchronization is satisfied.&#x20;

For Flows: Best Practices, click below:&#x20;

{% content-ref url="/pages/-LwNi0m196YOmYFCKnK6" %}
[Flows: Best Practices](/developers/flows/best-practices.md)
{% endcontent-ref %}

For Flows: Use Cases, click below:&#x20;

{% content-ref url="/pages/-LwNiSVa\_2wupXsnrwth" %}
[Flows: Use Cases](/developers/flows/use-cases.md)
{% endcontent-ref %}

4\. After building the Flow, click on Save and Merge for the changes to be reflected in the project.&#x20;

{% hint style="info" %}
Difference between Save and Save & Merge

After making changes to the Flow

* **Save** - if you click on Save, changes will be saved but do not reflect in the pipe
* **Save & Merge** - Clicking on Save & Merge, will reflect changes made in the pipe
  {% endhint %}

The Flow is now ready to be used in an Integration Pipe.&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.dckapintegrator.com/tutorials/create-a-new-flow.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
