I’ve used 19,000+ operations trying to get this to work:
The goal is to integrate a non-profit animal shelter’s database, managed by Shelter Manager, with their website built with Webflow CMS. This involves syncing the animals’ data (dogs and cats) between the two platforms.
The intended operations include:
- Adding new animal entries from Shelter Manager to the Webflow CMS collection.
- Updating existing animal entries on Webflow CMS if changes occur in the Shelter Manager database.
- Deleting animal entries from the Webflow CMS collection if they are removed from the Shelter Manager database.
These operations should take place 1-2 times a day using Make.com’s services.
Currently, the scenario is only able to add new items to the specified Webflow CMS collection. Each run of the scenario results in new CMS items being added from the first iterated bundle by the Iterator module which is iterating data from the HTTP Make a Basic Auth Request module. This leads to duplication of items in the CMS collection.
It was initially thought that by attaching unique IDs (20. ID:) from the Iterator module to a field (Pet ID:) in each Webflow CMS Item, the data could be filtered to go to one of three Webflow operations: Create, Update, or Delete.
- Create an Item: If there is no existing Webflow CMS Item with a matching value in the Pet ID field, a new item would be created.
- Update an Item: If a Webflow CMS Item with a matching ID in the Pet ID field exists and the ID still exists in the iterated data from the HTTP Make a Basic Auth Request module, the existing item would be updated.
- Delete an Item: If a Webflow CMS Item contains a Pet ID value that no longer exists in the iterated data from the HTTP Make a Basic Auth Request module, that item would be deleted.
Despite multiple attempts with various filters, tools, and arrangements, the Update and Delete operations have not been successful. Also, the system hasn’t been able to prevent duplication of Webflow CMS.
Also, the scenario only deals with ~105 pets coming from the HTTP Get but burns operations like crazy.