Understanding Start Task Block
The Start Task block allows you to trigger another task from within your current task.
By default, it waits for the started task to finish before continuing to the next block in the current task. This ensures you can safely use results or outputs from the triggered task.
The only input for this block is the Task you want to start.
1. When to Use Start Task#
Use the Start Task block when you want to:
- Run a separate task as part of a larger workflow
- Modularize repeated workflows to avoid duplication
- Chain multiple tasks together dynamically
- Trigger tasks conditionally (e.g., from If blocks or loops)
If you need to execute a task from another task and wait for its results, use the Start Task block.
2. How to Set Up#
- Add a Start Task block to your task workflow
- Fill the Task input
- Select the task you want to run
- Only a valid task can be selected
- Add actions after the Start Task block if needed
- These actions will not run until the started task finishes
3. Example: Trigger a Scraper Task from a Controller Task#
Goal: A main controller task monitors a page and triggers a scraper task whenever a new URL appears.
Steps#
- Create a scraper task named
Scrape Product Page- This task extracts product details from a URL
- In your controller task, add a Start Task block
- Select
Scrape Product Pageas the Task input
- Select
- Add optional logging or processing blocks after the Start Task
Execution:
- When the Start Task block runs, it triggers the scraper task and waits for it to complete
- Only after completion does the controller task continue to the next action
4. Integration With Loops and Conditionals#
The Start Task block works seamlessly inside loops and If blocks:
Example: Conditional Task Trigger#
- If
status == active
→ Start TaskProcess Active User - Else (mandatory, can be empty)
- End Block
Only active users trigger the secondary task. The parent task waits for each triggered task before continuing.
Example: Loop Trigger#
- For Each row in CSV
→ Start TaskProcess Row - End For Each
Every row triggers the secondary task individually, and the loop waits for each task to finish before proceeding to the next row.
5. Best Practices#
- Always select a valid task in the Task input
- Remember that the block waits for the task to finish, so long-running tasks will pause the parent task
- Use loops or If blocks to control when tasks are triggered
- Keep tasks modular; small tasks are easier to maintain
- Logging inside triggered tasks helps debug chained executions
Summary#
The Start Task block allows you to:
- Chain tasks together synchronously
- Reuse workflows efficiently
- Trigger tasks conditionally or repeatedly
By understanding that the block waits for the started task to finish, you can create modular, scalable, and reliable automation in Doppelganger.