In the world of software development and business automation, there's often a gap between how business stakeholders describe processes and how developers implement them. This disconnect can lead to misunderstandings, rework, and slower innovation. What if you could define discrete pieces of business logic in a way that's understandable to both sides?
Enter the concept of "atomic actions," the fundamental building block of the action.do platform.
Think of an atomic action as the smallest, self-contained unit of work within a business process. It's a single, focused operation that performs a specific task. Examples could include:
Each action is designed to be:
The action.do platform is built around this powerful concept. It allows you to define, orchestrate, and execute these atomic actions as code. This approach provides several significant advantages:
The beauty of action.do lies in its simplicity. You define an action using a declarative JSON structure. Here's an example:
This JSON defines an action with a unique ID, a human-readable description, a schema for its input (expecting a userId), and the JavaScript code that executes the logic (fetching user data and sending an email).
While atomic actions are simple in concept, they are the powerful building blocks for complex processes. By composing and orchestrating these actions, you can build sophisticated workflows and enable intelligent agentic systems to automate large parts of your business operations.
action.do provides the platform to do precisely this, allowing you to define your business logic as code using these reusable atomic units. This not only bridges the gap between business and technology but also paves the way for more agile, resilient, and powerfully automated organizations.
Ready to start building with atomic actions? Explore action.do and define your first piece of business logic as code.
Q: What is an 'action' in action.do?
A: An action in action.do represents a single, atomic unit of work or business logic that can be defined, executed, and reused within larger workflows or agentic systems.
Q: Why use atomic actions for automation?
A: Actions promote reusability, modularity, and testability. They break down complex processes into manageable, discrete steps, making your automations easier to build, maintain, and scale.
Q: How do I define an action?
A: You define an action using a simple, declarative JSON structure, specifying its ID, description, input schema, and the code (typically JavaScript or TypeScript) that encapsulates the business logic to be executed.
Q: Are actions only for simple tasks?
A: Actions are designed to be the building blocks for workflows and agentic systems on the .do platform. They can be composed and orchestrated within larger processes to achieve complex automation goals.
{
"type": "action",
"id": "send-welcome-email",
"description": "Send a welcome email to a new user",
"inputSchema": {
"type": "object",
"properties": {
"userId": {
"type": "string"
}
},
"required": ["userId"]
},
"code": "async (input, context) => {\n const userData = await context.getUser(input.userId);\n await context.sendEmail({\n to: userData.email,\n subject: 'Welcome!',
body: 'Hello ' + userData.name + ', welcome to our service.'\n
});\n
return { status: 'email_sent' };\n
}"
}