Triggers

Triggers are components that start or initiate a journey when a specific event occurs within an app.

Consider the journey discussed in the previous section: Whenever customer feedback is entered into Google Sheets, a support ticket in Freshdesk is automatically created.

Here, the Trigger Event is a New row added to a spreadsheet in Google Sheets and the Trigger is Google Sheets app.

Whenever new entries are added to the customer feedback spreadsheet, a ticket is created in Freshdesk with all the necessary details from Google Sheets for each new entry. Quickwork’s Google Sheets trigger will keep checking for new row additions, and as soon as an event occurs, the trigger will fire off the journey and create a ticket.

Imagine another scenario using X (Twitter). Whenever a user tweets with a specific hashtag, a trigger set up using Twitter app activates a journey that automatically posts a thank you message from a connected account. This setup is efficient for engaging participants during promotional campaigns or live events.

Types of triggers

Quickwork supports various types of triggers, including Real-time (Webhooks, APIs), Scheduler, Polling, and Manual interrupts. Each type is tailored to suit different operational and business needs and enables you to build various workflows across industry verticals.

1. Real-time triggers

In real-time trigger events, your journey can be triggered in real-time as soon as an event occurs in the source application. This trigger event is suitable for conversational, IoT, financial, and other use cases that require instantaneous response. For example, Facebook Messenger, Shopify.

Use case: An online store uses a real-time trigger in Quickwork to instantly notify the inventory team on Slack whenever a product is purchased in their Shopify store, ensuring immediate restocking and avoiding stockouts.

2. Scheduler triggers

Quickwork’s built-in scheduler, Scheduler by Quickwork, or third-party scheduling apps, triggers journeys at scheduled intervals, automating tasks like sending weekly reports or monthly updates without manual intervention. You can schedule any interval ranging between a few seconds up to several years.

Use case: A marketing team schedules a trigger via Scheduler by Quickwork to send promotional emails through Mailchimp to subscribers every Monday at 9 AM, ensuring consistent engagement and updates.

3. Polling triggers

Polling triggers are useful for scenarios where the app does not support real-time data fetching or it is not necessary. These triggers periodically check for specified events within an app at set intervals.

In Quickwork, polling triggers check for updates every minute. Each poll can collect either a single data entry or a batch of data, depending on the event and the amount of data accumulated since the last check. This method is particularly useful for managing large volumes of data that do not require instant reactions but still need regular updates. For example, polling triggers can be used to check Gmail for new emails every minute and trigger a journey if any changes are detected.

If a journey's execution is interrupted, the polling trigger stops collecting data. However, when the journey is restarted, the trigger resumes from the point it stopped, ensuring that all new data from that point onwards is fetched and processed. This feature prevents data loss and ensures continuity in workflows that rely on regular data updates.

Use case: A financial firm uses polling triggers in Quickwork to check their database for new transactions, ensuring that all financial activities in their SQL database are logged and monitored regularly.

4. Manual triggers

Manual triggers allow you to trigger a journey instantaneously by initiating a manual call to action (CTA), such as pressing a button. This type of trigger is suitable for scenarios where immediate intervention is required from the user or automated triggers are not feasible.

Use case: Sales teams can use manual triggers to send a follow-up email to a prospect immediately after a call. Or a customer service agent uses a manual trigger in Quickwork to escalate a critical support ticket to a supervisor in Zendesk with the press of a button, ensuring immediate attention and resolution.

To add a trigger

  1. Login to the Quickwork platform.
  2. Select the folder where you want to create your journey, such as the Demo folder.
  3. Click the + Create Journey button to access the journey configuration manager.
  4. In the Event section, from the Apps dropdown, select Google Sheets, and then choose New row from the Trigger Event list.
  1. Then, link your Google Sheets account by either selecting an existing connection or creating a new connection by following the prompts to allow access.

In some cases, Quickwork offers multiple options for the same trigger type, as illustrated below with an example from Salesforce.

Choosing the appropriate trigger based on the use case and complexity

Real-time triggers, such as HTTP event-driven triggers, execute actions immediately after a change occurs. This approach is highly efficient and ensures timely operations. However, real-time triggers often require additional setup in the client's underlying system. For instance, in Salesforce, modifications and additions of APEX classes might be necessary.

  • Real-time triggers process events individually, which may not support batch changes. Additionally, since most real-time triggers are powered by webhooks, there is a risk of request loss if the webhook does not receive the request. This could be due to network issues such as firewall rules, network blocking systems, or connectivity problems. While many third-party systems, like Salesforce, retry undelivered requests, some may simply report an error without retrying.
  • Polling triggers check for changes at regular intervals, such as every minute. While this method introduces a delay compared to real-time triggers, it ensures continuity and reliability. Polling triggers maintain state and deduplication entries, allowing the system to resume from the last polled point after downtime, ensuring no events are missed. The deduplication system ensures no single event is processed twice by following idempotence rules.

Comparisons & use cases

Both real-time and polling triggers perform the same operation but with different efficiencies and requirements. Real-time triggers are superior for immediate execution but require more complex setups and are susceptible to network issues. Polling triggers, though slightly delayed, offer robustness and reliability by maintaining state and ensuring no event is lost or duplicated.

Choosing the right trigger

Selecting the appropriate trigger type depends on your use case and system requirements. Use real-time triggers when immediate response and efficiency are critical, and you can manage the additional setup and potential network issues. Opt for polling triggers when reliability, ease of setup, and state maintenance are priorities, even if it means a slight delay in processing.

✏️ Tips and recommendations

  • Next to the selected trigger event, the label REALTIME, POLLING clearly indicates the type of trigger.
  • Some actions and triggers are marked Deprecated, which mean they are no longer recommended for use and may have limited support. They might eventually be removed entirely from future updates or versions of the platform.

📚 Additional resources

Journeys: Automation across apps
Configuring actions
Establishing connections
Building your first journey