Announcing Appsmith Workflows: A Developer-First Workflow Automation Solution

Akhil Varma
Posted by Akhil VarmaPublished on Oct 30, 2024
8 min read
Blog-cover-workflows-announcement

Workflow automation platforms like Zapier, Make, and n8n are great at what they do, but they have some key limitations for developers and large enterprises. For one, there are common types of workflows that are easy to implement in code, but surprisingly difficult to implement with these purely node-based solutions. And secondly, these tools don’t natively support human-in-the-loop workflows.

Introducing Appsmith Workflows: automation for developers

That’s why today we’re announcing Appsmith Workflows, our workflow automation solution. This feature has been in closed beta since March 2024 and we are now happy to release it to the entire Appsmith community so that everybody can start using it.

You might ask why we’ve created a workflow solution when our main focus for the past few years has been our low-code platform and there are so many other great workflow automation tools out there (many of which are open-source). The short answer is that we realized we were not fulfilling our mission.

Our mission at Appsmith has always been to empower developers to quickly build business-critical processes that improve organizational efficiency. Even though we’ve built tools that automate processes initiated by humans by focusing on the front end, we realized that there were many back-end workflows triggered by separate systems that we had not yet impacted.

Historically at Appsmith, automating processes like these was cumbersome. One reason is that users needed separate tools to trigger their Appsmith applications from different workflows when ideally the workflows should be built with the same platform.

But there are two deeper reasons that we mentioned previously. For one, the purely node-based paradigm and the purely code-based paradigm have inherent limitations. And secondly, modern workflow automation tools don’t natively support human-in-the-loop (HITL) workflows, which arguably make up the bulk of all workflows.

How Appsmith Workflows improves workflow automation

With our workflow automation solution, we set out to solve these two major problems:

Problem: Purely node-based and code-based solutions have limitations

The major benefit that node-based solutions offer over their code-based counterparts is that they are far simpler and easier to use. However, this benefit comes at the cost of flexibility and customization. For most cases, this tradeoff is worth it because you can often build workflows orders of magnitude faster with node-based tools than with code-based tools.

However, the simplicity of node-based tools becomes a drawback when you want to implement complex logic. As workflows increase in complexity, the canvas becomes visually cluttered with an array of nodes for each action or decision point, complicating navigation, understanding, and management of the workflow. This can make it surprisingly difficult to do things that would be easy in code, like implementing conditional logic, loops, and data transformations.

While this could be easily solved by just coding up a script to automate things your own way, that would mean throwing out all of the other benefits that automation platforms offer, like easy, native integration with other services, and massive out-of-the-box automation. It would also need you to maintain and monitor your own servers to ensure uptime (and that no vital automations are missed).

Solution: Node? Code? Why not both 🤷?

Appsmith Workflows, like other popular automation tools, allows you to execute workflows on certain schedules or events rather than by direct user interaction with an application. Unlike other workflow automation tools, however, we combine the strengths of both node-based systems (like Zapier or n8n) and code-based systems (like AWS Lambda, Node.js servers, or Bash scripts with Cron).

Like node-based tools, Appsmith Workflows streamlines integration with external services, which is traditionally a hurdle with code-based systems. It offers a user-friendly graphical interface for making web requests to APIs that handles authentication, building the request, and parsing the response. This lets you focus on developing the logic and functionality of your workflows rather than tedious configuration.

Building on this node-based foundation, Appsmith lets you write your own logic using JavaScript, granting you the flexibility to handle sophisticated, nuanced processes that go well beyond the capabilities of a purely visual node-based approach.

Diagram showing how Appsmith combines the best aspects of both node-based and code-based workflow automation tools.

In other words, Appsmith Workflows “orchestrates with code and performs actions with nodes.” This is similar to the approach we take for our low-code app platform: we provide visual query and user interface tools for speed and efficiency, and we also allow you to write your own JavaScript to interact with queries and front-end widgets when you want to go beyond our out-of-the-box functionality. The same approach felt natural with workflows.

Problem: Existing workflow automation solutions don’t handle human-in-the-loop workflows well

Automation is incredibly efficient, yet it lacks the nuanced judgment and decision-making abilities of a human. Keeping a human in the loop is particularly vital when workflows involve complex decisions or sensitive data (or monetary transactions!) and require oversight. These types of human-in-the-loop workflows happen all the time in any business, but existing automation solutions are incredibly limited when dealing with these cases.

There are also many processes within large organizations that should be automated but aren’t because the process is too big and can’t be prioritized for automation. Just because the entire process can’t realistically be automated doesn’t mean that key parts can’t be automated (especially if those parts are quick to automate but slow to do manually). Human-in-the-loop workflows can also help deal with these "perfect is the enemy of good" situations by automating certain parts of the process while also prompting users to take manual actions on other parts.

Solution: Appsmith Workflows is built with human interaction in mind

Appsmith Workflows integrates features that streamline and secure the human intervention process. First, it offers a native system for assigning requests directly to specific users or user groups, all handled automatically through the Appsmith platform. This targeted assignment ensures that the right operators are alerted to tasks that require their attention, optimizing response times and process flow.

These requests and their resolutions are safeguarded with built-in access controls and audit trails, ensuring that only authorized personnel can access sensitive data and all actions are transparently logged for compliance and review purposes.

Appsmith Workflows also enables developers to integrate the resolution process directly into low-code applications built with Appsmith. You can use the Appsmith low-code platform to build custom user interfaces for decision makers that contain all of the relevant data they need, while still automating the vast majority of the work for efficiency and accuracy.

How Appsmith Workflows works

Each workflow acts as a sequence of steps that is orchestrated with JavaScript code. Workflow execution continues until it reaches an approval step for a user within the workspace, at which point execution pauses. Then requested users can approve or reject those workflows.

Within your low-code applications, you can interact with your workflows by using an Appsmith Workflows query. You can trigger a workflow directly from an application, you can display your queue of unresolved workflow requests, or you can resolve a request, all while passing in the necessary parameters for the workflow to restart and continue until the next approval step.

Appsmith Workflows queries allow Appsmith user interfaces and workflows to interact.

Workflow execution is monitored and logged, so that you can see the order of execution, timestamps, and the values of certain data at every step. This is extremely helpful for debugging during workflow development, as well as compliance reviews after workflows are in production.

The execution log from an Appsmith workflow.

How Appsmith Workflows drives business results

Appsmith Workflows allow you to create and manage all of your low-code applications, workflows, and user interfaces in the same place on the same platform. This means one single tool to organize and orchestrate all of your business automation and internal tools.

Unifying all of your tools and workflows under the Appsmith ecosystem means that they can be centrally managed, including ensuring the security, compliance, and governance of sensitive data across the whole company.

Moving beyond simple automation tools to a combined node-based and low-code approach also greatly expands the scope of what you can build. Appsmith lets you build apps that can adapt to your processes (rather than the other way around), and our automations aren't limited by what can be represented as a series of on-screen nodes — you can build workflows that are as simple or complex as you need them to be, and loop in humans with custom user interfaces when pure automation isn't enough.

If you're feeling futuristic, you can also loop in Appsmith AI to your automated workflows. You can integrate Appsmith AI within your workflows to guess at the correct decision, then have a human approve or disapprove. Over time, you can experiment until you reach a point where you feel comfortable handing over more and more decision making to the AI within your workflows.

Appsmith Workflows in the wild

During the closed beta, we've had a chance to see what real users have been up to with this new feature. We’ve seen the obvious ETL use cases that all workflow automation tools can handle, like syncing systems in the background with no user interface or human intervention.

But we’ve also seen a lot of human-in-the-loop workflows that are only possible on Appsmith. We’ve seen procurement approval workflows to automate the process of evaluating vendors within a large company, while still providing decision makers with the final say. We’ve also seen applications to automate GDPR data deletion requests by leveraging Appsmith Workflows and Appsmith AI. We're curious to see what others will try now that Workflows has been released to general availability.

What can Appsmith Workflows do for you?

If you have any questions or feedback about Appsmith Workflows, don't hesitate to reach out to us on Discord, or get in touch with the Workflows team directly at workflows@appsmith.com. We read and respond to every message. If there's something Appsmith Workflows could do for you, we want to know. You can also schedule a call with me (Akhil) and we can walk through your first workflow!

Appsmith Workflows is available on all business and enterprise versions of Appsmith. You can try Appsmith Workflows for free by self-hosting or using the cloud sandbox.