In this section we will dive into the technical details of creating or modifying workflows, using pre-made or custom blocks.
We recommend that you review the Quick start section first to get an understanding of the process of setting up workflows and the terms involved in developing on Canvas.
In Canvas, blocks are meant to be modular and single purpose. Although it is possible to run the whole integration in one monolithic mega-block, we instead recommend creating new, separate blocks as needed in keeping with this philosophy.
About Datasource and order of execution
As you know, workflows are made up of blocks. These blocks will run in sequence, and will generally execute in a linear fashion from top to bottom - with data returned from the first block feeding into the second block, which in turn feeds into the third block, etc.
Data from a previous block is referred to as Datasource in the block script.
Each block will have settings to allow you to select the Datasource to feed into the block.
This means that it is possible to have cases where the actual order of execution is not top to bottom, if for example the Datasource of the third block is the first.
Canvas builds a dependency graph and executes the blocks in the correct order, depending on how the blocks feed into each other, as specified in the Datasource settings.
Building with blocks
The process of developing workflows on Canvas primarily consists of:
Building with ready-made blocks
Modifying blocks
Creating new blocks
Building with ready-made blocks
Each supported application on Canvas comes with a library of ready-made block. These blocks can easily be added and reused in any project.
The blocks will often have configurable parameters, shown in the “Working Area” tab.
Modifying blocks
Blocks are written in modern Javascript, and can be inspected, modified, and debugged directly in the browser.
Creating new blocks
If you want to add a new block to your workflow
Customized blocks, generic
Ready-made blocks (templates)
Drag-and-drop onto Canvas
Block settings
Block code under debug
Run in Chrome debug pressing F12