Components
In the previous article, we explored what automations are and took a look at the automation editor. Now, it's time to start adding components.
What is a Component?
Section titled What is a Component?Components are the building blocks of an automation and they tell the automation what action to perform. Each component does a specific action like getting data from an app, creating a new record, reading a file, waiting for new mails, sending an HTTP request, resizing an image, downloading a file etc.
There are different categories for components based on their purpose. You will see that these categories are listed in the Component Panel at the left side of the editor.
Clicking a category (for example, Action category) will open the Component Selector. Here you can search and select components. Components are further grouped by the app or sub-category they belong.
Component Basics
Section titled Component BasicsBefore start adding components for our example automation (an automation that automatically tweets), let's add a component to the editor and look at the basics of a component. For this example, we will look at a component to send notification mails to yourself. This component is very handy when you want to get notified about an important event by email.
When you are in the editor, click the Action category in the component panel. You will see the component selector as shown above. Click the Email sub-category. If you cannot see it, you can search for Email too. There, you will see the email components as shown below. Click the Send Notification Email component.
When you click a component it is placed at the tip of your mouse cursor. You can place it anywhere by moving your cursor and clicking the editor area. An example is shown below.
When you add a component to the editor, it appears as an action block. Each block displays the component's name and icon, along with its most important features—input and output ports (connection points). A component accepts inputs, performs an action, and then provides outputs.
In our example, the "Send Notification Email" component is responsible for sending emails to specified recipients. Details of the component is shown below. To function, this component requires several inputs: who will receive the emails, what the subject line will be, and the content (or body) of the email. You provide these inputs through the component’s input ports. After the component runs, it delivers results through its output ports.
When you add or select a component in the editor, the Info Panel appears on the right side of the screen. In the example above, you can see the Info Panel becomes visible as soon as the component is placed in the editor. The Info Panel shows all the component’s inputs and outputs, as well as other details like its name and description.
Setting Component Inputs
Section titled Setting Component InputsA component can receive its inputs in two ways: either by using the output from another component or by entering a constant value directly in the Info Panel. You can choose between these two options. If you select the first option, the component block in the editor will display a connection point for that input, allowing you to link it to another component’s output. In the example above, all inputs are set to receive their values from other components, so each input has an associated input port. You can toggle these inputs to manually enter a constant value instead. For instance, if you’re sending emails to yourself, you’ll likely enter your email address as a constant value rather than pulling it from the automation flow.
On each input, you will see a switch to toggle how you set an input of a component as shown below.
When you click that switch and turn it off, you will see an input box to enter a value as shown below. Here you can enter your email address.
Also, the input port is removed from the component block as you are setting its value in the input form.
After setting all the inputs, you can run the component directly on the editor to test it and see its result. We will see this in the next article of this tutorial.
Component Categories
Section titled Component CategoriesWe learned about component basics. Now lets learn about the categories of the components we will use in our example automation. As mentioned above, there are different categories of components for different purposes and they are listed in the Component Panel. Let's have a look at most important categories: Triggers and Actions.
Trigger Components
Section titled Trigger ComponentsEach automation starts working (triggered) when they receive an event. Monkedo can listen to many different events to start automations. Some examples are:
When an event happens in an app (for example, when a new message is received in Discord, when a task is created in Cubicl, ...),
When an email is received,
When you run an automation manually.
These events are captured by Trigger Components and the automation is triggered. You can see the list of available trigger components under Trigger category in the Component panel.
In our example, we want to send tweets based on a schedule. We should run our automation everyday to check if there is a new content to tweet that day. For this, we can use the Schedule Trigger component which triggers automations at specific times or intervals. We will add this component and configure it in the next article.
Action Components
Section titled Action ComponentsAfter an event is received and the automation is triggered by a Trigger Component, you need to perform actions. For example, in our example automation we want to create tweets. These actions are done by Action Components. You can find action components to perform operations on the apps you use, send emails, process data, read files, and more. You can write the keywords to search box in the Component Selector window to find all related components.
We learned about the components. In the next article, we will start adding components to our automation.