Keep track of what's new from Gradient Works

1.98 (2023-06-27)

This release adds a key capability to our Account Coverage reports: you can now Distribute and Retrieve accounts directly from the reports.

This allows you to address the coverage gaps surfaced in the reports. For example, you can distribute high potential accounts that aren’t getting the coverage they deserve in a target segment directly from the market coverage report. From the rep report, you can retrieve Target Book accounts a rep isn’t working & get them distributed to another rep to be worked.

Additionally, we’ve started a new private beta to help prioritize rep’s books with accounts most similar to where you’ve already had success. If this sounds interesting, get in touch and stay tuned for more to come.

1.97 (2023-06-05)

In this release we fixed some issues customers were experiencing with Queue-based Assignment Flows.

1.96 (2023-06-01)

In this release we updated Distribution behavior based on customer feedback. Previously, in some circumstances, Bookbuilder would distribute accounts to reps until either the individual Target Book segment capacity was reached or the supply of accounts for a segment was exhausted. Bookbuilder would do this even if the reps overall Target Book capacity was reached.

We heard from you all that this was not what you expected and instead you want Bookbuilder to stop distributing accounts once a rep's Target Book capacity is reached, even if they still have available segment capacity. And so we’ve decided to give you what you want.

We included a few other bug fixes and polishes as a bonus.

1.95 (2023-05-22)

In this release we’re adding a new experience - Account Panel - that helps provide the context you need when working with accounts in Bookbuilder.

Whether you’re looking at accounts in a preview before doing a retrieval, investigating accounts that deserve more attention in a market coverage report, or looking to understand which accounts are being worked by reps in a Rep Report, we know you often want more info about the accounts in question before taking action. Account Panel shows at-a-glance information about an account, who owns it, and recent activity on the account.

Additionally we added improved filtering in Rep coverage to make it easier to see engagement metrics for active reps.

1.94 (2023-05-11)

This is a swift follow-up to our previous release to ensure that our UI is rendered consistently with or without Lightning Web Security enabled.

1.93 (2023-05-11)

Got a good one for y'all this week. This release is full of all kinds of improvements for both Bookbuilder and Routing.

Routing updates

  • New Gradient Works Flow Settings - We've added a new setting in the Gradient Works Routing Settings tab to allow you to customize the batch size that scheduled executions of the Execute Subflow action uses. Previously, this value was not configurable.

Bookbuilder updates

  • You can now set field values to NULL in the Fields to Update section of a Distribution/Retrieval form.

  • We cleaned up some of the available Operators for numeric and date field types when building conditions across Bookbuilder.

  • We made some updates to asynchronous Distributions that should make them complete faster. Previously we would run through all eligible accounts for distribution, even if no users had anymore available capacity. We've made things a little smarter and we should only keep processing if users can actually have accounts distributed to them.

  • We continued our UI facelift from a couple releases ago with some enhancements to Market Coverage Report Account Drilldowns as well as to all of our listings throughout Bookbuilder.

1.92 (2023-04-24)

This is a small release to address errors some customers encountered loading the Overview and Rep listing pages in Bookbuilder.

1.91 (2023-04-21)

This release includes improvements to make the Market Coverage reports more useful and make it much easier to setup Target Books.

  • Account Drilldowns in Market Coverage reports - you can now drill in to the specific accounts surfaced in a market coverage report to better diagnose why accounts aren't getting the coverage they deserve.

  • Duplicate Target Books segments - we've seen that many of you want to create quite a few TBs each with quite a few segments and each of those with quite a few conditions and criteria. Now it's a lot easier to do that because you can duplicate segments and modify from there as you set up your target books.

Additionally, we made a product wide facelift to headers and navigation. We hope you find it much more intuitive to know where you are and navigate to where you want to be when using Bookbuilder.

1.90 (2023-04-07)

Small follow up release today to address a couple of bugs.

  • If you tried to delete a Target Book immediately after deleting a different Target Book, it would not complete the deletion successfully. You can now delete to your heart's content.

  • Using a Distribution or Retrieval Template and then modifying one of the Account Fields to Update inputs would apply the changes to all the form section inputs. That's just not right and we fixed it.

1.89 (2023-04-04)

This release includes support for a foundational component of a Dynamic Books system: Account Pools. An Account Pool is where unassigned accounts live in waiting to be worked by reps.

With this release, we're adding support for configuring your account pool and then using the knowledge of unassigned accounts to improve the experience throughout the product:

  • Transfer accounts to & from the Account Pool - we added the ability to select your Account Pool as a source for a Distribution and as the new owner for accounts from a Retrieval.

  • Clarified account supply metrics - we updated the metrics shown in Target Book reports and in the Overview screen to show number of unassigned accounts that meet TB criteria instead of the number of eligible accounts. This should avoid confusion from eligible accounts that are already assigned to other reps.

  • Improved market coverage reports - we added unassigned metrics and provided a way to filter the report based on either all accounts or assigned accounts. This should make it much easier to diagnose if coverage issues are due to unassigned accounts or rep behaviors.

1.88 (2023-03-09)

This release is jam packed with all kinds of Bookbuilder reporting goodies.

Rep Coverage updates

  • We've added lots of new metric options to the Reps listing. You'll be able to see more information at a glance about how reps are engaging with their target book accounts and any assigned off book accounts. To access the new metrics, simply click on the new Manage Fields link and add what you need to the listing.

  • You can now click on one of the bars in the Accounts per Rep chart and be taken directly to that user's Rep Report.

  • We added an indicator to all Rep Coverage reports if data is being displayed for a deactivated User.

Market Coverage updates

  • We added the ability to refresh an existing market coverage report from the listing or when viewing the report.

  • We'll now send emails upon report processing completion. We'll send an email to any users you have configured in the Recipients section in Settings or to the user who generated the report. You can opt out from Settings at any time.

  • We also added in the ability to specify a custom date range for the coverage report.

  • We made a slight change to the listing and added a Report Status column.

  • Finally, we cleaned up a couple of rough edges in the market coverage report itself. Some of our tooltips were not displaying the correct information so we fixed it and cleaned up the look and feel of a couple of the other report components.

Target Book report updates

  • We no longer include deactivated users in any of the target book report calculations or listings.

1.87 (2023-02-22)

Had a quick fix to our Market Coverage report to address some users getting errors when trying to use certain fields for Fit or Timing.

1.86 (2023-02-17)


We had a regression on our Automation Builder Kit that prevented the UI from displaying any options when trying to access object fields.

1.85 (2023-02-16)


Today’s release is another big milestone in our efforts to help sales teams accelerate revenue with dynamic books. We are excited to announce Account Coverage - a new suite of tools that equips sales leaders with the intelligence they need to keep reps focused on their best accounts while also identifying and closing market coverage gaps.

Account Coverage includes:

  • Rep Coverage - reports to help sales managers understand how their reps cover their accounts and identify coaching opportunities to better engage target accounts

  • Market Coverage - reports to help sales leaders assess overall engagement with accounts in target segments and spot opportunities to drive more pipeline with better coverage of in-segment accounts

Account Coverage helps sales leaders see opportunities for more efficient use of rep efforts on higher potential accounts and dynamic books (and Bookbuilder) makes it easy to adapt reps books, distribute these accounts, and get them worked to generate pipeline.

We look forward to doing more in the future to make it easier for sales leaders to spot opportunities for better account coverage & then quickly take action to deploy their team to realize these opportunities.

1.84 (2023-02-08)


Emergency release to address Distributions/Retrievals listings not always showing Past Distributions or Retrievals.

1.83 (2023-01-26)

Another small Bookbuilder release this week with a couple of bug fixes.

Rep Listing Update

We fixed a bug in the Rep Listing where the Contact Reached (Avg) column displayed an incorrect value. This is now working as expected and apologies for any confusion this may have caused.

Limit GWC Batch Size

We discovered and fixed a batch process issue that would throw a 'Too many DML statements' error when processing a large number of usage events. This is now fixed and our apologies for not catching this sooner.

1.82 (2023-01-20)

Small Bookbuilder release this week with a few improvements we couldn't wait to share.

Rep Listing Update

You can now change the date range you're viewing data for just like in the Reps Working Activity Report.

Target Book Report bug fix

We discovered we were not always calculating the number of owned accounts for each segment for a rep correctly. It's all fixed now though and we're sorry for any confusion this might have caused

Enrollment Criteria update

We removed the ability to select User lookup fields as Enrollment Criteria. We saw some cases of customers adding pool user ownership as enrollment criteria which can mess up things like target book ownership reporting. Specifying that kind of criteria should really be done on the Distribution or Retrieval form.

1.81 (2023-01-11)

This release is all about Bookbuilder Working Activities and Rep reports.

Event Support for Working Activities

We've added the ability to create Working Activities for Events as well as Tasks. As you might expect, the Rep reports also now include any relevant Event data in them if you have Event Working Activities configured.

Reps Listing Updates

We re-labeled some columns and added some new metrics:

  • "Accounts Engaged (%)" - The percent of total owned accounts that have at least 1 completed working activity associated to it

  • "Contacts Reached (Avg)" - The average number of unique Contacts reached for worked accounts

Reps Working Activity Summary Report Updates

This report got a lot of love this release.

  • We added the same new metrics to the summary section of this report that we added to the Reps listing.

  • This one is really exciting. You can now change the date range you're viewing data for.

  • It's also now possible to sort the Account Summary Engaged and Unengaged lists by any configured column.

RecordType Picklist Support

We also made it easier to add RecordTypeId conditions when configuring criteria in BookBuilder. When you select "RecordTypeId" from the list of fields, we'll show you the configured Record Type record options for that Object type.

1.80 (2023-01-04)

New year, new release! Just a small Bookbuilder performance improvement this week, but we couldn't hold it back any longer.

Target Book and Enrolled Accounts Criteria speed improvements

We found a pretty degenerate case where having hundreds of fields on certain objects (like Account) could cause the Target Book and Enrolled Accounts Criteria editors to take a long time to load (sometimes causing Page Unresponsive errors). Thankfully, our crack team of performance engineers were able to track down the cause and quickly get a fix in place.

1.78 & 1.79 (2022-12-21)

Tis the season for giving and you're on the nice list so you're getting all kinds of Bookbuilder gifts in this holiday special double release!

New Distributions and Retrievals listings

Previously we showed you "All" or "Templates" for Distributions and Retrievals. Now you'll see that we've replaced "All" with "Upcoming" and "Past" options. You'll find all your "Processing", "Scheduled", and "Recurring" Distributions and Retrievals under "Upcoming". The "Past" menu option will display all your successfully completed Distributions and Retrievals as well as any that were unsuccessful.

Overview updates

Following the separation of "Past" and "Upcoming" Distributions and Retrievals in the main listings, we've also updated the Overview to now show an abbreviated list of Distributions and Retrievals in these categories.

New ways to create Distributions and Retrievals

Now when you click on "Distributions" or "Retrievals" from the navigation menu, you'll be greeted with a flyout menu offering you the choice to start a new Distribution or Retrieval from scratch or from a template. You'll also find these helpful flyout menus anywhere you encounter a "New Distribution" or "New Retrieval" button.

Template Updates

We gave Distribution and Retrieval Templates one heck of a makeover. Here's the highlights:

  • We have updated how you can interact and use Templates so that well....they work more like Templates. Rather than using a Template to run a Distribution or Retrieval with, anytime you use one now, we'll create a separate copy so that any changes you make to your Templates do not affect any upcoming Distributions or Retrievals. Templates should be your starting point.

  • You can now Delete Templates! But don't worry any Distributions or Retrievals that were created using the deleted Template won't be impacted in any way. If the deleted Template is configured to be used in our Retrieval action it will also still run without issue.

Updates to Recurring and Scheduled Distributions and Retrievals

You can now more easily pause, cancel, and restart recurring or scheduled Distributions and Retrievals. We made these options easier to access from the Overview or the new listings row actions. We also gave the form a little bit of an update and added the ability to create a Template before Pausing or Canceling.

Other updates

  • We fixed an annoying little bug when trying to type in date literals to condition criteria anywhere in Bookbuilder where we wouldn't let you type more than 1 digit (i.e. - LAST_N_DAYS:1). We've fixed that and we're very sorry.

  • We've also now added the ability to select TextArea fields as condition criteria in Bookbuilder.

  • We've also fixed an issue in our asynchronous Distributions where we would sometimes stop processing the Distribution pre-maturely.

1.77 (2022-12-12)


Emergency release to fix an issue when trying to display more than 20 Reps in the Reps listing within Bookbuilder.

1.76 (2022-12-05)

This week we've got some bug fixes and interaction updates. Nothing too heavy, we're all still recovering from Thanksgiving.

Slack ABK updates

We found a bug in how our Send Slack Message action displayed Task objects, so we've got a fix for that. We also fixed an embarassing misalignment of the help icons.

We've added the ability to search for reps in the Reps listing report as well as our new Working Activities report.

UI Updates

We've got a couple UI updates in this release:

  • Enrolled Accounts now lives under Settings instead of having its own side navigation item

  • The Target Book report now has a new header style (to match our fancy rep reports)

1.75 (2022-11-23)

We got another chonky one this week. We had to go big so we could make so much more room for activities!

Working Activities

You asked and we delivered! To help you gain deeper insights into how much your reps are working their accounts, we created a Working Activity object where you can add the conditions unique to your org's SLAs. Simply navigate to Bookbuilder > Settings and click on 'Configure Working Activities' to get started.

Rep Working Activity Report

We added the new option 'Reps' to the side navigation menu. Here you will find useful information about the accounts your reps are working. Once you configured working activities, clicking on a rep will take you to the Rep Working Activity Report where you will see all new metrics and data giving you deeper insight into your reps' worked (and unworked) accounts.

Adaptive Routing Policy Bug Fix

Fixed a bug where we skipped over queues with only 1 user in them. Also, we were displaying a 'no routing target' message as an error when in actuality, it's more of a notification, so we fixed that too.

Target Book Segments Now Require At Least One Condition

There were some issues querying for records when a target book segment did not have at least one condition, so now at least one segment condition is required.

1.74 (2022-11-11)


Busy day squashing bugs, we got a second release for you today. We found a bug where an assignment would fail due to the absence of a queue item. We apologize if this caused you any trouble.

1.73 (2022-11-11)


This release is an emergency release to fix an issue causing some async distributions and retrievals to fail. We discovered that we were not correctly accounting for large number formatting in our SOQL queries. Salesforce returns sufficiently big enough numbers using exponential notation which can cause query errors. We have fixed this and we're very sorry if you were impacted.

1.72 (2022-11-09)

We got a big 'un this week. From settings to email alerts to scheduled Distributions and Retrievals, there's something for everybody in this one.

Distribution and Retrieval Preview updates

The first time we detect that a Distribution or Retrieval you're trying to run is over the configured Async Threshold, we'll let you know so you have a chance to go update your settings before you run the Distribution or Retrieval if you want to.

Additionally, whenever we detect a synchronous Distribution or Retrieval has failed to run, we'll show you your async settings then and there so you can update them immediately and try again.

New Settings option in Bookbuilder

We have a new Setup option for you now, Settings!. Everybody loves settings. You'll be able to easily manage your Batch Size and Async Threshold values here as well as configure which of our new alerts you'd like to receive and who should get them.

New email alerts for asynchronous Distributions and Retrievals

We have added two new email alerts for asynchronous Distributions and Retrievals. One for when an asynchronous Distribution or Retrieval complete and one for if they fail. By default we will send these emails to users with the Gradient Works Bookbuilder Admin permission set assigned but this is configurable from Settings within the Bookbuilder app.

Scheduled Distributions and Retrievals

You can now schedule Distributions and Retrievals. When setting up a new Distribution or Retrieval, we've added a new step before preview generation for you to configure a schedule if you want. You can choose to schedule the Distribution or Retrieval to run once in the future or set up a recurring schedule. You'll also be able to modify the schedule at any time and pause or cancel it if you need to.

Additional fixes this week

In non-Bookbuilder news, we had a bug pop up with our stop words list used in the Matching actions. We've fixed it and we're very sorry if this caused you any trouble.

1.71 (2022-10-24)

You guessed it, more improvements to Bookbuilder this release, including the ability to run Distributions and Retrievals asynchronously.

Reorganized Navigation Side Bar

Before Distributions and Retrievals had sub items of "Completed" and "Templates". Now this has been simplified and reordered as "Templates" and "All".

Asynchronous Distributions and Retrievals

We have added the ability to run Distributions and Retrievals asynchronously. If we detect that a Distribution or Retrieval is going to assign more accounts than the configured threshold, we'll automatically run it asynchronously. You'll be able to check on the status of these async Distributions or Retrievals from the "All" listings. The batch size and threshold are configurable in Gradient Works Settings found in Setup > Custom Settings. We default the batch size to 20 records and the threshold to 200 records.

1.70 (2022-10-13)

We continue to improve the Bookbuilder experience but we also took some time this release to revisit some of our oldest and dearest Flow actions.

Updates to some of our Queue assignment actions

The Assign Single Item and Schedule And Assign Single Item Action Flow actions now have brand new editors that should make configuration easier than ever. Rather than having to always type in the Queue name, you can now just choose from a list. Additionally, these new action editors should make it less confusing to provide capacity (and meeting location for the scheduling action) values when trying to decide if you should specify a value or a field for us to look at.

Improved Bookbuilder onboarding guidance

If you skipped the Bookbuilder onboarding tutorial because you were excited (we totally get it), it was sometimes difficult to understand what features required onboarding completion. We've added in some messaging to make it easier for y'all going forward.

Sortable Distribution Preview & Retrieval Preview columns

You can now sort by any column when viewing a Distribution Preview or Retrieval Preview. Quick note on the Distribution Preview segment column - the column is sorted by the first segment added to the Target Book.

Improved date range support in Bookbuilder criteria

When configuring criteria throughout Bookbuilder, you can now more easily specify a dynamic date range using the new "Custom" option (think LAST_N_DAYS:33 and LAST_N_WEEKS:27) in the options dropdown. This should allow you to better tailor which accounts get distributed and/or retrieved through dynamic books.

1.69 (2022-09-29)

Got another packed release this week. Full of new stuffs and fixed stuffs, we hope you enjoy.

Improved layout

We took some time to polish the Bookbuilder layout to better fit varying screen sizes. No more misaligned corners, yay!

Customizable columns in the Rep Account Ownership Report

Whenever you view the Account Ownership Report for a Rep for a Target Book, you'll now see a "Manage Fields" link that will allow you to customize the Account information displayed for that Target Book.

New Distribution and Retrieval Template update options

You now have the option to edit a Distribution or Retrieval Template and execute it without permanently saving those changes. Very helpful if you need to run a one-off Distribution or Retrieval.

Bookbuilder Admin Permission Set

The new "Bookbuilder Admin" permission set will let non-System Administrator Users edit Gradient Works Bookbuilder objects. With great power, comes great retrievals. Please distribute responsibly.

Formatted Tooltips

We had some ugly tooltips in our New Distribution form. But no more * asterisks * or ~ squiggly lines ~ for us! We hope you enjoy our freshly formatted tooltips.

1.68 (2022-09-21)

Normally, we like to keep our releases to every two weeks, but we've got a couple of really nice features that we're too excited about to wait. Also, we may have found a bug or two that we wanted to get out ASAP because someone was a bit embarrassed about them (and rightfully so, in this humble changelog's opinion).

New rep switcher

The account ownership breakdown report now has a new rep switcher in the upper right corner. Now, you can quickly switch between reps and see the account breakdown for each rep with a given target book. It gives you a quick way to see the state of your reps' worlds (well, their accounts, anyway).

Quicker target book access

From the target book breakdown report you can now quickly access the target book configuration. Just click on the Configure link next to the target book name and you'll be taken straight to the target book configuration. We've also added a shortcut to edit the reps for the target book you're viewing - just click on the Edit Reps link.

Bug fixes

We goofed and kept the size of the account ownership table too small so you had to scroll and scroll and scroll to see all your reps (it now grows to accomodate the number of reps with that target book). We've also added some additional logging (available in Log Entries) in the event of a distribution or retrieval failure to help track down the cause of the problem (previously, the log was only available via the developer console, which, ew).

1.67 (2022-09-13)

Today’s release is a big milestone. We are excited to announce Bookbuilder, a new tool to help revenue teams adopt and implement dynamic book management.

Bookbuilder allows you to implement best practices from dynamic books to keep your reps well-fed, balanced, and constantly working the highest potential accounts. In our pre-release testing, we’ve seen that adopting dynamic books with Bookbuilder can significantly improve rep attainment and overall sales performance.

Our initial release allows revenue teams and their ops partners to:

  • Set up target books to define the right type and amount of accounts their reps should work

  • Distribute high potential accounts to their reps according to their target books

  • Retrieve unworked accounts from Reps to be distributed to others

  • Analyze reps books to understand what accounts they need to be on target

We’ve built Bookbuilder to be intuitive and easy to use for any revops and sales leader – no SFDC admin expertise required.

We’re excited to finally make Bookbuilder available and look forward to the many improvements and additional capabilities we will add in the upcoming months.

1.66 (2022-08-30)

We have a couple of small updates this release and a lot more work for the dynamic book management pre-release solution. I hope you're getting as excited about it as we are!

Matching actions update

We discovered that if you had your Condition Requirements dropdown set to "Any Condition is Met (OR)" in the Filters section of a matching action and no actual conditions were specified, it would cause no matches to be returned. Now if a matching action is configured this way, we will correctly return matches rather than excluding everything for no good reason.

1.64 and 1.65 (2022-08-19)

This one includes a new pre-release solution to help outbound focused sales teams manage dynamic books. Even more on this soon!

1.63 (2022-07-11)

The team is still hard at work on a new feature but we didn't want to wait to give y'all a new Matching action and some updates to Capacity Meters.

Match Account to Account Action

In addition to our Lead matching actions, we now have an action to let you match Accounts to other Accounts. See Match Account to Account for more info.

Capacity Meter configuration bug fix

We discovered that we were not correctly allowing users to check if an Id field was set or not as part of the Conditions for a Capacity Meter. We're sorry about that and have fixed it.

Get Used Capacity Action enhancement

You can now use a String variable as the input for Capacity Meter in Get Used Capacity. This is helpful if you need to dynamically set the Capacity Meter to use in the action.

1.62 (2022-06-27)

We're currently hard at work on a new super-secret set of functionality but in the meantime we've got a small enhancement for y'all.

Increase callout timeouts to 30 seconds

The default Salesforce callout timeout is 10 seconds, which can be a bit too short at times. We've increased it to 30 seconds to cover the vast majority of cases.

1.61 (2022-06-02)

This week's release is all about improvements to some of our existing actions and record detail pages.

Log Entry Detail Page update

We updated the information we display for individual Log Entry records to reduce the noise and only show what really matters.

Lead matching actions will now always return exact matches first

Previously the matching actions may have found an exact match when using fuzzy matching in the matching criteria but would not always return it as the bestMatch. We've fixed this so that now if you're using fuzzy matching in your matching actions, we'll always return any exact match meeting all the criteria as the bestMatch.

Execute Subflow can now be scheduled

You can now add an Execution Delay when configuring this action and we'll schedule the specified Flow to be run at a later time. This will be useful for things like waiting for another service to update a Record before running a Flow or scheduling Flow actions that the standard Scheduled Paths can't execute (like converting a Lead in a Record-Triggered Flow).

1.60 (2022-05-25)

It took us a little longer than usual to get this release out but we really think it was worth the wait.

Automation Executions

You can now see all in one place what happened when one of your Automations ran. You'll be able to see information about the Records and Users involved and the steps taken (or not taken). Check out Automation Executions for more details.

1.59 (2022-05-05)

We've got something new and exciting for you this release! Read on for more.


We've made it easier to manage your Queue membership all in one spot and allow users to manage their own availability. Please see Users for more details.

1.58 (2022-04-21)

Small release this week but don't you worry, the team is working on something really exciting. More details soon.

Improved input searching in some of our action editors

We've made some updates to how we display and search for some input options in some of our editors. You'll notice in the Send Slack Message, Add Person to Sales Engagement Cadence, Check Person Enrollment in Cadence and Get Used Capacity actions that we've added better searching capabilties for the Channel, Cadence and Capacity Meter dropdowns. This will be especially useful for users with lots and lots and lots of options to choose from in those dropdowns.

Update to upgrade button in Settings

We've made a small update to the upgrade button to hopefully make it easier to upgrade your Gradient Works package. You should no longer have to re-login to upgrade or worry about having to update the link if you're in a sandbox site.

1.57 (2022-04-08)

A new Flow action and another round of refinements coming out hot and fresh just for you.

Get Used Capacity action

As you know from previous release notes, we recently added Capacity Meters. The new Get Used Capacity action will let you use a Capacity Meter in a Flow to calculate the current used capacity for a user. You'll then be able to use the calculation result in the Flow to help determine if a user should get assigned an item or not.

Directly Assign Items action update

Two exciting updates to our Directly Assign Items action.

  • We added the ability to assign more than one item at a time. Useful if you need to re-assign several items (Accounts, Contacts, etc.) at once to the same user.

  • You can now also assign items to a standard Salesforce Queue. Previously this action would only accept a User Id to assign items to but now you'll be able to provide us with a User or a Salesforce Queue.

Send Slack Message action update

The Send Slack Message action was pretty cool before but now it's even cooler thanks to some added flexibility.

Before, you could only specify one record to include information on in the Slack message sent from our action. With the latest updates you'll be able to choose fields to show from any record available in the Flow and link to as many records as you would like (as long as they are available in the Flow).

Better Assignment reporting

We've added lookup fields to our Assignment History object for Account, Lead, Opportunity and Contact to enable easier and better Report building. With these new fields it should be much easier to generate a single Report about the assignment that occurred and the item that was assigned.

1.56 (2022-03-24)

This week's release is all about refinement. We've got a variety of updates to some of our latest features, check out the details below.

Capacity Meter updates

Various updates to the look and feel of this feature this week but no major functionality changes.

Schedule and Assign Single Item updates

We've added in the ability to specify what should happen if we cannot find a user with calendar availability at the requested meeting time. The current behavior is that we will double book the user who was least recently assigned. While this will still be the default behavior, we've added in a "ifNoneAvailable" input and if you specify "doNotAssign" as the input value, we will no longer double book users. Instead we will return an error in the action output and not perform any scheduling or assignment. You should then be able to use the new outputs to decide what to do next in your Flow in the event of an unsuccessful scheduling.

We have also tweaked the behavior of the action when there is an API error during scheduling. We used to log the error message and still try to perform the assignment without scheduling the meeting but we've modified this to now raise the error and stop all action processing. To account for this in your Flow, you can add a Fault Path for this action.

Lastly, we've enabled reporting for the Gradient Works Calendar Event object so you can now create reports to see the meetings scheduled using the Schedule And Assign Single Item Action action.

Send Slack Message updates

Formerly known as the "Send Chat Message" action, we've decided to get more specific with the name.

We also made sure that the channels listing in the custom editor will now display private channels in addition to public channels.

Additional updates

We had a few other updates as well. They include:

  • No longer displaying the "Queue Slots" listing for Queues using the Schedule First Available routing policy. That policy type does not utilize Queue Slots and it was just confusing to have it display.

  • Fixed the permission error when trying to create Assignment Histories. Previously we would log an error anytime someone tried to perform an assignment and didn't have access to create a Gradient Works Assignment History. We've fixed this and we're sorry for the noise.

1.55 (2022-03-09)

Last week the entire Gradient Works team got to spend some time together at a company offsite. While we learned a ton and had a great time, that didn't stop us from working hard and getting out another killer release this week.

Capacity Meters

We've added the ability to easily configure and track capacity values for users. Please wish your spreadsheets and reports a happy retirement from us. See Capacity Meters for all the details.

Gradient Works App tab improvements

Those of you who have been around for a while have probably noticed that a lot of our tabs in the Gradient Works app say "Gradient Works" in them. We thought that was getting a bit redundant so we've cleaned that up.

1.54 (2021-02-17)

Coming in hot with another new integration this release! SLACK IS HERE! I REPEAT, SLACK IS HERE!


You can now use the Send Slack Message action to notify a Channel or DM a user as a next step in your routing process. You'll be able to easily customize the message and mentions you send. Additionally, if you want to include some details about a Salesforce record, you can choose the record fields to include in the Slack message and we'll automatically include a link to the Salesforce record for you.

To start using Send Slack Message, go to our Settings tab and authenticate with Slack.

1.53 (2021-02-03)

We got some good stuff this week! In addition to some improvements to our automation templates and Add Person to Sales Engagement Cadence, we've added Microsoft 365 to our ever growing list of integrations!

Microsoft 365

You can now use Schedule And Assign Single Item Action with Microsoft 365! Just go to our Settings tab and authenticate with Microsoft 365 and you can start using this action in your automations.

Add Person to Sales Engagement Cadence updates

We've added the ability to select a User to assign the person to in your sales engagement platform. You can set this via the "Assign To" field in the action editor. In Outreach, we will update the Owner of the sequence prospect with the selected user and in Salesloft, we will update the Assignee of the cadence person with the selected user.

In addition to this update, we will now set the Owner of the Person to the Owner of the Salesforce record in Salesloft.

Please note that should the Lead or Contact already exist in Salesloft or Outreach, we will not override any existing ownership or assignees.

New Flow Templates

Now that we've gotten a few implementations under our belt, we've started to see some common patterns in the automations our users need. We've built some new templates based on these to make it easier and faster to get users up and running.

We've added templates for matching Leads and assigning Opportunites and we've improved the existing create Lead template.

Check out the New button in the Automations tab to take advantage of these new templates!

1.52 (2022-01-19)

Small release this week but keep an eye on this changelog for some exciting features coming soon.

Add Person to Sales Engagement Cadence updates

We have removed the requirement for Leads or Contacts to have phone numbers before adding them to a cadence.

1.51 (2022-01-06)

The entire team hopes you had a good New Years! Our first release of the year is packed with refinements to our current Next Steps initiative.

Create Task updates

Create Task got a huge face lift. We updated most inputs to allow you more flexibility. Specifics below.

  1. Subject now accepts resources as inputs rather than only letting you type in a Subject.

  2. Assigned To, Related to and Person will now accept an Id in addition to a Record.

  3. Due Date now accepts a typed in Date as well as a formula.

  4. Comments got a makeover in the editor and now allows you to add resources to the input.

Add Person to Campaign updates

Previously Add Person to Campaign would not perform any updates to existing Campaign Members if one was found. We've changed things a bit so that if any field updates are defined in the "Additional Details" section of the editor and the existing Campaign Member doesn't have a value for the specific field, we'll go ahead and update it.

Existing Campaign Members and newly created Campaign Members return more details in the action result now to hopefully eliminate the need to re-fetch the record.

Lastly, we also fixed an issue in the editor where we were showing more than just Active Campaigns. Apologies if this tripped anyone up!

Check Person Enrollment in Cadence updates

You can now reference a Person by a Record, Id or Email.

1.50 (2021-12-23)

Things are slowing down a little bit as the team takes some well-deserved time off, but we just had to get one more release out the door before the new year.

Happy holidays from our team to yours. See ya next year!

Outreach support

We've added Outreach support to our sales engagement cadence actions.

If you've been holding off on using our Add Person to Sales Engagement Cadence or Check Person Enrollment in Cadence actions because your organization uses Outreach instead of SalesLoft, well now you can! Simply go to your Settings tab and Authenticate with Outreach and you can start using these actions in your automations.

Cadence action updates

We've also added the ability to reference a sales engagement cadence in your action by name, Id, or variable. Before, you had to hard-code the cadence in your action by selecting the cadence from a dropdown - now you can programatically define which cadence you wish you reference in your action.

Bug fixes and enhancements

There were a couple of places where we missed some UI details (like sorting the list of cadence names). We've cleaned them up and made things a little more consistent.

1.49 (2021-12-10)

We continue our Next Steps initiative in this release. We're really excited to share that we've added an integration with Salesloft and some actions to help with sales engagmenet cadence enrollment.

But that's not all the team has been up to, check out the details below.

New Integrations Settings module

We updated the former "Calender Integrations" module in the Settings tab. Now it looks a little nicer, has a way for y'all to contact us if you have an integration you think we need and allows authentication with Salesloft.

Add Prospect to Sales Engagement Cadence action

The Add Person to Sales Engagement Cadence action will allow you to add prospects to a Sales Engagement Cadence in Salesloft. Just select the Cadence to use from the dropdown and provide the Lead or Contact information you want to enroll. Please note this action is asynchronous and requires authentication with Gradient Works Cloud and Salesloft.

Verify Prospect Enrollment in Sales Engagement Cadence action

The Check Person Enrollment in Cadence action will allow you to check if a prospect is already enrolled in a Sales Engagement Cadence in Salesloft right from your automation. Just select the Cadence to use from the dropdown and provide the Lead or Contact information to check enrollment for. We'll let you know if they are enrolled or not. This action requires authentication with Gradient Works Cloud and Salesloft.

Task and CampaignMember Tagging

We're always looking for ways to help our users understand what happens when they use a Gradient Works action. Now that we have Create Task and Add Person to Campaign, we want to be able to tell you which Tasks and CampaignMembers were created from those actions.

When you include our Start action in your automation, we will include on any Task or CampaignMember the automation information that triggered the creation. To see this information you can add Flow Name, Flow Version and Flow Version View Durable Id to your Task and CampaignMember layouts.

A new way to delete Queue Users

It was brought to our attention that we were making users do more clicks than necessary to delete a Queue User. Now you'll be able to delete them right from the Queue Users module when looking at a Gradient Works Queue detail page.

Add Prospect to Campaign Action editor fix

We noticed that we could have handled some input options better in the Add Person to Campaign action editor. We've fixed that and we're very sorry if it caused any inconvenience.

1.48 (2021-11-24)

This release is all about our Next Steps initiative. We're building out more actions for you to take after we've done our routing or matching magic, such as adding a prospect to a Campaign or creating a new Task for a rep to follow up with.

As a side note, this changelog has a lot to be thankful for this year. It's rare enough to work with an amazing team but when that team is also your family, well - sometimes all you can do is be grateful.

Add Prospect to Campaign action

The Add Person to Campaign action is a great way to add prospects to campaigns as part of your automations. Select the prospect (or provide a record) and the campaign (name or record) you want to add them to, and our action does the rest. Additionally, you can update additional fields on the newly created Campaign Member object using the 'Addtional Campaign Member Details' section.

Create Task action

The new Create Task action creates and assigns a Task to a rep. It's great for creating follow-up tasks after routing and assigning Contacts or Leads. Much like the Add Person to Campaign action, you can update additional Task fields using the 'Additional Task Details' section.

1.47 (2021-11-12)

This week we are happy to report that los Gradientes are vaccinated! It's been a long time coming and this changelog is very very happy. They were very brave and strong while getting their shots.

This changelog, not quite so much.

Deactivated user support v2

We've found a less-intrusive way to handle user deactivation that doesn't have the same risks that the initial implementation had. We're very sorry that we missed this the first time and apologize for any inconveience this may have caused. Thankfully, we're now aware of the flaw of this pattern and will avoid it in the future.

Easy Google reauthentication

If you need to change the Google account associated with our Scheduling component, it's now much easier to do so. Once authenticated, you can simply click the "Disconnect" button and it will disconnect the old account. Then, you can click the "Authenticate" button and it will take you back through the Google authentication process.

1.46 (2021-11-04)


This release is an emergency release to fix a bug that was introduced via our Deactivated user support. We found that our implementation has the potential to conflict with customer User triggers, so we've disabled the feature for now. We're sorry for the inconvenience. Stay tuned for a permanent fix in our next release.

1.45 (2021-10-28)

The weather outside is gorgeous today and ITS A BONES DAY! I suggest you treat yourself with a nice tall glass of water and our LATEST RELEASE :)

Track record that initiated an automation

When you include our Start action in your record-triggered automation, we now log the record that initiated the automation. We also include it in the logging context of that automation and plan to expand on this in the future. Stay tuned.

Flow action editor fix

We missed an edge case with our flow action editor which caused the editor to not pick up the selected record. We're sorry if this caused you any issues - the team has been throughly chastised and they promise they'll never ever do it ever ever again. Ever.

1.44 (2021-10-21)

With spooky season in full swing, the Gradient Works kids (los Gradientitos?) got together last night for a pumpkin carving contest/celebration. The changelog was hurtfully not invited.

Domain Denylist

An organization will often want to influence its matching or assignment rules based on domain information (the domain of an email address, website domain, or some other field provided by an enrichment platform). To help, we've added a Domain Denylist and an accompanying Evaluate Domain against Denylist action - add the domains that you'd like to filter against to the Denylist and the action will show you if the extracted domain you provided matches any of the domains in the list.

Additional Package Info

We've added a new Settings module to display additional information about your installed version of Gradient Works (such as links to the documentation and release notes) as well as the most recent version.

1.43 (2021-10-15)

We're a day late on our release and for that, this Changelog is truly sorry. It's been a long few weeks over here in Gradientland but even with that, our intrepid Gradients (Gradienters? Gradient Workers of the world unite?) have got another good release in the bag this week.

They're very, very good.

Deactivated user support

With this release, any deactivated users automatically and immediately become unavailable across all Gradient Works queues. This should lighten the load a bit for anyone responsible for maintaining Gradient Works queues and assignment rules.

Flow details in log entries and assignment history

Last week, we added a couple of flow-related fields to the Assignment History layout. As we reflected on that change, we saw an opportunity to add a little more detail and color to the flow information, so this week we've added a new Flow Details component module to both the Log Entries and Assignment History layouts. It pulls the flow information out and to the side (when applicable) and really makes it easer to see and understand which flow was responsible for the assignment or log entry you're looking at.

1.42 (2021-10-07)

We're not talking about how this season of Ted Lasso is almost over so don't bring it up. Instead, we'd rather talk about all the niceties in this release (work is a good distraction).

Flow action editor refinements

We've got some nice flow action editor fixes in this release. We know they've been bothering y'all, because they bother us too and, frankly, we couldn't take it anymore. So, we've got:

  • dropping that dang trailing period! When you select something from our dropdown, sometimes you'd get this trailing period after it that you'd have to clean up yourself. Well NO MORE! NO MORE I SAY!

  • Speaking of dropdowns, let's get some better labels in there! Objects and properties now show their labels (when applicable) making it easier to find what you're looking for (also now they're alphabetized 🤭).

New Assignment History layout

Increasing visibility into your revenue operations is what we're all about - to that end, you can now see which flow (and version!) triggered a given Assignment! You'll need two things to make this happen:

  1. Include our Start action at the beginning of your assignment automation

  2. Update your Assignment History layout to the latest version so that the new fields are included and visible

Automation table update

For record-triggered and platform event-triggered automations, we've added the triggering record type to our Automation listing. Now it'll be easier to see at a glance which records trigger which automations, not to mention searching and filtering by record type.

Bug fixes

  • Complete separation of our background purge jobs to keep them fully isolated - we never want them to affect the running of any other jobs

  • Permission updates - some classes had outdated permissions which may have led to certain users having reduced visibility or access

1.41 (2021-09-30)

Spooky season is officially upon us! The weather is getting a little ghoul and breezy down here in Austin and we're starting to put out the Halloween decorations. Don't be afraid - this release is solid and we won't need to pumpkin patch anything 🤣

Scheduling enhancements

As more customers use our Scheduling component, we're seeing how important it is to give automation builders the ability to override certain parts of the scheduled calendar event. With this release, you'll be able to override the event location field (either manually or from a field lookup) on a per-user basis. If your users have individual meeting links (Zoom, etc), now we can use those specific links when scheduling events.

1.40 (2021-09-23)

Big news this week - our engineering team grew 50%!!! AND this changelog is proud to report that our new team member has contributed significantly to this release and that's just dandy.

Package info

We just can't get enough settings modules. There's a NEW one this week, this time for information regarding the Gradient Works managed package. Right now, it's only got the currently installed version but keep an eye out for more info coming soon.

Bug fixes

Our crackerjack engineering team was on 🔥 this week, tackling a bunch of little UI tweaks and corner cases:

  • Logging settings module full-screen layout is now more responsive

  • Calendar authentication settings module now displays a spinner during the authentication process

  • Scheduled automation save notification cleanups

  • Log purging schedule increase to keep ahead of potential overflowing logs

1.39 (2021-09-16)

I dunno about y'all, but this changelog is very happy that the Yankees are back playing on the east coast. I'm not saying those west coast games starting at 9 PM Central were impacting releases but I'm not not saying that.

Job Settings

Listen, we get it. Y'all love settings. We do too! That's why we've added another settings module, this time to view the status of Gradient Works' background jobs. Additionally, if for any reason one of the jobs stops running, you'll be able to re-activate the job straight from the job settings module.

Logging fix

We cleaned up a spammy log message that, just between you and me, wasn't really doing anyone any favors. RIP to 'ApiToken is not active'. We'll mourn ya til we join ya.

1.38 (2021-09-10)

We apologize for getting this release out a day late but we really wanted to fit everything in and someone needed an extra day. We won't say who, but his name rhymes with mongo.

Custom matching stop words

We now support adding your own custom stop words list for use in our Fuzzy match types. This means that you can now add words that you do NOT want to be considered when applying Fuzzy matching (in, say, our Lead to Account, Lead to Contact, or Lead to Lead actions). Like the Nintendo Power Glove, the power is now in YOUR hands.

Logging Settings module

It's now much easier to view and update your Gradient Works logging settings (such as the log level and how many days logs stick around). Head over to the Settings tab and you'll see the new Logging module at the bottom.

Bug fixes

We found a small issue with the way that we were processing our usage events - at times, certain types of events wouldn't be sent. This showed up as a specific error in your logs ('You have uncommited work...'). We've split up the processing of usage events to keep this from happening. Many thanks to the customers that reported this - we're better together.

1.37 (2021-09-02)

We're deep in the dog days of summer down here in Austin. It's hot and gross outside, so we're staying inside and watching Ted Lasso and doing our best to stay cool. We hope our friends around the country are staying dry and safe - we're thinking about y'all.

Flow action enhancements

We've done some significant work to our Flows: Start, Flows: Finish, and Flows: Failed actions in this release. You should see much clearer log messages and additional debugging context info from these actions.

Calendar event flow outputs

Hot on the heels of our big Scheduling release last week we, of course, found something we missed! As we started seeing folks use the Scheduling flows we noticed that we kept wanting access to the calendar event once it was created, so we, you know, did that.

AssignQueueItemsScheduledJob Deprecation

This is a little inside baseball but we're deprecating the AssignQueueItemsScheduledJob. Part of putting the product in front of more and more customers is realizing that sometimes our initial ideas and abstractions aren't always correct. This change shouldn't be visible to anyone other than us, but in the event this was your favorite scheduled job, I'm sorry you had to find out this way.

1.36 (2021-08-26)

Honestly, we have no idea what's been going on out there in the real world. We've been heads down trying to get our new scheduling component just perfect for y'all, and GUESS WHAT?


It's finally here! With this release, we're including the Schedule and Assign Single Item Action - the first action to take advantage of our scheduling component! This action will assign a single item to a rep (from a queue) and schedule a meeting between that rep and the prospect associated with the item - no more checking calendars to see who's free and when. We do that work for you. You're welcome, we're happy to help :).

You can also see the calendar event on the queue item's display page, because we're fancy like that.

1.35 (2021-08-12)

We're in the final stages of summer over here and the kids are trying to soak it all up before school starts next week. We're all a little stressed out about this year, so if you wouldn't mind sending us some good thoughts and positive vibes, we'd be much obliged. We're doing the same for y'all.

Enhanced assignment logging

Several customers pointed out how difficult it was to search through our assignemnt log messages. We've heard you loud and clear and now it is SO much easier. It's already making our lives better, so thank you for the feedback.

Bulk assignment optimizations

We found a potential issue with some very large bulk assignments. While we haven't seen it be an issue in the wild, we went ahead and fixed it because, hey, doing the right thing is never the wrong thing.

Automation tab display enhancements

Now this one was on us - when the Automation tab loads we display a spinning icon to show that it's loading data. Unfortunately we got some wires crossed and the spinner would complete without always showing the fully loaded data. So we fixed that.

1.34 (2021-08-05)

We can't get enough Ted Lasso in our lives right now. We've watched all the season 2 episodes about 10 times so we decided to take a break and get some work done. Don't call us Friday morning because we'll be watching those lovable footballers shining their good good light down on us.

Assignment bug fix

We found and fixed a bug that would cause an error when assigning a record whose previous owner was not a User. It was edge-casey, but we found it and squashed it but good.


We're making excellent progress towards our calendar scheduling functionality and this is the first BIG chunk - we now have a new Queue assignment policy that will assign an item to the first available user in a queue AND SCHEDULE A MEETING with the interested parties. We've still got a ways to go, but this is a giant leap down that path.

1.33 (2021-07-29)

We wanted to get this release out last week but Salesforce had other plans. Now that they've solved their deployment issues, we're ready to send this one out. It's only a couple of bug fixes, but it's important to us that we deploy new versions on a regular basis so our apologies for not getting this one out sooner.

Lead matching with special characters

We found some edge cases where attempting to match a Lead with special characters in the email address would cause our Matching flow actions to error. We believe in character equality here at Gradient Works and this release fixes these errors. We apologize to the special character community and promise that we will do our best to keep this from happening in the future.

DML watchguards

Some of our background jobs and processes generate objects that don't need to live around forever so we periodically clean them up. We recently found a couple of these cleanup areas where we weren't guarding against potential DML limits, so we've added checks to keep us from hitting those limits.

1.32 (2021-07-16)

We're still recovering from the F9 release but we did manage to get some work done. An astute reader will note that it's been a minute since our last release - today you find out why.

Logging cleanup

We've standardized logging throughout the installed package. Consistent logging levels across all of our features will make it easier to filter and debug things like flow actions. We've also moved most of our internal logging to a lower log level (FINE, fo those that are curious) which is going to help reduce some log noise that isn't necessary for day-to-day logs.

Bulk lead conversion fix up

We've got a small batch size update in our bulk lead conversion action to help reduce potential DML errors (VERY large bulk updates would trigger DML limits).


We're cooking up some really cool calendaring integrations. Even though they're not completely done, we're putting out the initial setup and authentiation components out so that everyone can be ready to go for the next release.

1.31 (2021-06-24)

I never thought this day would come. I mean, I'd hoped and hoped but sometimes it can feel like hope as abandoned these lands, but it's here - F9 is OUT TODAY! HAN'S BACK! AND MAYBE SEAN!

Oh and we had a pretty great release this week too :)

Bulk lead conversion

Converting muliple leads at once is now easier and more efficient. Handling them in bulk allows us to avoid hitting built-in Salesforce limits and makes them execute faster.

Automation scheduling

You can now schedule active autolaunch flows to run on a schedule! Head over to the Automations tab and check out the details menu on the right of the Gradient Works Flows table - from there you can manage the schedules for your individual automations.

1.30 (2021-06-17)

No release last week - it was too hot for us to package anything up. Well, joke's on us because this week was even hotter. We somehow managed to stay cool enough to make some really good progress with Flows and a new surprise Tab!

Flows on Flows on Flows

We did A LOT of work with Flows this release:

  • Execute Subflow action - got a flow you wanna run from another flow? Weird flex but you do you.

  • Lead Matching action fixes - whether you've got a bunch of leads or only one, we got you covered.

  • New Flows from Templates - check out the New button in the Automations tab for a drop-down of flow templates that you can now use to create a new Flow from! Keep an eye on that list for new flow templates coming soon.

  • Enhancements to our custom property editors

New Settings Tab

Surprise! It's Settings!

We've removed the Admin tab and replaced it with Settings. It's a bit empty at the moment, but we'll be adding things directly.

1.29 (2021-06-02)

This has been a fun week! As more and more customers use our software, we learn more and more about how we can best provide value. Also, we learn about where we may have made some mistakes in our initial implementation (not me I'm just a Changelog) so this week we've spent our focus on smoothing over some rough edges.

Bug fixes galore

We've made a small tweak to the Automations table where the label now links to the Active version of the flow (or latest version if the flow isn't active) instead of the flow detail screen which no one wants to see.

We also fixed a couple of small issues with our Convert Lead action that were causing some headaches, mostly around some edge case behavior. If you've had problems with the Convert Lead action in past please give it another shot.

1.28 (2021-05-27)

LAST WEEK OF SCHOOL! LAST WEEK OF SCHOOL! I know this isn't at all related to the product but I'm really proud of all the Gradient Works kids and how they've managed the last year and a half. It's been hard for me personally and I'm just a Changelog.

Way to go, kiddos. We're all super proud and rooting for you and we're always in your corner. Stay cool and have a great summer!


That's right! Our Assignments table on the Dashboard now has infinite power I mean scrolling.

What's that? This just in - I'm being told that it's not technically infinite by our attorneys. But between you and me, it's pretty close. When you get to the bottom of the table keep scrolling to quickly load up the next set of Assignments (and keep scrolling!).

Monitoring and Observability

We've improved our ability to see and visualize the effects of automations within your org and we're using that information to monitor more effectively as well as better understand how we can best provide value.

1.27 (2021-05-20)

It's been a rainy week in Austin, but we've got a lot of happy kiddos ready for the school year to be over and some slightly anxious parents who are nevertheless excited for summer.

New docs

We've got a brand new heckin' spiffy website and it just wouldn't be right if our docs didn't get the same UI love. Our documentation is like manners - a way of showing other people we care about them.

Dashboard improvements

Building on top of the dashboard work across the past few releases, we added some addtional detail to the Assignment History detail page. You can expect to see continuous incremental improvements to the dashboard as we focus on ways to better capture and display Assignment information.

1.26 (2021-05-13)

This was another one of those behind-the-scenes releases, but we did have one quick fix that couldn't wait to get out.

Dashboard fix

We hit a permission snag with the last release of our new Dashboard which has been resolved with this issue. Our thanks go out to those that pointed out the issue and helped us test the fix.

1.25 (2021-05-06)

We're really excited about this release. The behind-the-scenes work is fun, but what we really love is getting stuff out in front of people and getting feedback on what's working, what's not working, and what we can do to help YOU.


This is the big one, friends. It's like the Millenium Falcon you always hoped to find under the Christmas tree, only it's actually here!

Currently, we're focusing on Assignments (as you can see) but expect to see this area grow in future releases. Observability is important to us and we want to make it really easy to see what Gradient Works is doing for you.

Custom Action Editors

We've customized the Flows: Start, Flows: Resume, Flows: Finish, and Flows: Failed action editors. They're smarter and require less upfront configuration, making it easier to incorporate them into your flows.

Gradient Works flow action updates

Our existing flow actions got a little bit of love in this release. They've all been updated to take advantage of the framework that powers Flows: Start, Flows: Resume, Flows: Finish, and Flows: Failed, so moving forward things like logging and basic behavior should be a little more standard.

1.24 (2021-04-29)

We're working hard towards additional flow and reporting functionality, but it wasn't quite to our liking yet so it's not making it in this release. Instead, we've got a small bug fix that limits how many Gradient Works Log Entries we try to purge at once.

1.23 (2021-04-15)

We were slightly distracted by the new F9: The Fast Saga trailer this week but we managed to pull it together familia-style and ship some more monitoring and observability building blocks.

First, we've added two more tracing actions: Resume and Failed.

When a Flow contains a Screen Flow action, the Flow transaction can change making it difficult to track the full Flow execution. Adding a Resume action directly after any Screen Flow action ensures that the transaction change is tracked properly and the full Flow execution is tracked from start to finish.

Faults in a Flow can also make it difficult to see the full execution from the start of the Flow all the way to the failure point. Adding a Failed action in fault paths preserves the full Flow execution even in the event of an error.

Our Failed action also gives us the ability to send an email notification when a Flow fails. To enable Flow error notifications, set the Error Email Address (Gradient Works Settings under Custom Settings) field to whatever email address you wish notified and add a Failed action in your Flow fault path.

Much like with assignment notifications, you'll want to use an org-wide email address to ensure that your error notification emails conform to your organization's email policies.

1.22 (2021-04-08)

This one has a lot going on behind the scenes, but not so much... in front of (?) the scenes.

So what are these mysterious goings-on? I'm glad you asked.

One of the things we care about a lot is what we call "monitoring and observability". Basically, it's the whether or not you can figure out why an automation did what it did. That's where we've been focusing our time.

Since you've no doubt been following this changelog like a hawk, you'll recall that last week we added a new Automation section. This week we're building on that with some new functionality to help you track your Flows from start to finish (or failure, if something goes wrong). We call this the "Flow Lifecycle".

To get started, we've added two new actions: Start and Finish. If you add these to your Flows at the start and the finish (see what we did there), we'll be able trace the Flows and keep a record about each execution. This release lets us start keeping track of this stuff behind the scenes. A release in the very near future will make it visible to you.

Stay tuned.

1.21 (2021-04-01)

Unlike the rest of the internet we're not playing any dumb April Fools jokes. Brands, if you're reading this... it was cute back in 2005 or whatever but now it's just super annoying.


Ok, so we like Flows... a lot. So much so that we use them for all the routing workflows in Gradient Works. However, things can get a little confusing when you want to find and manage your Flows that specifically deal with Gradient Works. Behold, the new Automation tab. It provides a super convenient place to find all your Gradient Works Flows and to put them on a custom schedule that's not possible through regular Flow (e.g. run every minute).

Stay tuned to this tab because we have a lot of very cool stuff coming soon in this part of the application.

Cleaning up our CRUD (permissions)

If there's one thing that's simple and straightforward in Salesforce it's managing permissions for objects, fields and records across roles, profiles and permission sets. Haha, just kidding! It's actually a complete nightmare.

Anyway, we've done a lot of cleanup on how Gradient Works interacts with the permissions and restrictions in your org. We've updated our Gradient Works Admin and Gradient Works User permission sets to fix a few bugs and be more clear about how can do what. We've also made sure that the assignment actions happen irrespective of security constraints. This is a tradeoff but it makes it much easier to implement assignment automation when you don't know what user it'll execute under. This often happens with automation that kicks of via trigger or a UI quick action.

1.20 (2021-03-22)

This one is all about increasing observability.

Improved logging

Our previous logs were... serviceable at best. Now they're well on their way to being really usable. Each log entry includes a Request Id (aka a particular transaction in Salesforce) so you can see what executed together. Assignment History records now have that same Request Id so you can track them back to the related logs. We've removed a lot of extraneous logging, reduced the noise in the log messages themselves and made them more consistent. Finally, our most used Flow actions log consistently and even include durations so you can determine if particular actions are taking a long time to execute.

Usage Data

We now send limited usage data back to the Gradient Works Cloud when the Gradient Works managed package performs assignments. This does not include any private or personally identifiable data, only an indication that an assignment was performed. This will help us better understand customer usage and identify areas for improvement.

1.19 (2021-03-09)

We improved error handling for scheduled Flow jobs. We also made it possible to run Flows as a particular user using the GradientWorks.ScheduledJobs Apex class. Look for a comprehensive UI for scheduling coming soon.

1.18 (2021-03-04)

We're busy laying the groundwork for some new observability features coming in the next few weeks so this release is small but mighty.

Skip a rep, any rep

Sometimes you want to make sure a rep gets skipped during the next round robin assignment. Sometimes it's to even out some other inequity, sometimes it's related to performance. Who are we to judge? Anyway, it's now super easy to do. Just go to the Queue User edit screen and set the "Skip Next Times" field to the number of times you want to skip the user. Save and you're all set.

If you don't see "Skip Next Times", you may need to update the Gradient Works Queue User page layout assignments to v1.18 Gradient Works Queue User Layout.

Bug fix for disappearing fields when using RecordMaps

A couple weeks back we added some super handy functionality to do fast lookups. It turns out that if you use the action to build a record map from a field and you specify a field from the related object that has a null value, Flow doesn't just act like that field has a null value, it acts like that field doesn't exist at all. If that sounds very convoluted, it's because it is. Long story short, it was super annoying and we fixed it.

Documentation enhancements

We're continuing to expand and update these docs to make them as helpful as possible. Specifically we reorganized the topics on the left nav and expanded the queues section.

1.17 (2021-02-25)

Last week was incredibly cold in Austin and most of our team spent most of their time without power or usable water. Sadly, that made it hard to ship a release.

The good news? We're back with electricity, potable water and a deeper appreciation for the hardships endured by our ancestors!

All your assignment history in one place

Many routing workflows end up being a combination of Queue-based assignments and direct assignments. That created a little bit of a problem because Queue-based assignment history was stored in QueueItems and we didn't keep a long-term record of direct assignments.

That's all changed. Every assignment you make through Gradient Works is now recorded in AssignmentHistory. These are a permanent, reportable record for auditing purposes. They're all available to you in the "Gradient Works Assignment History" tab in the Gradient Works App.

We expect to build on this functionality in the coming weeks to give you significantly more insight into all your routing and assignment processes.

Add SOQL superpowers to your Flows

Every so often you need to retrieve some data and Get Records just doesn't cut it. Perhaps you want use IN or do a relationship query.

For those rare occasions, we've introduced a super-advanced Execute SOQL action that allows you to execute any SOQL query you want. Just remember that with great power comes great responsibility, so make sure to keep your queries focused and lean.

Admin beautification

We'll be the first to admit that the Gradient Works Admin tab isn't the most attractive UI. However, this ugly duckling is getting a multi-release makeover. We've started with the "cards" for setting up workflows and logging into the Gradient Works Cloud. They're now much more in tune with the Lightning Design System (aka more Salesforce-y) and much more self-explanatory.

1.16 (2021-02-11)

🧡🧡🧡 We've got an early Valentine's Day present for you in the form of some slick new Flow utilities along with some much-requested improvements to viewing and managing Queue round-robin slots.

Build Flows that run faster, faster

It's not always easy to make your Flows fast, efficient and compact. We're always looking for ways to make Flows work better so this week we added some new extensions to make building high performance Flows easier.

A very common task in Flow involves looping over a bunch of records and either grabbing a related record using a Lookup field or getting a value from a another field. We've introduced something called a RecordMap that makes efficient lookups like this super easy. Take a look at the docs for building a record map from a field, building a record map from a lookup and getting a value from a record map. Using this pattern will make your flows run faster and keep you within the Salesforce governor limits.

Add logging to your Flows

Add messages to the Gradient Works logs and the system debug logs directly from your Flow using Log Message. This can be very helpful in debugging and monitoring your Flow's performance. Try adding it to your Fault paths for a handy record if things go wrong.

Better queue slot management

We added clean new way of displaying the Queue round-robin slots and the ability to skip the next assignment with one click. Go click into a Queue in the Gradient Works Admin and look down the bottom left. Go ahead, we'll wait.

Just FYI, this will display up to the next 10 assignments (if you have that many slots). If you need to see the entire list of Queue slots, just click "View All".

1.15 (2021-02-04)

Hey, we're on a 3 week update streak. Not only do we have AppExchange news, we continued sanding off rough edges to make Queue admin even easier.

We're official!

We've officially completed Salesforce's review process so we're now "AppExchange Ready". What does this mean for you?

  • You can be sure that our code quality and security practices really are top notch

  • Our package no longer counts against your org's limits on Apex code, etc

  • You'll no longer get a gentle warning during installation about using packages that aren't certified for AppExchange

More Queue Users, fewer clicks, better info

We're continuing to make it faster to get up and running with your Queues. This week we've made it easy to find and add several users at once. Just go to the Queue record page and click "Add Users" in the Queue Users module. Select some users in the dialog that pops up and you're good to go.

We've also changed the layout of the Queue Users module to be more informative. Now you can see the Queue User status and last assignment time without having to click through to the related listing page.

1.14 (2021-01-28)

We're back with after just 1 week with some much requested features to make your life easier.

Duplicate Queues

There's now a handy "Duplicate" button in the top right on the Gradient Works Queue record detail page. Several folks asked for this to streamline workflow setups.

Click "Duplicate" to see your queue, queue users and round robin slots get magically cloned to a new queue for easy configuration. Note that the new queue will be reset to point to the first round-robin slot.

If you don't see the button, go to the Gradient Works Queue in the object manager and assign the v1.14 Gradient Works Queue Layout as your page layout. One day Salesforce will let us automatically update layouts from packages but today is not that day.

Direct assignment

Not every routing workflow needs to do assignment through a Queue. Often you need to set ownership directly for a user. That was previously a multi-step process involving Flow Assignment and Update Records elements. Now you can do it in one step with the direct assignment action. This action outputs an Assignment object that you can use later in the flow (to send notifications for example).

Queue Item reporting

For reasons unknown to Gradient Works historians, we hadn't enabled reporting on Gradient Works Queue Items. Reporting is now enabled so you can easily run reports to see what's being assigned. We regret the error.

1.13 (2021-01-21)

Smaller release this week. We've added a new layout for Gradient Works Queue Users but it primarily contains a few more minor changes needed for the Salesforce review.


We made some changes to the Gradient Works Queue User layout that existing customers can take advantage of by changing the Page Layout Assignment to the layout titled v1.13 Gradient Works Queue User Layout. Anyone that installs Gradient Works after this release will see the new layout automatically.


We mentioned in preview release notes that we are preparing for a Salesforce review as part of our plan to move out of private beta in the coming months. We had a few additional minor changes to make prior to submitting for review that are included in this release. Please reach out if you would like to know more about the results of the security scans or the changes we made as a result of it.

1.12 (2021-01-07)

We're back from the holidays with some new functionality.

Working hours

People don't work 24/7 (we don't have the technology — yet) and you may not want to assign things to them when they're not there. Good news! We've added working hours settings to your Queue Users. To access it, go to the Gradient Works app, find the Queue User you want to change and update the Working Hours Start and Working Hours End fields. See Queues for more about how to configure availability.

Lead matching

  • Custom filter logic - Previously all matching filter conditions had to be met to include a match. You can now select condition requirements for all ("AND"), any ("OR") or use custom condition logic such as 1 AND (2 OR 3).

  • Filter value variables - When configuring filter conditions, you can now use Flow variables as values. Previously these had to be text.

  • "Roll-up" ranker - Lead matching uses the concept of "rankers" to help break ties. In 1.11, we introduced field-based rankings to help you break ties based on the value of a field on the Account, Contact, etc being matched. Often you want to break ties based on a roll-up calculation like "use the matching account with the most opportunities". We've introduced a new type of ranker that allows these kinds of rankings. You can use these right alongside your field-based rankings and put them in whatever order you like to build complex tie-breaking rules. See rankings for more details.


We're preparing for a Salesforce review as part of our plan to move out of private beta in the coming months. We're pleased to report that a Salesforce code scan showed no issues with meaningful business impact. However, this release includes some updates to address a handful of items that were identified. We take quality, security and transparency extremely seriously so please reach out to us if you would like to see the results of our most recent scan. We'll be happy to share it confidentially.

1.11 (2020-12-17)

This is a big one folks. Lots of good stuff in here.

Lead Matching v1

You can now use Gradient Work to implement lead matching workflows prior to doing rep assignment. This has been by far our most requested functionality and boy is there a lot here.

  • Matching engine - We've been laying the groundwork for this over the past few releases but it's finally here and ready to use. This engine implements special matching rules that you control via Matching Actions in Flow. All matching is performed locally inside your Salesforce org.

    • Fuzzy match - Compare fields that are similar. Useful for matching, say, Lead Company with Account Name

    • Domain match - Compare fields that contain domain names (email, website, etc). Especially useful for matching Lead Email with Account Website

    • Exact match - Use when you want to ensure two fields have the exact same values

  • Matching actions - Like all of our other workflow components, matching is implemented using Salesforce Flow actions. Each custom action allows you to specify a set of match criteria, filter the candidate matches and rank the matches to determine which one is best. Here are the available actions:

  • ****Convert Lead action - Convert a lead directly within Flow just like you would through the Salesforce UI.

Gradient Works Cloud (GWC)

We started laying the groundwork for cloud-enabled functionality that will come in future releases. No data is being sent to GWC automatically but we're putting the plumbing in. As you'll notice we care a lot about your data security so much of the plumbing is related to that.

  • Enable/Disable GWC - You can globally toggle GWC on or off via the GWC Enabled field in Gradient Works Settings under Custom Settings. When GWC is disabled, no data is sent or received from the GWC even if you previously authenticated. This setting is enabled by default but no data is sent unless you authenticate.

  • Improved authentication - Previously you could securely authenticate with GWC but it was a little bumpy. Now it's smooth while still being very secure. Your API tokens are encrypted in your SFDC org using an AES 256 key stored in package protected metadata that is unique to your org. This prevents us or any other user from reading this sensitive data and accessing the GWC API on your behalf.

  • Data encryption at rest - All communication with GWC was already protected in transit using TLS. Now all data stored by GWC is encrypted at rest in our AWS databases as well.

  • Telemetry collection - If GWC is enabled and authenticated, Gradient Works will collect some "telemetry" data and send it to GWC.

    • The only data we currently collect is information about closed opportunities which will be used to train future machine learning models for rep performance.

    • No PII or business-identifiable data is transferred, only SFDC ids, creation dates, close dates, win/lost status and amount. The data we send is encrypted in transit and at rest. You can see precisely what we send in the Payload__c field on the Gradient Works Telemetry custom object.

    • We make sure this data collection is very light on your org. We register a very lightweight trigger on Opportunity which generates platform events when opportunities are closed. The API data is then generated by a trigger on that event, stored in a Gradient Works Telemetry object and then sent to GWC hourly by a scheduled job called Gradient Works Process Telemetry.

    • Gradient Works Telemetry objects are stored for 7 days be default. You can control this retention setting via the Telemetry Retention Days field in the org-wide Gradient Works custom settings.

Other Things

  • These docs - We'll be publishing docs with every release from here on out while maintaining an archive of previous docs. You can access the latest version at

  • SFDC Org OAuth - With permission, Gradient Works can now authenticate with your SFDC org which will help with diagnostics.

Bug Fixes

  • Log entry message not displaying in detail view - Under certain circumstances the log entry message wasn't visible when looking at log entries. That's not super helpful but it's all better now.

1.10 (2020-12-02)

This release didn't have much in the way of user-facing changes; it was all about the lead matching backend.

1.9 (2020-11-12)

  • Use org-wide email address for assignment notifications - When sending assignment notifications, you'll often want to use an org-wide email address to ensure that your notification emails conform to your organization's email policies.

  • Laying the lead matching groundwork - Start on the core engine for lead matching.

1.8 (2020-10-29)

  • Assignment email notifications - Want to make sure your reps know when something's assigned to them? Now you can send an email to the user when they're assigned to an item using the new "Notifications: Send Single Assignment Email" action in flow.

  • Item viewer - Previously, when you looked at a QueueItem in the Gradient Works SFDC app we only showed you the Id and Type of the Salesforce object (e.g. Account, Lead, etc) being assigned. This wasn't super helpful if you wanted to know exactly what was assigned. There's now a nice side panel to give you more info about the object and let you jump straight to the record detail page. (Note: Tasks and Events aren't currently supported because Salesforce makes them weird).

  • Logging - There's nothing more annoying than trying to figure out why something got assigned without having a clear log of everything that happened. We've made a new tab available in the Gradient Works SFDC app that shows you a log of what went down. It might even be a little much right now but we wanted to start somewhere.


Prior to 1.8, we shipped the basic assignment engine with flows to support assignment, capacity management and weighting.

Last updated