1. Home
  2. Knowledge Base
  3. Developer Documentation
  4. Thrive Automator Developer Guide (Legacy)

Thrive Automator Developer Guide (Legacy)

Thrive Automator is being retired.
As we continue to grow and expand our product suite at Thrive Themes, we’ve made the strategic decision to retire Thrive Automator.

We officially recommend transitioning to our sister brand, Uncanny Automator, for all your automation needs. It offers over 195+ integrations, 1000+ triggers and actions, and a more robust developer API.

This guide provides technical documentation for developers who wish to extend Thrive Automator’s capabilities by creating custom triggers, actions, and data objects.


Getting Started

To begin extending Thrive Automator, you can use the integration examples available on GitHub.

  1. Download the sample plugin from here.
  2. Install it as a regular WordPress plugin.
  3. System Requirements: PHP 7.0+ and the latest version of Thrive Automator.

1. Apps

Apps represent the applications or categories to which triggers and actions belong. They are primarily used for grouping items in the UI.

Creating an App

To create an app, you must extend the ThriveAutomatorItemsApp class and implement the following methods:

  • get_id(): Unique identifier (prefix recommended).
  • get_name(): Display name of the app.
  • get_logo(): URL to the app’s logo.

2. Triggers

Triggers are the starting points of an automation.

Start Triggers

To create a trigger, extend ThriveAutomatorItemsTrigger:

  • get_id(): Unique identifier.
  • get_wp_hook(): The WordPress hook that fires the trigger.
  • get_provided_data_objects(): Array of Data Object IDs this trigger provides to subsequent actions.

Trigger Fields

Fields used to configure the trigger in the admin UI. Extend ThriveAutomatorItemsTrigger_Field:

  • get_type(): Input type (Text, Select, Checkbox, etc.).
  • get_placeholder(): UI placeholder text.

3. Actions

Actions are the tasks performed after a trigger fires.

Creating an Action

Extend ThriveAutomatorItemsAction:

  • get_id(): Unique identifier.
  • get_name(): Action name.
  • get_required_data_objects(): Data required for this action to function (must match trigger output).
  • do_action(): The actual logic executed when the automation runs.

Action Fields

Configuration fields for actions. Extend ThriveAutomatorItemsAction_Field.


4. Data Objects & Fields

Data Objects encapsulate the data passed between triggers and actions.

Data Objects

Extend ThriveAutomatorItemsData_Object:

  • get_fields(): Array of Data_Field IDs associated with this object.
  • create_object($param): Logic to populate the object from raw trigger data.

Data Fields

The individual data points (e.g., User Email, Post Title). Extend ThriveAutomatorItemsData_Field.


5. Filters

Filters allow users to restrict automations based on specific conditions.
Extend ThriveAutomatorItemsFilter:

  • get_operators(): Comparison operators (Equal to, Contains, etc.).
  • filter($actual_value, $desired_value, $operator): The logic that returns true/false.

6. Real-World Example: Third-Party Autoresponder

You can integrate any third-party service (like CleverReach) by creating a custom App and Action.

Implementation Steps:

  1. Register the App: Create a “CleverReach” App.
  2. Define Data Fields: Add fields for API Key and List ID.
  3. Create the Action: Implement do_action() to send data via the service’s API.

View the complete source code for this example on GitHub: 3rd-party-autoresponder example.


Technical Reference: Data Mapping

Each trigger captures specific data types. Ensure your actions “require” the same Data Object IDs.

Trigger CategoryData CapturedParameters
WordPressUser DataID, Email, Role, Username
Thrive ArchitectForm DataField values, Page URL
Thrive ApprenticeLesson/Course DataUser ID, Course ID, Progress

Was this article helpful?

Related Articles

>