Webhook Deduplication and Duplicate Processing Prevention

Hi Celigo Team,

I am reaching out to get guidance on implementing a short-lived locking mechanism inside integrator.io to prevent duplicate processing caused by a webhook feedback loop.

Background

We have a Shopify customers/update webhook that triggers a flow (Flow A) which syncs customer data to Microsoft F&O. At the end of this process, it writes an internal F&O ID back to a Shopify customer metafields.

This metafield write causes Shopify to trigger the customers/update webhook a second time, triggering Flow A again for the same customer. This results in the same customer being processed twice concurrently.

We need a mechanism to detect and discard this echo webhook run before any processing occurs.

Questions

  1. What is the recommended Celigo-native approach for preventing the same record from being processed twice across concurrent flow runs triggered by the same webhook?

  2. Is there a way for a hook script or filter script to read and write temporary state data that persists across concurrent flow runs? If so, what are the options?

  3. Are there any built-in Celigo features specifically designed for deduplication or concurrency control at the record level? Does look up cache support such function?

Any documentation, examples, or recommended patterns for this specific scenario would be greatly appreciated.

Thank you