REST v2 - Action Sets

We are in the process of moving from xmlrpc to RESTAPIv2. I’m not seeing in the new API how we can trigger Action Sets.

Some googling and bringing up old forum posts suggests that Action Sets are a legacy feature and will not be included in the new API.

I wanted to get confirmation that this is indeed true as I can’t find anywhere officially talking about this. If there is, please point me to it.

When we login to Keap and go to Settings → Action Sets, there’s no indication that this is a legacy feature that presumably would be going away.

My client has many Action Sets and we utilize them in different ways - adding/removing tags, sending tasks, sending emails, etc. Sometimes there are many steps to one singular Action Set.

I would like to ask for a few clarifications:

  1. Are Actions Sets indeed a legacy feature and will they eventually be removed from the system?

  2. Does the RESTv2 currently support Actions Sets? If not, can this be added?

  3. If support will not be added, what is our alternative?

Keap Action Sets are very powerful and take care of a lot of logic. It would be a shame if we need to redo everything, this would take us a lot of development time. Keep in mind we have been a customer for around 17 years now and have used these old features for a long time.

If you could answer our questions and give us steps on what to do next this would be appreciated.

Action Sets are indeed considered a legacy feature, and at this time we do not have plans to add support for them in REST API v2.

This is part of the article we published covering XML-RPC functionality that will not be converted to REST v2:

XML-RPC Endpoints Not Being Converted to REST v2

I completely understand your concern here, especially given how heavily your implementation relies on Action Sets and the amount of business logic they encapsulate.

I’m going to dig into this further internally and follow up with you regarding any future plans for this capability, or similar alternatives moving forward.

@OmarAlmonte, here is a comparison between the Action Set and Automation Process.

Your company had plenty of years to replicate all of the Action Set functionality in the Automation, but have failed to do so.

The Process Action Set (Legacy) item has had the word Legacy for many years and asks people why they still use it. It must be pretty clear that the Automation cannot do everything like “Create Referral Partner”.

The only solution for us is to create an Automation with a Process that replicates the Action Set functionality, or set it to run a specific Action Set.

Any update on this? As Pav said I understand Automations are similar, but we would have to redo all of the action sets to be an automation then.

Are there plans for any kind of import feature?

Is there also any chance they could temporarily offer a way to call action sets via the API until something like that is offered?

Just need to know what to tell my client the plan is and how long this update is going to take.

It seems that without using the ‘New Automation Builder’, an Action Set can be run from within the automation. Is it possible to trigger automations created with the Current Automation Builder using the REST API v2 and run an Action Set that way?

@CG_Dev @Tony_Dietsch We don’t have any updates on that at the moment.

However, it is possible to trigger automations via the API using this endpoint: Keap REST API.

With this, you can execute an existing automation, but there is no direct support for triggering action sets via the API.

@CG_Dev I would recommend in the short run that you use the workaround that @OmarAlmonte mentioned above to run the action set using an automation sequence and trigger that automation sequence using an API goal.

I would setup a single automation w/ a sequence for each legacy action set you need to trigger.

Refactor your code to trigger the API goal for the sequence mapped to the legacy action set.

Then I would evaluate your action sets. Can you consolidate actions into a single automation sequence, or and really need to recreate every action set?

For example I have one client with a membership area with different levels. They need one sequence to add the user to WordPress, not one for each level.

Thanks, I was able to find it, I did not see it initially. Not ideal since it is eventually going away but fine for now.

Yes, we will evaluate them but an import feature would be nice once that day does come. Idea for Keap.

@CG_Dev, how many Action Sets are you dealing with?

Adding to Marion comment, when you create the API Goals for each Sequence, you can give it an Integration and Call Name. You can make the Call Name match the same as the Action Set ID number, eg: “as_123”.

Then when you migrate your code, you are just replacing the XML-RPC Action Set endpoint with the REST Achieve Goal Endpoint instead. You just supply the Action Set ID to the Call Name.

Just make sure that use the same naming convention.

Alternatively, you could try migrating it all to the Automation Builder if possible, but that will require more work.

I’d like to add some context to this conversation, @CG_Dev

About four or five years ago, I was on-site with a client during the holidays. I had flown down in December for our annual planning and social gathering. While we were sitting around a conference table, our application’s API access was suddenly disabled.

The cause was entirely on our side. We had an API function that triggered legacy Action Sets. At the same time, we performed a very large update that caused an enormous number of Action Sets to fire simultaneously. That flood of requests completely exhausted our available API capacity, and Keap effectively shut off our ability to make API calls.

From Keap’s perspective, it looked like a massive burst of ungated API traffic.

Talk about an embarrassing moment!

Fortunately, we worked directly with the Keap API team and got everything resolved while it was happening.

Since then, we’ve changed our architecture. Rather than triggering Action Sets through the API, we’ve moved almost everything to Goal completions and Tag applications. Those legacy Action Sets are still incredibly valuable in my opinion, and I sincerely hope Keap never removes them from the platform. We’ve simply found a much better pattern that avoids having to invoke them directly through the API.