API for Deal Pipelines/Groups

Hi all,

I was trying to list all my deal pipelines using the API end point. The official documentation here suggests to use the https://{youraccountname}.api-us1.com/api/3/dealGroups url.

However we are not located in the US and our account’s url uses activehosted instead of api-us1. Upon replacing the api-us1 bit with activehosted, it returns all the deal stages with their associated deal group/pipeline, instead of the pipelines and the list of stages inside the pipeline as shown on the official docs. In other words, using https://myaccount.activehosted.com/api/3/dealGroups I got the same output as from https://myaccount.activehosted.com/api/3/dealStages.

Does anyone know what the url is if I want to get the output in the same format as from the official docs? Thanks very much

Hi Julian,

You’re absolutely right to notice the discrepancy in behavior when using activehosted in place of api-us1. ActiveCampaign uses different subdomains (api-us1, api-eu1, etc.) depending on your account region, but all API calls should go through the correct API-specific subdomain, not the general activehosted one.

So, to get the correct response format for listing all deal pipelines (with associated stages as nested data), you should use:

https://<youraccount>.api-<region>.com/api/3/dealGroups

For example:

  • If you’re in the EU, it might be api-eu1.
  • If you’re in another region, replace accordingly.

To find your correct API base URL, you can:

  1. Log into your ActiveCampaign account.
  2. Go to Settings > Developer.
  3. Check the API Access section — it will show your account’s correct API URL.

Using the correct API domain should return the dealGroups (pipelines) in the expected format, as shown in the documentation.

Hope this helps!

Thanks for replying Alanna.

I’m in Sydney so I reckon it would be api-ap1 for me? But upon replacing activehosted with api-ap1 the page would return the error: The page can’t be reached.

In my account setting the url I see is myaccount.activehosted.

Maybe our account only has access to the older version of the API?

Thanks again