Changelogs
Changelog
-
New Action:
- AffiliateWP – Set an affiliate’s commission rate #3785
New Conditions:
- AffiliateWP – An affiliate is/is not a specific status #3912
- AffiliateWP – An affiliate registered between specific dates #3914
- AffiliateWP – An affiliate’s commission rate meets a specific condition #3911
- AffiliateWP – An affiliate’s conversion rate meets a specific condition #3910
- AffiliateWP – An affiliate’s days since registration meet a specific condition #3915
- AffiliateWP – An affiliate’s most recent referral amount meets a specific condition #3916
- AffiliateWP – An affiliate’s most recent referral is/is not a specific status #3917
- AffiliateWP – An affiliate’s most recent referral is/is not a specific type #3918
- AffiliateWP – An affiliate’s paid/unpaid earnings meet a specific condition #3907
- AffiliateWP – An affiliate’s rate type is/is not a specific type #3913
- AffiliateWP – An affiliate’s referral count meets a specific condition #3908
- AffiliateWP – An affiliate’s visit count meets a specific condition #3909
New Loop Filters:
- AffiliateWP – A referral is/is not a specific status #3905
- AffiliateWP – A referral is/is not a specific type #3906
- AffiliateWP – An affiliate has a referral whose amount meets a specific condition #3904
- AffiliateWP – An affiliate is/is not a specific status #3900
- AffiliateWP – An affiliate registered between specific dates #3902
- AffiliateWP – An affiliate’s commission rate meets a specific condition #3899
- AffiliateWP – An affiliate’s conversion rate meets a specific condition #3898
- AffiliateWP – An affiliate’s days since registration meet a specific condition #3903
- AffiliateWP – An affiliate’s paid/unpaid earnings meet a specific condition #3895
- AffiliateWP – An affiliate’s rate type is/is not a specific type #3901
- AffiliateWP – An affiliate’s referral count meets a specific condition #3896
- AffiliateWP – An affiliate’s visit count meets a specific condition #3897
- MemberPress – The user is/is not an active member of a membership #3744
Updated:
- BuddyBoss/BuddyPress – Now you can add a touch of pizzazz with support for Activity Topics and Post Titles in the activity stream. #3718
- Delayed actions – Failed actions get an auto-retry with a spring clean of orphan hashes for good measure. #3793
- FluentCRM – Triggers now embrace the “Any” option because who doesn’t love options? #3746
- Recipe logs – Purging logs in chunks now respects memory limits, and dropdowns get cached for speed. #3794
- Woo – “Has/Has not” selection is now crystal clear for product purchases in recent days. #3774
Fixed:
- Action conditions – Double quotes now encode without a hitch. #3886
- Delayed actions – Execution failures now opt for graceful exits, not dramatic collapses. #3798
- Date and time – Fixed day confusion on non-UTC and Sunday-first sites. #3936
- Loops – No more PHP notices on empty batches or bungled cancellations. #3799
- MemberPress – Membership expiration triggers now work even when expired manually. #3921
- MemberPress – Payment failure triggers now fire up even with manual payment status changes. #3678
- MemberPress – Juggling undefined array keys? Not anymore! #3868
- RafflePress – Giveaway trigger now validates specific entry actions properly, no more funny business. #3780
- Recipe logs – Time units in purges now get the attention they deserve. #3797
- SureCart – Argument counts now behave, whether inline or async with webhooks. #3778
- Thrive Apprentice – Correct recipe log reporting for users with product access. #3705
- Woo – HPOS compatibility refined for purchase conditions and order ID filters. #3766
- Security improvements – Because even code needs a bodyguard. #3863
- Webhook trigger – We sped up the slowpoke query in recipe lookups. #3871
Under the hood:
- Integration loading is now demand-driven, so integrations only show up when summoned. #3803
- Integrations – We’ve pre-packed file maps to save you from runtime directory hide-and-seek. #3796
- Loops – Streamlined database with checkpoint intervals, because nobody likes chaos in their queries. #3795
- MailerLite – We’ve dressed it up in a snazzy new framework. #3758
-
Fixed:
- Fixed a PHP error on PHP 7.4 sites caused by throw expressions #6814
-
New Plugin Integrations:
- All in One SEO #6648
- Cloudflare #6694
- Easy WP SMTP #6696
- LiteSpeed Cache #6699
- Rank Math SEO #6692
- SG Optimizer #6700
- SG Security #6695
- Sugar Calendar #6690
- W3 Total Cache #6697
- WP Rocket #6693
- WP Super Cache #6698
- Yoast SEO #6691
New Triggers:
- All in One SEO – A post’s SEO data is updated #6653
- All in One SEO – A post’s SEO score is greater than, less than, or equal to a specific value #6654
- Easy WP SMTP – An email fails to send #6733
- Easy WP SMTP – An email is blocked from sending #6734
- Easy WP SMTP – An email is sent successfully #6732
- Rank Math SEO – A post’s SEO data is updated #6713
- Rank Math SEO – A post’s SEO score is greater than, less than, or equal to a value #6714
- Sugar Calendar – A ticket for an event is purchased #6702
- Sugar Calendar – An event is created in a calendar #6701
- Yoast SEO – A post’s SEO data is updated #6706
- Yoast SEO – A post’s SEO score is greater than, less than, or equal to a value #6707
New Actions:
- All in One SEO – Regenerate AIOSEO XML sitemap #6656
- All in One SEO – Reset a post’s SEO description #6649
- All in One SEO – Reset a post’s SEO title #6650
- All in One SEO – Set AIOSEO XML sitemap to a status #6659
- All in One SEO – Set AIOSEO robots.txt to a status #6658
- All in One SEO – Set a post’s SEO description to a specific value #6651
- All in One SEO – Set a post’s SEO title to a specific value #6652
- All in One SEO – Set a post’s focus keyphrase to a specific value #6657
- Cloudflare – Purge Cloudflare cache for a specific URL #6725
- Cloudflare – Purge Cloudflare cache for a specific post #6724
- Cloudflare – Purge all Cloudflare cache #6723
- LiteSpeed Cache – Purge LiteSpeed cache for a specific URL #6743
- LiteSpeed Cache – Purge LiteSpeed cache for a specific post #6742
- LiteSpeed Cache – Purge all LiteSpeed caches #6741
- Rank Math SEO – Delete a post’s SEO description #6719
- Rank Math SEO – Delete a post’s SEO title #6718
- Rank Math SEO – Delete a post’s focus keyword #6776
- Rank Math SEO – Set a post’s SEO description to a specific value #6716
- Rank Math SEO – Set a post’s SEO title to a specific value #6715
- Rank Math SEO – Set a post’s focus keyword to a specific value #6717
- SG Optimizer – Purge SG Optimizer cache for a specific URL #6745
- SG Optimizer – Purge all SG Optimizer caches #6744
- SG Security – Block a user #6728
- SG Security – Block an IP address #6726
- SG Security – Force all users to log out #6730
- SG Security – Force all users to reset their passwords #6731
- SG Security – Unblock a user #6729
- SG Security – Unblock an IP address #6727
- Stripe – Create and send an invoice to a customer #6603
- Sugar Calendar – Create an event with a title #6703
- Sugar Calendar – Delete an event #6704
- Sugar Calendar – Register an attendee to an event #6705
- Sugar Calendar – Submit an RSVP for an event #6778
- W3 Total Cache – Purge W3 Total Cache for a specific URL #6737
- W3 Total Cache – Purge W3 Total Cache for a specific post #6736
- W3 Total Cache – Purge all W3 Total Cache caches #6735
- WP Rocket – Purge WP Rocket cache for a specific URL #6722
- WP Rocket – Purge WP Rocket cache for a specific post #6721
- WP Rocket – Purge all WP Rocket caches #6720
- WP Super Cache – Purge WP Super Cache for a specific URL #6740
- WP Super Cache – Purge WP Super Cache for a specific post #6739
- WP Super Cache – Purge all WP Super Cache caches #6738
- Yoast SEO – Delete a post’s SEO description #6712
- Yoast SEO – Delete a post’s SEO title #6711
- Yoast SEO – Delete a post’s focus keyphrase #6777
- Yoast SEO – Set a post’s SEO description to a specific value #6709
- Yoast SEO – Set a post’s SEO title to a specific value #6708
- Yoast SEO – Set a post’s focus keyphrase to a specific value #6710
New Token:
- WordPress Core – Added taxonomy tokens to all post publication triggers #6631
Updated:
- Constant Contact – Empty fields will no longer wipe out perfectly good contact data. #6747
- GiveWP – Tokens are now available for custom fields. #6499
- WordPress – A post in a taxonomy is created – Simplified trigger logic. #6604
Fixed:
- FluentCRM – Corrected a typo in
add_user_as_contact()wheresubscribewas passed instead ofsubscribed, preventing automations from firing. #6803 - Settings – Background actions – Prevented disabled background actions from being automatically re-enabled. #6784
- StudioCart – A user completes an order for a product – Tokens now appear properly after checkout. #6780
- The Event Calendar – A user registers for an event – Restored compatibility with the latest version. #6608
- Trigger tokens – Now parse properly inside actions when Background processing is enabled. #6801
Under the hood:
- Legacy date-based attachment upload directories are removed on update. #6791
- Uncanny Agent Beta Program – Performance and UX improvements. #6795 #6797 #6796 #6792 #6794 #6793
- Blocked SSRF on featured image URL in the Create a post action and added a log notice when blocked. #6789
- Blocked SSRF via private/reserved IP addresses on email attachment URLs (CVE-2026-2269). #6788
- Email attachments are validated against an allowed file extension list and stored with unpredictable filenames. #6785
- Upload directory is hardened with
.htaccessandindex.phpto prevent PHP execution and directory listing. #6790
-
New Plugin Integrations:
- All in one SEO #3713
- Rank Math SEO #3730
- Sugar Calendar #3728
- Yoast SEO #3729
New Triggers:
- Sugar Calendar – An RSVP is submitted for an event #3732
- Sugar Calendar – An event is updated in a calendar #3731
New Action:
- Sugar Calendar – Update an event #3733
New Conditions:
- All in one SEO – A post’s SEO score is greater than, less than, or equal to a value #3714
- Rank Math SEO – A post’s SEO score is greater than, less than, or equal to a value #3737
- Yoast SEO – A post’s SEO score is greater than, less than, or equal to a value #3734
New Loop Filters:
- All in one SEO – A post’s SEO field is/is not empty #3716
- All in one SEO – A post’s SEO score meets a condition #3715
- Rank Math SEO – A post’s SEO field is/is not empty #3739
- Rank Math SEO – A post’s SEO score meets a condition #3738
- Yoast SEO – A post’s SEO field is/is not empty #3736
- Yoast SEO – A post’s SEO score meets a condition #3735
Fixed:
- Date time – Date parsing now correctly handles localized month names, so non-English sites can tell what month it is. #3675
- Loops – Added a safety iteration limit during batched deletions to prevent memory meltdowns when processing large datasets. Big loops, calmer servers. #3693
- StudioCart – A guest completes an order for a product – Fixed an issue where tokens weren’t parsing properly for guest checkouts. Guests now get the full token treatment. #3768
- Woo – Add a product to the cart – Products now reliably make it into the cart for guest users. No more disappearing acts. #3709
- WordPress – A specific meta key of a specific type of post is updated to a specific value – Corrected an incorrect meta value token inside loops so it finally reports the right data. Specificity restored. #3671
-
Update:
- Instagram – Media ID is not available – If Instagram media registration fails, we’ll retry up to 10 times before giving up. #6614
Fixed:
- Automator Licensing – Squashed a rare PHP exception showing up on some sites. #6633
- Bitly – Stopped bugging the API with bad credentials—no more pointless calls. #6639
- Formidable Forms – Simplified helper calls for cleaner, happier code #6591
Under the hood:
- App Integration framework webhook handling and option data helpers #6602
-
Fixed:
- Formidable Forms – Simplified helper calls for cleaner, happier code #3690
- User Selector – “Log the new user in” was being shy—now it logs them in as promised. #3666
- Woo Subscriptions – Extend subscription days now updates the “date_modified” field like it should. #3703
- Token Loop – Uploaded CSV files are now looped as expected—back on track with your data. #3700
-
Update:
- Uncanny Agent – Now supports universal tokens and calculations—smarter than ever. #6610
Fixed:
- Core API – Actions created via MCP no longer missing meta data. #6598
- Events Manager – Attendee tokens are back and reporting for all events. #6579
-
Fixed:
- Advanced Coupons – Store credit tokens were being shy—now they parse like pros. #3686
- BuddyPress – Group post authors are no longer invisible—welcome back! #3698
- Formidable – Simplified helper calls for cleaner, happier code. #3690
- Woo Memberships – Trigger now fires for the right user—admins can relax. #3668
- Gravity Forms – User registration triggers found their missing user context. #3696
-
Fixed:
- Emails – Apostrophes in site names are now displayed properly in the “From” field #6570
- FluentCRM – Tokens now show up properly—no more hiding behind
class_existschecks #6591 - Formidable Forms – Same token issue as FluentCRM, same fix—now playing nicely #6591
- JS error – Squashed a
TypeErrorcaused by missingrecipe_type. No more JS drama #6584 - Uncanny Agent – Now populates TinyMCE fields with proper HTML formatting #6578
-
New Plugin Integration:
- WP Event Manager #5408
New Trigger:
- WP Event Manager – An attendee is registered for an event #5409
New Actions:
- FluentCRM – Add or Update a contact #6434
- Groundhogg – Add a tag to a contact #6140
- Groundhogg – Remove a tag from a contact #6140
- WP Event Manager – Register an attendee for an event #5410
New Token:
- WP Job Manager – Job URL #6010
Breaking:
- Gravity Forms – Major refactor, trigger improvement and additional token support #5908 IMPORTANT: Update both Uncanny Automator and Uncanny Automator Pro to > v7.0 to avoid disruption to Gravity Forms recipes.
Updated:
- Automator Core – Replaced hardcoded manage_options checks with shiny new filterable functions—because flexibility is the spice of admin life #6374
- Bluesky – Now supports multiple line breaks when posting. Your poems and rants are safe #6525
- DeepSeek – Retired gracefully and removed from the codebase
- FluentCRM – Add/Update a contact – A warm welcome to the new, more powerful and flexible action (re-add the action to your recipe to use it!) #6436
- Google Sheets – Removed deprecated actions #6245
- Telegram – Send a message – Now with WYSIWYG-powered HTML message support. Fancy formatting? Yes, please #6286
- X – Multiple line breaks are now welcome in your posts to X. We get it, sometimes you need the dramatic effect #6525
Fixed:
- ActiveCampaign – Settings page – Now gracefully handles transient data errors #6534
- Amelia – An appointment is booked or A user books an appointment – Trigger now fires when appointments are added by admin from the backend. Admins want automation love too! #6439
- Closure – Redirect URL encoding – Gave encoding a proper lesson in behavior. Your URLs won’t misbehave anymore #6471 #6441
- Custom trigger/action label – Was playing hide-and-seek on some triggers/actions. We’ve taught it to show up properly now #6431
- Custom trigger/action label – Now parses with default values like a responsible piece of code #6433
- Discord – User verification shortcode XSS vulnerability fixed – Kicked the security bug out the door (CVE-2025-15522) #6542
- Paid Memberships Pro – Unexpected membership cancellation trigger firing during Woo Subscriptions renewal – This over-eager trigger is now chilling out #6558
- Recipe Logs – Adjusted status detection so “Completed with errors” only shows when there are actual errors—less false alarm, more accuracy #6540
- Settings – Background actions – Setting was being a bit forgetful, but we’ve helped it to remember to save on all sites now #6528
- Stripe – Create a payment link for a product – Metadata fields were causing “invalid value” errors. We’ve cleaned up the mess #6562
- Stripe – Create a payment link for a product – Custom token/values now play nicely in the product dropdown. Everyone’s invited to the party #6537
- Thrive Apprentice – A user receives access to a product – Now fires even when triggered by a webhook or other userless trigger. It’s now on duty full-time #6519
- Twitter/X – Post a tweet to X/Twitter – The deprecated action has returned from retirement to keep legacy recipes humming along #6427
- Uncanny Codes – Add a number of codes to a batch – Now respects your chosen prefix, suffix, and code length like it should have all along #6520
- Uninstall script – Improved the data removal process #6527
- WordPress Core – A specific role is added to the user – Now only fires when the role is actually added. No more déjà vu triggers #6516
Under the hood:
- Added hooks to enable deleting scheduled actions when logs are deleted for Automator Pro – Because nobody likes leftover cron crumbs #6544
- Model Context Protocol (MCP) for Uncanny Agent (beta) – The robots are learning… but in a totally cool and helpful way #6413
- Automator Core API – Polished and primed for more integrations and dev wizardry #6412
- Core API – Introduced RESTful endpoints for recipe item CRUD—future-proofing your recipe game one endpoint at a time
- Updated deprecated capability filters to align with the new centralized capability system – Everything now reports to the same boss #6374
- Fixed inconsistencies in _recipe object – Got everyone on the same page—literally #6458
- Some App integrations not appearing connected – Connections now show up like they’re supposed to. No more silent treatment #6555
- LearnPress icon updated – Because a good-looking icon is half the battle #6473
- Recipe UI – Fixed listen_fields errors in Action Conditions by ditching legacy field handling in favor of a modern Lit-based component. Out with the old, in with the Lit #5227
- Integration framework upgrades:
- Google Sheets #6245
- Stripe #6168
- Telegram #6269
- WP Job Manager #6532
-
New Trigger:
- Gravity Forms – A form entry is updated to a status #3619
New Actions:
- Formidable Forms – Create an entry for a form #3256
- Gravity Forms – Update an entry of a form #3620
New Token:
- WP Job Manager – Job URL #3516
Breaking:
- Refactor Gravity Forms integration and extend token support #2883. IMPORTANT: Update both Uncanny Automator and Uncanny Automator Pro to > v7.0 to avoid disruption to Gravity Forms recipes.
Updated:
- Amelia – All booking and appointment triggers now fire when an admin adds an appointment from the backend. Admins, your time has come! #3643
- DB Query – Run an SQL query – Added a helper method with a sharper nose for danger—now better at spotting real threats without crying wolf #3660
- Gravity Forms – A specific field in an entry for a form is updated to a specific value – Now triggers more reliably. Mission: accomplished #3648
- Gravity Forms – An entry is deleted from a form – Deprecated due to changes in Gravity Forms that rendered this trigger ineffective. Thanks for the memories #3649
- Paid Memberships Pro – Add the user to a membership level – Action tokens now behave like proper members. No more token tantrums #3639
Fixed:
- Gravity Forms – A user is registered – Now works in edge cases where it previously took a nap #3645
- Loops – Was tripping up when
AUTH_KEYorAUTH_SALTweren’t defined. #3652 - MailerLite – Create or Update Subscriber – Stopped trying to turn names into dates. It was giving everyone an identity crisis #3657
- Plugin Actions – Some custom trigger recipes were on a coffee break and not firing—now they’re back to work #3641
- Presto – Automator Free/Pro version mismatch was causing PHP drama. We’ve brought peace to the versions #3650
- Recipe Logs – Scheduled actions are now properly deleted when their logs are—clean logs, clean conscience #3654
- TEC – An attendee is registered for an Event – “Any Event” tokens were showing up empty. We’ve filled them with purpose #3634
- Tutor LMS – Mark a course complete for the user – Fixed the dual-error personality depending on Strict/Flexible mode. It’s now on its best behavior #3637
- Woo Subscriptions – Subscription product options got a little consistency makeover—now triggers and actions are totally in sync #3628
Under the hood:
- Centralized permission handling by introducing
automator_pro_get_capability()andautomator_pro_get_admin_capability()– Out with the oldmanage_options, in with the sleek, modern capabilities—now 7.0-ready and future-friendly #3663 - General integration – Upgraded to the new framework with manifest support and a small licensing fix—more brains, less bloat #3610
-
Fixed:
- X/Twitter – Post {{a tweet}} to X/Twitter – Fixed an issue where the existing action wasn’t initialized, causing it to disappear and break older recipes; it has now been restored and deprecated for backwards compatibility. #6427
-
Fixed:
- Fixed a rare issue where some recipes could run more than once unexpectedly #6405
-
New Feature:
- Recipe UI – Custom x label field to triggers and actions – Now you can label your triggers/actions like a proud parent. #6259
New Actions:
- ActiveCampaign – Delete a contact that matches an email #3478
- Help Scout – Add a note to a conversation #6362
New Token:
- Woo Bookings – Booking order item ID #6394
Updated:
- Constant Contact – Create or update a contact – Rebuilt this action from the studs up, now with smarter address handling and custom fields that actually listen. #6287
- Woo – Order Summary Token – You can now tweak the width and colours like it’s your personal style guide. #6276
Fixed:
- Event Manager – Fixed a rogue namespace issue for the
Em_Tokensclass—it now knows where it belongs. #6331 - Fluent Forms –
Form IDtoken was showing up empty-handed—we’ve filled its pockets. #6240 - Fluent Forms AI –
default_api_timeout()was feeling shy with its arguments. We gave it what it needed. #6345 - Notion – Add / Update Database – Our date token was having an existential crisis. Now it knows what time it is. #6347
- Notion –
str_containserror when attempting to parse text on array values – It tried to read too much into arrays—now it’s been taught better boundaries. #6261 - Populate from Query – JS Error –
getintegrationCodehas now been defined and won’t ghost us anymore. #6385 - SureCart – A user purchases a product – This trigger was overexcited and firing twice. It’s calmed down now. #6141
- Slack – Cleanse text content of HTML before posting – Slack messages got a digital spa treatment—now scrubbed clean of unwanted HTML. #6257
- WordPress 6.7+ translation warnings – Translation warnings were getting loud. We’ve hushed them up for WordPress 6.7+. #5783
Security Fix:
- Notion – Tightened security for
wp_ajax_automator_notion_list_usersendpoint due to missing nonce check. #6383
Under the hood:
- App Integration OAuth Callback race condition resolved in a rare situation – We caught and calmed down a rare race condition so OAuth doesn’t run off without you. #6379
- Consolidate Copy to clipboard functionality – All clipboard functions are now singing from the same playbook—click, copy, done. #6236
- EDD-Recurring Payment items moved from EDD to their own integration – Recurring Payments packed their bags and moved out—independent and loving it. #6370
- Inconsistent
esc_htmlusage in core – Some parts of the code weren’t playing by the HTML-escaping rules. We’ve brought them in line—safely sanitized and secure. #6334 - Replace Duplicator icon – Gave Duplicator a fresh new icon because even integrations like a glow-up. #6275
- Trigger Engine – More robust trigger engine – Beefed it up so it won’t flinch, even under pressure. #6376
- TinyMCE configuration options at the field level – Editors now get more say in their setup. #6354
- Triggers – Setting default value of
is_login_requiredtofalse– We’re assuming users don’t need to be logged in—unless told otherwise. #6393 - UI doesn’t render —
t.trim is not a functionin a rare situation – Squashed this rare bug before it could confuse more letters with undefined functions. #6358 - Plain permalink REST endpoints are now supported – No pretty permalinks? No problem. REST endpoints now work even when things get… plain. #6398
- Automator now loads even on minimalist, plugin-bare sites—because everyone deserves a little automation magic. #6399
- Integration framework upgrades:
- ActiveCampaign #6241
- Bluesky #6169
- Brevo #6170
- Campaign Monitor #6217
- Claude, Cohere, DeepSeek, Gemini, Grok, Mistral, and Perplexity #6252
- Constant Contact #6267
- EDD – Recurring Payments #6370
- GetResponse #6232
- Google Calendar #6244
- Google Contacts #6233
- Help Scout #6218
- Notion #6165
- Presto #6189
- Sendy #6327
- SureCart #6141
- Threads #6249
- Thrive Leads #5951
- Twilio #6219
- Twitter #6167
Developers:
- Available filters for Woo Order Summary customization – You’re now the fashion designer of Woo Order Summary emails. Pick the colours, tailor the widths, and strut your styles down the inbox runway:
automator_woocommerce_order_summary_max_width— Set max width (default:'640px')automator_woocommerce_order_summary_container_class— Container CSS class (default:'automator-order-summary-container')automator_woocommerce_order_summary_container_id— Container ID (default:'automator-order-summary-{order_id}')automator_woocommerce_order_summary_table_class— Table CSS class (default:'automator-order-summary-table')automator_woocommerce_order_summary_tr_text_color— Table row text color (default:'#636363')automator_woocommerce_order_summary_td_border_color— Table cell border color (default:'#e5e5e5')automator_woocommerce_order_summary_td_text_color— Table cell text color (default:'#636363')automator_order_summary_html_raw— Filter the raw HTML array before output (receives$htmland$order)
-
New Triggers:
- ACF – A sub field in a group field is updated #3555
- ACF – A sub field in a group field is updated to a specific value #3556
- EDD – Recurring Payments – A user’s subscription to a price option of a download expires #3585
- EDD – Recurring Payments – A user’s subscription to a price option of a download is renewed #3588
- EDD – Software License – A user’s license for a download is disabled #3591
- Woo – A coupon is created #3455
- Woo – An order is created #3581
New Action:
- Woo – Create a simple product #3537
New Condition:
- FluentCRM – User belongs/does not belong to a list #3573
Fixed:
- ACF – A user updates a field on a post – Now plays nice with ACF Group fields—because fields within fields deserve love too. #3531
- Fluent Forms – Form ID token returning as empty – We filled in the blank where the Form ID token forgot to show up. It’s back and behaving. #3597
- LearnDash – A user’s access to a course expires – This trigger was partying multiple times for the same user. We’ve enforced a strict one-and-done policy. #3557
- MailerLite – Improved date format verification for custom date fields – No more time-traveling tokens—date formats now check out before checking in. #3386
- SureCart – A guest purchases a product – Got a bit too enthusiastic and fired twice. We’ve reminded it to chill and fire once. #3523
- TEC – An attendee is registered for an event – Default event ID was photobombing other tokens. We’ve told it to wait its turn. #3608
- Woo Subscriptions – Condition: The user has an active subscription to a specific product – Wasn’t listing all products. #3613
- Woo Subscriptions – Condition: The user does not have an active subscription to a specific product – Now with full product coverage. #3613
- Woo Subscriptions – The user has/does not have an active subscription of a product loop filter – The loop forgot to list some subscriptions. We reminded it. #3613
- Woo Subscriptions – Some triggers not firing in non-user context, i.e., during cron – These were ghosting cron jobs. We’ve made sure they now show up on time. #3613
Internal:
- Tweak Pro plugin description – Polished the plugin’s elevator pitch. #3569
Integration framework upgrades:
- Presto #3564
- SureCart #3523
- EDD – Recurring Payments #3585
-
New Tokens:
- EDD – Software Licensing – Price option ID and Price option name #6250
Fixed:
- BuddyBoss – Squashed a rare PHP warning about undefined array keys #6186
- Slack – Slack actions got a little too honest and started showing raw HTML. We’ve taught it some markdown manners #6264
Under the hood:
- App Integration framework – We gave the params a quick spa day to normalize things—now everyone’s playing by the same rules #6220
- Added third-party integrations to the Integrations screen #6253
- Companion code for Loops table in Automator Pro – Packed a little helper kit to support Loops in Pro—teamwork makes the tables work #6074
-
New App Integrations:
New Trigger:
- EDD – A user purchases a price option of a download #6094
New Actions:
- Asana – Add a comment to a task in a specific project #6081
- Asana – Add a tag to a task in a specific project #6082
- Asana – Create a task in a specific project #6080
- Asana – Get details from a task #6091
- Asana – Remove a tag from a task in a specific project #6083
- Asana – Update a specific task in a specific project #6100
- GitHub – Add a comment to an issue or pull request in a repository #6070
- GitHub – Add a label to an issue or pull request in a repository #6072
- GitHub – Add a release tag to a branch #6071
- GitHub – Remove a label from an issue or pull request in a repository #6073
- Slack – Add users to a channel #6188
- Zoom – Create a meeting #6157
- Zoom – Create a recurring meeting #6175
- Zoom Webinars – Create a webinar #6158
New Tokens:
- Date time – Current month (with leading zero) #6204
- EDD – Universal new tokens #6105
- User orders. (loopable type)
- User spent
- User address line 1
- User address line 2
- User city
- User state/province
- User country
- GamiPress – Add new Balance Points Token for related Triggers #6132
- Points
- Points after change
- Google Calendar – Add an event to a Google Calendar – Several new Action tokens #6160
- Event ID
- Event link
- Event start time
- Event end time
- Calendar ID
- Add to Google Calendar URL
- Add to Google Calendar anchor link
- Add to Apple Calendar URL
- Add to Apple Calendar anchor link
- Add to Outlook URL
- Add to Outlook anchor link
- All calendar platform links
- Woo Bookings – Several tokens for all triggers #6159
- Booking product ID
- Booking duration type
- Booking duration
- Booking duration unit
- Booking duration (in minutes)
- Booking timezone
- Booking start date
- Booking start time
- Booking end date
- Booking end time
- Booking product tags
- Booking product categories
- WordPress – Post triggers #6143
- Post published date
- Post published date (GMT)
- Post modified date
- Post modified date (GMT)
Updated:
- Google Calendar – Add an event to a Google Calendar – Added timezone field – Google Calendar events now know what time it is and where they are. #6161
Fixed:
- Discord – Universal tokens were freeloading without a connection. We’ve kicked them out until Discord signs in. #6136
- Recipe UI – Conditions Dialog – Mutliselect text margin fixed – That multiselect margin finally got a makeover. No more squished text awkwardness. #6162
- WordPress – Create a post – UI Issue for Taxonomy and Term fields showing custom token instead of the actual taxonomy and term selected. #6152
Under the hood:
- ARMember icon makeover. #6199
- App integration settings framework – Added a standardized backend with PHP classes and traits, plus slick Lit components for managing settings in style – Because app settings deserve to be handled with class… and traits. #6066
- Integration framework upgrades: Bit.ly, Discord, EDD Software Licensing, Slack, Zoom Meetings, Zoom Webinars #6164, #6174, #6127, #6166, #6178, #6179
- Recipe UI – Improved support for 3rd Party connection settings in recipe UI – Third-party settings now feel right at home in the recipe UI. #6147
- Fixed options memory leak – Options have finally stopped repeating themselves. We told them once is enough. #5789
-
New App Integrations:
- Asana #3465
- GitHub #3456
New Triggers:
- Asana – A comment is added to a task in a specific project #3469
- Asana – A custom field of a task is set to a specific value #3471
- Asana – An approval task is set to a status #3470
- Asana – A task is created in a specific project #3467
- Asana – A task is updated in a specific project #3468
- EDD – A user cancels their subscription to a price option of a download #3486
- EDD – A user receives a Stripe refund for their subscription to a price option of a download #3487
- EDD – A user subscribes to a price option of a download #3485
- GitHub – A pull request is merged in a repository #3460
- GitHub – A pull request is opened in a repository #3461
- GitHub – A push is made to a repository #3462
- GitHub – A release is published in a repository #3463
- GitHub – An event occurs in a repository #3458
- GitHub – An issue is created in a repository #3459
New Actions:
- EDD – Generate a discount code #3483
- WordPress – Update the published date of a post #3520
New Conditions:
- Woo Bookings – A booking contains a specific bookable product #3548
- Woo Bookings – A booking duration meets a criteria #3550
- Woo Bookings – A booking is/is not scheduled between a specific start date and a specific end date #3549
- Woo Bookings – A booking’s order status is/is not a specific status #3551
- Woo Bookings – A booking product contains/does not contain a specific product category #3552
- Woo Bookings – A booking product contains/does not contain a specific product tag #3553
- Woo Bookings – A booking status is/is not a specific status #3547
New Loop Filter:
- Woo Bookings – The user has/has not purchased a specific bookable product #3554
Updated:
- EDD – Now delivering cleaner code and more Customer tokens than a rewards program. #3484
- Incoming Webhooks – Receive data from
{{a webhook}}– Added tokens for headers – Headers were feeling left out, so we gave them a token-worthy upgrade. #3568 - Woo – Polished up those guest trigger sentences so they now sound like they passed grammar school. #3526
- Loops – We put loop data logs on a diet. Loops now travel 85% lighter! #3309
Fixed:
- Gravity Forms – Submit an entry for a form – We stopped the action pile-up—now forms play nice even when racing to submit. #3409
- The Event Calendar – An attendee registers for an event – We found the missing ticket tokens loitering backstage. They’ve now been ushered into the spotlight where they belong. #3441
- WS Forms – A user submits a form with a specific value in a specific field – Those field-value picky triggers have been straightened out—consistency for all! #3510
- Woo – A guest completes, pays for, lands on a thank you page for an order with a specific coupon – Turns out our coupon dropdown was playing hide-and-seek. It’s now back and ready to drop. #3512
- Woo Subscriptions – A user’s subscription to a product is set to a status – Duplicate status tokens removed #3544
- Woo Subscriptions – Cancel the user’s subscription to a variable subscription product – Not appearing on latest release – This action ghosted us in the last release. We’ve re-invited it to the party. #3584
- Woo Subscriptions – The user has an active subscription to a product – The filters had stage fright. We’ve given them a pep talk—they’re filtering like pros now. #3513
- WooCommerce – Generate a Coupon Code – Coupon codes eligible on “All products” now work reliably. #3528
- WordPress – Add a taxonomy term to a post in a post type – Custom taxonomies were being snubbed. They’re now warmly welcomed and properly added. #3514
Under the hood:
- Gave the ARMember icon a refresh. #3578
-
New Trigger:
- Help Scout – A conversation is created in a mailbox #6121
New Token:
- Help Scout – Conversation Number, Folder ID #6090
Added:
- Discord – Updated members dropdown to show only verified users to comply with Discord recommendations #6048
- Discord – Added caching for performance, and improved username handling without discriminators #6048
- Post Loops – Post meta tokens are now available inside post loops (Automator Pro) #6038
- Settings – Ability to enter Automator Pro License key to install and activate Automator Pro #5998
Updated:
- LearnDash – A user has completed X% of a course – Tweaked the sentence to stop pretending it knows algebra. It now just says “percentage.” #6044
- MailChimp – Refactored merge field handling and email validation to improve error handling, input validation, and overall integration robustness. Basically, it’s a lot smarter and a little less dramatic now. #5341
- Woo – The Woo triggers got a grammar upgrade. Fewer sentence fragments, more clarity. #6057
- WordPress – Create a post – Taxonomy and Term fields now support custom field token #6102
Fixed:
- Run code – Call a custom function/method – Function return value – Race condition due to internal process being hooked multiple times. #6055
- Elementor – Triggers not firing when “Any form” is selected – Apparently “Any form” meant “No form.” That’s been corrected—now it means what it says. #6045
- FluentCRM – Support for Custom Values/Tokens for custom fields – Now giving you the custom field love you deserve, with fewer surprises in the dropdown. #6031
- Mailchimp – Add an email to an audience – “Your merge fields were invalid” log error – Merge fields now know their place. Less sass, more class. #5933
- MemberPress – PHP Warning of undefined array key on some sites – Silenced the PHP grumbles about undefined keys. All is calm. #6097
- Notion – Create a Database Item – Fixed issues with database item creation and updates by improving JSON handling, token parsing, error handling, and data sanitization for labels and descriptions #6059
- Outgoing Webhooks – Retrying a failed webhook when two or more webhooks failed subsequently would only resend the last webhook in the logs – Everyone gets a fair retry now, not just the caboose of the action train. #6053
- Thrive Apprentice – A user completes a course not firing – Courses are now completing with celebratory trigger fireworks as expected. #6026
- Thrive Architect – A user registers via a registration form – User data not available in some situations – The data finally decided to show up. #6051
- Thrive Quiz Builder – A quiz is completed – This trigger is now smarter and knows when you’ve really finished your quiz. #6040
- ActiveCampaign – Improved access control for the incoming webhook key regeneration function #6123
Under the hood:
- Help Scout – Code quality updated – We gave the Help Scout codebase a spa day. Cleaner, fresher, and ready for action. #6089
- New WP Action hooks – Laid down some fancy hooks so future integrations can jump in at just the right time. #6063
-
New Triggers:
- Amelia – A user’s booking for an event changes to a specific status #3378
- URL – A URL with a URL parameter set to a specific value is visited #3498
- URL – A user visits a URL with a URL parameter set to a specific value #3497
New Condition:
- Woo – An order is/is not in a specific status #3496
Updated:
- Woo – We gave the Woo trigger sentences a grammar check and a pep talk. Now they speak with confidence and clarity. #3444
Fixed:
- DB Query – Run an SQL query – Queries with semicolons inside text were getting unjustly blocked. We’ve calmed the parser down and added safer output and translations. #3448
- Newsletter – Add the user to a list – Users were getting the cold shoulder and staying “Unconfirmed.” We’ve now made sure they get the warm welcome they deserve. #3438
- Thrive Apprentice – A user progresses in a course – “Any course” finally means any course, not no course. Logic wins. #3453
- Woo – Create an order – Creating the order for the user that triggered the recipe instead of the billing email in some situations – Orders now go to the billing email like they’re supposed to, not just whoever hit the button. #3408
- Woo – Add a note to an order – Private notes were visible to customers too. We reminded them what “private” means. #3442
- Woo Subscriptions – A user’s renewal payment for a subscription product fails – Order ID and Order total tokens showing parent details instead of current order – Tokens now know who they really are and stopped borrowing their parent’s ID. #3479
- Woo Subscriptions – User context updated in various Woo Subscriptions triggers – We’ve cleaned up user context across multiple triggers—less confusion, more precision. #3494, #3445
Under the hood:
- Added version dependency checks to ensure Pro only runs and updates with a compatible version of the free Uncanny Automator plugin – No more awkward breakups between Pro and Free—they now check compatibility before taking things to the next level. #3502
- Pre-activated license option – Not activating existing subsites on multisite installations – The pre-activated license was playing favourites. Now it includes everyone—subsites too! #3481
-
Fixed:
- Woo – A customer makes a payment and their lifetime value is greater than, less than, or equal to a specific amount – Selected values appeared reversed once the trigger was saved #3437
- Woo – Create an order with a product and Create an order with a product with a payment gateway – PHP error when loading fields in the Recipe UI #3434
-
Update:
- Thrive Apprentice –
class_aliasadded to support older Automator Pro versions
- Thrive Apprentice –
-
Fixed:
- Thrive Apprentice – Dependency check updated to avoid PHP errors on some sites #3430
Under the Hood:
- Actions Conditions –
is_dependency_activenormalized across all Action Conditions #3431 - Integrations Loader – Tightened
file_existscheck in case the integration list returns a cached version #3432
-
Fixed:
- Tin Canny – Dependency check causing PHP errors on some sites #3430
-
New Plugin Integration:
- SureForms #5774
New Triggers:
- GamiPress – A user loses greater than, less than, or equal to a number of a specific type of points #5894
- LearnDash – A user has completed X% of a course #5367
- SureForms – A form is submitted #5774
- SureForms – A user submits a form #5772
- Thrive Apprentice – A user receives access to a product #5878
- Thrive Architect – A user registers via a registration form #5893
New Action:
- MailPoet – Add a tag to the subscriber #5511
- MailPoet – Remove a tag from the subscriber #5511
New Token:
- Universal Token – Discord – Discord ID (Snowflake) #6002
Addition:
- Recipe Logs – Track the total recipe run number relative to the user’s run number—now you can see not just how many times a recipe ran, but how many times it ran for a specific user #3890
Updated:
- ActiveCampaign – Support for adding tags via name when using a custom value —because “name dropping” is totally allowed here #5873
- Brevo – Error logs now show if an action failed due to IP whitelisting—so you’re not left guessing if the gatekeeper said “no” #6006
- Discord – Discord usernames are now encrypted—your secrets are safe, even from your favorite Discord bot #5997
- JSON Trigger – WP filter
automator_loopable_should_encode_html_entitiesto optionally allow HTML entities—because sometimes, <3 just wants to be seen as ❤️ #5899 - LearnPress – Improved compatibility with LearnPress v4.2+—they grew up so fast, but we’ve caught up #5544
- Loops & Common tokens – User tokens under “Common” will now return the details of the user that triggered the recipe instead of loop users—know thy trigger-happy users #6012
Fixed:
- ActiveCampaign – Add a contact to ActiveCampaign – No longer overwrites existing values when fields are left blank—now it politely updates without steamrolling your data #5902
- ActiveCampaign – Custom field dropdowns in actions no longer default to the first option—no more “surprise selections” when you’re not looking #5916
- App Integrations – Some AI Integrations returning blank settings pages on some sites—fixed the disappearing act, now everything shows up to work #5907
- LearnPress – Mark a lesson complete for the user – PHP Error on some sites—gave the rogue lesson a hall pass and fixed the crash #5416
- Loop filters in Automator Pro – Custom values were not being saved—their memory wasn’t so good; now they remember like an elephant #5864
- Ninja Forms – Improved handling of Repeatable Fieldset tokens—less token confusion, more repeatable joy #5930
- Notion – Create a database item – Action fails with 400 error when using custom select values in unsupported fields #5911
- Recipe throttling not working on some triggers—our recipe timers are back in sync, Gordon Ramsay would approve #5877
- Thrive Leads – Form dropdown listing some forms twice—now listing forms just once, because once is enough #5903
- WP Job Manager – A user submits a specific type of job – Trigger was also running when jobs were updated—we’ve stopped the trigger from being an overachiever #5974
Under the hood:
- All Recipes – Import button now appears immediately without a fade in animation—no more dramatic entrances, just business #6027
- Closure – JS script converted to VanillaJS—ditched the fancy wrappers, went full vanilla #6030
- Codeception namespace check causing unexpected issues with a third-party plugin—cleaned up the namespace mess like a good houseguest #6029
- Disable public REST API endpoint for recipes—locked the front door to keep recipe secrets safe #6022
- Google Calendar – Migrated to the latest framework—now running smoother than a freshly scheduled meeting #5621
- Thrive Apprentice – Migrated to the latest framework—leveled up behind the scenes without messing with your flow #5927
- Thrive Quiz Builder – Migrated to newer framework and user tokens normalized—because even tokens need a bit of structure in their lives #5635
- Updated icons of built-in integrations—spruced up the icons so they shine like they mean it #5594