Bots are designed to automate repetitive tasks and streamline workflows. To automate specific actions based on data and values in a form, document, or metadata within a document, use triggers and conditions to define when a bot should run, thereby tailoring the automation to your specific process. Conditions are a set of criteria that must be met for a bot to perform an action. There are various types of conditions that you can use, each with its own distinct criteria for triggering actions. In this article, we will explore the different types of conditions and provide examples of how they are used.
Bots have 5 types of conditions function using different operators:
Data from a completed document — triggers a bot to perform an action based on the data from fillable fields or merged tags in a document. For example: suppose you have a form where customers can submit feedback about your product or service. You want to automatically send a follow-up email to customers who rated your service as "poor" or "average". To do this, you can set up a bot with a document condition that checks the rating field in the form and triggers the follow-up email if the rating is "poor" or "average".
Recipient — triggers a bot to perform an action based on the user information entered in their account.
Tip: the recipient must have an account for the condition to work. If the document is filled using a public link, the recipient condition won't be helpful as no recipient information is collected.
For example: Suppose you have a process where you collect expense reports from employees. You want to automatically route those expense reports to different managers for approval based on the position the employee belongs to. To achieve this, you can set up a bot with a recipient condition that checks the "Position" field in the form.
Here are the fields that can be checked using the recipient condition:
Email: set up the recipient condition to check the email field of the recipient. For example, if you want to trigger a specific action for recipients with a particular email address, you can specify that in the recipient condition. This is helpful for sending targeted notifications or performing actions specific to certain recipients.
First name: by setting up a condition based on a recipient’s first name, you can automate actions that are personalized to each recipient's first name.
Last name: similar to the first name field, the recipient condition can check the last name field of the recipient. This enables you to trigger actions or notifications based on the last name of the recipient.
Access level: this condition allows you to trigger actions for recipients with specific level of access to the workflow (Admin or Fill and Share).
Step: this condition triggers a bot based on the current step in the workflow. It allows you to automate actions at specific stages of your process. For example, you can set up a bot to send a reminder email to participants when they reach a specific step or to perform a specific action when a document is at a particular stage of your workflow.
Date — triggers a bot to perform an action based on a specific date or period of time.
Suppose you have a monthly report generated by your team and you want to automatically save this report to a specific folder in Google Drive on the first day of each month.
Select the "When the date" condition > Advanced data type > Set the custom date and time. In the Months, days and time tab, tick the Every months box if you want the reports to be saved on a monthly basis.
When document data — triggers a bot to perform an action based on document metadata (Revision, Revision status, and tag). For example, you can set a condition that triggers a bot to send an email notification to a team member only if a document revision status is "Declined."
Note: Revision is created any time a person or a bot revises a document content.
Revision status helps you react quickly in situations where Revisions are either declined or completed.
Tag is used to mark a specific document or actions a bot has performed. System-generated tags are not currently supported. All tags must be added manually or using bots.
Number of fillable fields — triggers a bot to perform an action based on the number of fillable fields that are filled in the document. For example: suppose you have a form that requires customers to provide specific information. You want to automatically send a follow-up email to customers who did not fill out all the necessary fields in the form. To do this, you can set up a bot with a number of fillable field conditions that trigger the follow-up email if the number of filled fields is less than the required number.
After the document — triggers a bot to perform an action based after the selected document is completed. The condition is available for pre-fill bots setup on the step. For example: you are managing a document workflow in which data from one document needs to be pre-filled into two subsequent documents. You want to ensure that this pre-filling process happens in a specific sequence.You set up two pre-fill bots. The first bot pre-fills data from Doc1 into Doc2, and the second bot pre-fills data from Doc1 into Doc3. These bots run conditionally, ensuring data is pre-filled into the right document as you progress through the workflow.
By combining different conditions with logical operators like "And" and "Or," you can create even more complex triggers. For example, you can set a condition that triggers a bot to send an email to a recipient only if they have an account (Recipient condition) and have filled out all required fields in the document (Document condition).
During the bot conditions setup, indicate the operator that triggers the bot to perform a specific action.
Operator | Description |
Is empty | The field or value being checked does not have any data or content. For example, you could set a condition that triggers a bot if a specific field in a form is not filled. |
Is not empty | The field or value being checked does have data or content. For example, you could set a condition that triggers a bot if a specific field in a form is not empty. |
Is equal to | It is used to trigger a bot if a specific field matches a particular value that is entered manually. For instance, a bot can be triggered if the value in a specific field is "Approved." |
Is not equal to | This criterion is used to trigger a bot when a certain value is not equal to a specified value. For example, you could set a condition that triggers a bot if a certain field is not equal to "Rejected". |
">" (greater than) | The field or value being checked is greater than a specific value. For example, you could set a condition that triggers a bot if the value in a specific field is more but not equal to 10. |
"<" (less than) | The field or value being checked is less than a specific value. For example, you could set a condition that triggers a bot if the value in a specific field is less than 5. |
"=" (equal to) | The field or value being checked is equal to a specific value. This is similar to "Is equal to", but with the "=" sign, you can check if two fields or values are equal. For example, you could set a condition that triggers a bot if the value in one field is equal to the value in another field. |
"<=" ("less than or equal to) | It is used to trigger a bot when a certain value is less than or equal to a specified number. For example, you could set a condition that triggers a bot if a certain field is less than or equal to 10. |
“>=” (greater than or equal to) | It is used to trigger a bot when a certain value is greater than or equal to a specified number. For example, you could set a condition that triggers a bot if a certain field is greater than or equal to 100. |
Like | This criterion is used to trigger a bot when a certain value matches a specified pattern. For example, you could set a condition that triggers a bot if a certain field contains the word "invoice" anywhere in the field. Here is an example of how to set up the Rename workflow instances during signing process bot using the "Like" operator :
5. Select Apply to save the settings.
Whenever a document is submitted with a “Recommended product-other text” field that contains the word "invoice" anywhere in it, the bot will be triggered and perform its designated action. Keep in mind that the "Like" operator is case-insensitive, so it will match patterns regardless of the letter case. |
Regex | A type of operator that allows you to use a pattern to match text in a field. With regular expressions, you can search for and match text based on specific patterns rather than just exact values. Example: you can use a regular expression to match all phone numbers that start with a certain area code, for example +61. In this case, use the /^\+61/ expression and the bot will be executed only if the country code +61 is indicated in the selected document.
|
After | The condition is used to trigger a bot action after a specific date or time has passed. For example, you could set a condition that triggers a bot to send a reminder email to a recipient "after" a certain date has passed. |
Until | The condition is used to trigger a bot action until a specific date or time period has passed. For example, you could set a condition that triggers a bot to stop sending reminder emails to a recipient "until" a certain date has passed. |
These operators can be used in combination with other conditions to create more complex trigger conditions that allow bots to perform specific actions based on the data and values in a form or document. It's important to note that some operators may be specific to certain types of conditions. For example, the 'Is empty' and 'Is not empty' operators are commonly used with field value conditions, while the 'After' and 'Until' operators are typically used with date conditions.
Best practices
Conditions are checked at the moment a bot runs by default, as determined by its associated trigger. For example, if a bot is set to run when a recipient begins working on a document, the conditions will be evaluated at that exact time.
In the context of conditions for bots, having at least one required condition is essential to ensure the bot operates correctly and to prevent any unintended actions. Requiring specific fields to be filled with relevant data ensures that a Bot's actions are only triggered when the necessary information is available, providing a more controlled and accurate automation process.
For example, in a scenario where you want to send an email notification after a documents is completed, setting a condition that the email field is not empty is crucial. This ensures that there is a valid recipient's email address available to send the notification to, preventing errors and unnecessary actions.
By defining the minimal required conditions that align with your business process, you can enhance automation effectiveness and ensure that bots execute actions in place (using a single field as a condition is preferable over using All Fields or All Required Fields ). This approach promotes a streamlined and error-free workflow, improving overall process efficiency and user experience.

