Hi HS Community,
I am a developer working at a mid-sized business that uses Hubspot as its CRM and bulk mailing platform. My predecessor did the bulk of the initial set up of the platform and left limited documentation. The web UI seems to provide limited discoverability on where lists are used, how static lists are populated (i.e. as a point in time of a particular query, or as a list that is pushed to by a workflow or by end users manually subscribing records into it), etc.. This means that decisions to modify configurations take longer than they might otherwise as it takes a lot of manual work to confirm that there are no knock-on effects.
In addition to the issues with discoverability, I am also a bit concerned about a lack of transparency in how, when and why configs were updated and modified.
I think the bulk of these issues could be solved if there was a config as code interface which would be able to be intergrated into standard change management processes (svn/git for version control, etc.) and should also allow for an easier way to confirm where and how various variables(lists, properties, etc) are being used - and allow me to bring our CRM mangement in line with the quality standards we apply to the rest of our IT environment.
Can anyone point me to the functionality, should it exist, or if this functionality is part of Hubspot’s future roadmap?
Hi @DevAccountHS and welcome, it’s a pleasure to have you here! ![]()
Thanks for your valuable feedback, it means a lot to us!
I’d recommend sharing it also on the HubSpot Developer Feedback Form so that the right Team can get their eyes on it.
Let’s check with our Top Experts: Hi @Syeda_Fatima, @sylvain_tirreau and @Anton do you have any thoughts or suggestions to add to help @DevAccountHS, please?
At the moment, you can use APIs to access and manage your data but if the type of configuration as code you need requires more than this, for new feature suggestions, I’d recommend first to search and check if this idea is already present on our Ideas Forum here. If you find a similar idea, give it an upvote and share your unique use case in the comments.
If the idea doesn’t exist already, please consider posting and creating a new Idea on our Ideas Forum here.
Thank you for being part of the discussion!
Have a wonderful day!
Bérangère
Hey @DevAccountHS,
let me knock out the defaults first before going into details:
- Lists, the “change history” feature is indeed quite limited as you got only the Activity Tab per list.
- Workflows, have a revision history. You can see it when opening a workflow and then select view → Revision history
- If you’re creating web-assets in the Design-Manager, you can select a file and select " Actions → show revision history" in the left sidebar
- A Portal-wide action history can be found in the settings (gear icon top right) → Audit log
- CRM items like Contacts/Companies/Quotes… have an “Activities” tab when viewing them
Adding something like Git to HubSpot is a good idea for many use-cases, but also should be thought about carefully as it might come with a ton of work and limitations.
If you like to create some sort of constant mirroring, best way to start is by using a private app. If you have Enterprise, you could think of creating a serverless function as well. With Operations Hub, you could set up a custom coded action workflow.
The main idea here is, that the private app (just an example) would have a “fetch-from-HS-push-to-git” API logic that would be triggered every hour/day/week (whatever you like; but consider the API rates).
You also can use external services like AWS/Azure/Firebase… to run such app.
Something I wouldn’t recommend to do is to set up the system in a way that will let you become the SOT(source-of-truth). This means that if your colleagues are interested in the data as well, create some sort of dashboard card (i.e iFrame), that will display all changes made to the users or put up a simple website (i.e membership portal) with the history data from Git…
Just think about going on vacations and getting emails like “Help! XYZ stopped working. Tell me who I should yell at” ![]()
best,
Anton