Articles in this section

Managing Integration Updates in FlowMattic

Updated:

FlowMattic provides five different methods to keep your integrations up to date. Whether you manage a single site or 50+ sites, there is an update method tailored to your workflow.


Overview of Update Methods

Method Best For Requires
Individual Update Updating a specific integration Dashboard access
Update All Button Updating everything at once from the dashboard Dashboard access
WP CLI Commands Server scripts, MainWP, bulk site management SSH or terminal access
Auto-Update (Cron) Hands-free daily updates Settings toggle
Helper Function (Developer) Custom plugins, workflows, or automation scripts PHP code access

All methods require an active FlowMattic license on the site.


1. Individual Update

Update a single integration from the FlowMattic Integrations page.

How to Use

  1. Go to FlowMattic > Integrations in your WordPress dashboard.
  2. If an integration has an update available, the Update button appears on its card.
  3. Click the Update button on the integration you want to update.
  4. A loading indicator will appear while the update is being installed.
  5. Once complete, the card will be removed from the updates list confirming the update was successful.

What Happens Behind the Scenes

  • FlowMattic downloads the latest version of the integration from the update server.
  • The integration ZIP file is extracted to /wp-content/flowmattic-apps/.
  • The old version is replaced with the new version.
  • The temporary ZIP file is automatically cleaned up.

Notes

  • Only integrations with available updates will show the Update button.
  • If the license is not active, the Update button will be disabled.
  • The page filters allow you to view only integrations with updates available using the Update Available filter.

2. Update All Button

Update every integration that has an available update with a single click.

How to Use

  1. Go to FlowMattic > Integrations in your WordPress dashboard.
  2. If any integrations have updates available, the Update All button appears in the top-right corner of the filter navigation bar (highlighted in yellow/warning color).
  3. Click the Update All button.
  4. A confirmation dialog will ask: “This will update all installed integrations to the latest version.”
  5. Click Update All to confirm.
  6. A loading indicator will appear — this may take a few moments depending on how many integrations need updating.
  7. Once complete, a summary will show the number of integrations updated, failed, and already up to date.
  8. The page will automatically reload to reflect the changes.

Update Summary

After the update completes, you will see a breakdown:

  • Updated — Number of integrations successfully updated.
  • Failed — Number of integrations that failed to update (e.g., download issues).
  • Already up to date — Number of integrations that were skipped because they are already on the latest version.

Notes

  • The Update All button only appears when there is at least one integration with an update available AND the license is active.
  • The process has a 5-minute timeout to accommodate sites with many integrations.
  • If some integrations fail, the successful ones will still be applied.

3. WP CLI Commands

Manage integration updates from the command line. This is ideal for agencies using tools like MainWP, server management scripts, or automated deployment pipelines.

Prerequisites

  • WP-CLI must be installed on the server.
  • SSH or terminal access to the WordPress installation.
  • FlowMattic must be activated with a valid license.

Available Commands

List Integrations

View all installed integrations with their version and update status.

wp flowmattic integrations list

Example Output:

+---------------------+---------------------+-----------+-----------+------------------+
| slug                | name                | installed | available | status           |
+---------------------+---------------------+-----------+-----------+------------------+
| airtable            | Airtable            | 1.2.0     | 1.3.0     | Update available |
| slack               | Slack               | 2.1.0     | 2.1.0     | Up to date       |
| google-spreadsheets | Google Spreadsheets | 3.0.0     | 3.1.0     | Update available |
| mailchimp           | Mailchimp           | 1.5.0     | 1.5.0     | Up to date       |
+---------------------+---------------------+-----------+-----------+------------------+

Options:

Option Description
--updates-only Only show integrations that have updates available
--format=<format> Output format: table (default), json, or csv

Examples:

# Show only integrations with updates
wp flowmattic integrations list --updates-only

# Output as JSON (useful for scripts)
wp flowmattic integrations list --format=json

# Output as CSV
wp flowmattic integrations list --format=csv

Update Integrations

Update specific integrations or all integrations at once.

# Update all integrations
wp flowmattic integrations update --all

# Update specific integrations by slug
wp flowmattic integrations update airtable slack google-spreadsheets

Example Output:

Updating all integrations...
Success: airtable updated from v1.2.0 to v1.3.0.
Skipped slack: Already up to date.
Success: google-spreadsheets updated from v3.0.0 to v3.1.0.
Skipped mailchimp: Already up to date.

Summary: 2 updated, 0 failed, 2 skipped.
Success: Done.

Options:

Option Description
<slug>... One or more integration slugs to update
--all Update all integrations that have updates available

Using with MainWP

If you use MainWP to manage multiple WordPress sites, you can run these commands across all your child sites:

  1. Go to MainWP > Sites and select the sites you want to update.
  2. Use the WP CLI feature to run the commands remotely.
  3. Run wp flowmattic integrations update --all on each site.

Using in Shell Scripts

You can create a simple shell script to update integrations across multiple sites:

#!/bin/bash
# Update FlowMattic integrations on multiple sites

SITES=(
    "/var/www/site1/public_html"
    "/var/www/site2/public_html"
    "/var/www/site3/public_html"
)

for site in "${SITES[@]}"; do
    echo "Updating integrations on: $site"
    wp --path="$site" flowmattic integrations update --all
    echo "---"
done

Using in Cron Jobs (Server Level)

Add a server-level cron job to update integrations automatically:

# Run daily at 3:00 AM
0 3 * * * cd /var/www/yoursite/public_html && wp flowmattic integrations update --all >> /var/log/flowmattic-updates.log 2>&1

4. Auto-Update (Cron)

Enable automatic daily updates so your integrations stay current without any manual intervention.

How to Enable

  1. Go to FlowMattic > Settings in your WordPress dashboard.
  2. Scroll down to the General Settings section.
  3. Find the Auto-Update Integrations setting.
  4. Change the dropdown from Disabled to Enabled.
  5. Click Save Settings.

FlowMattic - auto-update integrations settings.png

How It Works

  • When enabled, FlowMattic registers a daily WordPress cron event.
  • Once per day, the cron checks all installed integrations for available updates.
  • Any integration with a newer version available is automatically downloaded and installed.
  • The cron only runs if the site has an active FlowMattic license.

How to Disable

  1. Go to FlowMattic > Settings.
  2. Change Auto-Update Integrations back to Disabled.
  3. Click Save Settings.
  4. The daily cron event is immediately removed.

Notes

  • Default: Disabled. You must explicitly enable this feature.
  • The cron runs via WordPress’s built-in cron system (wp-cron). If your site has WP-Cron disabled (using DISABLE_WP_CRON), you will need a server-level cron to trigger wp-cron.php.
  • Updates happen silently in the background — no dashboard notifications are sent.
  • Failed updates for individual integrations do not affect other integrations in the same batch.

5. Helper Function for Developers

FlowMattic provides PHP helper functions that developers can use in custom plugins, custom code snippets, or FlowMattic workflows.

flowmattic_update_all_integrations()

Updates all installed integrations (or specific ones) that have new versions available.

Function Signature:

flowmattic_update_all_integrations( $slugs = '' )

Parameters:

Parameter Type Default Description
$slugs string|array '' (empty) Specific slug(s) to update. Leave empty to update all.

Return Value:

Returns an associative array with the following structure:

array(
    'status'  => 'success',          // 'success' or 'error'
    'message' => '2 updated, ...',   // Human-readable summary
    'updated' => 2,                  // Count of successfully updated
    'failed'  => 0,                  // Count of failed updates
    'skipped' => 3,                  // Count of skipped (up to date)
    'details' => array(              // Per-integration breakdown
        array(
            'slug'   => 'airtable',
            'status' => 'updated',   // 'updated', 'skipped', or 'failed'
            'from'   => '1.2.0',     // Previous version
            'to'     => '1.3.0',     // New version
        ),
        array(
            'slug'   => 'slack',
            'status' => 'skipped',
            'reason' => 'Already up to date.',
        ),
    ),
)

Usage Examples:

// Update all integrations.
$result = flowmattic_update_all_integrations();

if ( 'success' === $result['status'] ) {
    echo $result['updated'] . ' integrations updated.';
}

// Update specific integrations only.
$result = flowmattic_update_all_integrations( array( 'airtable', 'slack' ) );

// Update a single integration.
$result = flowmattic_update_all_integrations( 'google-spreadsheets' );

flowmattic_update_integration()

Updates a single integration by its slug. This is the low-level function used internally by all other update methods.

Function Signature:

flowmattic_update_integration( $slug, $app_url )

Parameters:

Parameter Type Description
$slug string The integration slug (e.g., airtable)
$app_url string The remote URL containing the integration metadata

Return Value:

array(
    'status'  => 'success',  // 'success' or 'error'
    'message' => '...',      // Error message if failed
)

Using in a FlowMattic Workflow

You can call the update function from a FlowMattic PHP Functions action step:

// In a PHP Functions action step -
function name - flowmattic_update_all_integrations
Function Parameters - slug = <integration_slug>

Action Hook for Automation

Developers can trigger integration updates via a WordPress action hook:

// In your custom plugin or functions.php.
add_action( 'my_custom_update_trigger', function() {
    if ( function_exists( 'flowmattic_update_all_integrations' ) ) {
        $result = flowmattic_update_all_integrations();
        // Log or process the result as needed.
    }
} );

Troubleshooting

Updates Are Not Appearing

  • Verify your FlowMattic license is active under FlowMattic > License.
  • Clear the integration cache by visiting the Integrations page — the cache refreshes automatically.
  • Check that your server can reach the FlowMattic update server (no firewall blocking outgoing requests).

Update Fails for a Specific Integration

  • Check that the /wp-content/flowmattic-apps/ directory is writable by the web server.
  • Ensure sufficient disk space is available on the server.
  • Try updating the individual integration using the single Update button on its card.
  • If the issue persists, delete the integration and reinstall it fresh from the Integrations page.

Auto-Update Is Not Running

  • WordPress cron (wp-cron) must be functional. If DISABLE_WP_CRON is set to true in wp-config.php, you need a server-level cron job hitting wp-cron.php.
  • Verify the setting is set to Enabled under FlowMattic > Settings > Auto-Update Integrations.
  • Low-traffic sites may experience delayed cron execution since WordPress cron runs on page visits. Consider setting up a real server cron.

WP CLI Command Not Found

  • Make sure FlowMattic is activated on the site.
  • Run wp plugin list to confirm FlowMattic shows as active.
  • The CLI commands are only registered when WP_CLI is defined, which happens automatically in WP-CLI environments.

Frequently Asked Questions

Do updates affect my workflows or connections?
No. Integration updates only replace the integration files. Your workflows, connections, settings, and task history remain untouched.

Can I roll back an integration update?
There is no built-in rollback feature. If an update causes issues, you can delete the integration and reinstall the previous version by contacting support.

How often does auto-update check for new versions?
Once per day, using WordPress’s daily cron schedule.

Will the Update All button update core integrations too?
No. The Update All button and bulk update functions only update integrations installed in the /wp-content/flowmattic-apps/ directory. Core integrations bundled with the plugin are updated with plugin updates.

Can I use WP CLI commands with Multisite?
Yes. Use the --url flag to target a specific site in a WordPress Multisite network:

wp --url=site1.example.com flowmattic integrations update --all
Was this article useful?
Like
Dislike
Help us improve this page
Please provide feedback or comments
Access denied
Access denied