Skip to main content

Designing flows

Getting started

There are a few steps to designing a flow.

  1. Determine requirements
  2. Create the flow
  3. Set targeting rules in the start block
  4. Design the flow logic using step and finish blocks

1. Determine requirements

First you need to determine a few details about a flow you want to build with Dopt.

You should determine:

  • Targeting rules:
    • What user properties will I use to target the right set of users? → This will determine what user properties you’ll need to send Dopt and what the targeting rules in the start block will be.
  • Steps and flow logic:
    • What are the steps of the desired flow? → You’ll likely need 1 step block per step.
    • What’s the logic that connects the steps? → This will determine the paths between blocks.

2. Create the flow

To create a flow, go to the flows page and click the Create flow button.

This will bring you to the flow canvas with a start block, step block, and finish block already created.

You can rename the flow and add a description by clicking on the flow name.

You can scroll the flow canvas by holding space bar and dragging the canvas or scroll using a mouse wheel/trackpad (holding shift while scrolling will scroll the canvas horizontally).

3. Set targeting rules in the start block

In the start block, set the target rules for which users should qualify for this flow.

Read more about targeting rules →

4. Design the flow logic using step and finish blocks

Now, for each step in your desired flow, create a step block.

To create a step block, drag a step block from the details panel onto the canvas.

You can drag and drop blocks to move them around.

Then connect the step blocks with paths to represent the flow logic. Do this by selecting a block and then dragging the edge from the bottom of the block to the other block.

Wherever you want the flow to end, you can add a finish block.

You can read more about step blocks, finish blocks, and paths here.

Now that your flow is created, developers can leverage the SDK to build the experience into your application.