How to Refresh Customer Insights – Journeys Segments On Demand Using Power Automate

 

How to Refresh Customer Insights – Journeys Segments On Demand Using Power Automate



Introduction

Recently at ps Hummingbird, our developer team faced a challenge - we needed to refresh a Customer Insights – Journeys (CIJ) segment immediately, rather than waiting for the standard 30-minute refresh cycle enforced by Microsoft. This was crucial for a real-time campaign we were preparing.

Why Microsoft Uses This Refresh Frequency

The 30-minute segment refresh intervals are designed to:

  • Ensure accuracy by frequently updating active segments

  • Optimise system performance by reducing processing for inactive segments

  • Scale efficiently, especially when working with large or complex segment sets

Microsoft enforces this refresh cadence to strike a balance between data freshness and system resource allocation.

However, since CIJ does not support manual or on-demand refreshes via the UI, we explored a backend workaround - and successfully triggered segment refreshes using Power Automate and an unbound action in Dataverse.

Here’s how we did it, step-by-step 👇

Step 1 – Open Advanced Find and Locate Your Segment

Using Advanced Find in Dynamics 365:

  • Open Advanced Find.

  • Set "Look for" to Segments.



Step 2 – Select and Open the Target Segment

  • From the list of segments, click on the segment name (e.g. Demo).

  • This opens the segment’s record.




Step 3 – Copy the Segment ID

  • In the segment record URL, locate and copy the GUID after id=.

  • Example: 096da052-c654-f011-bec2-002248e40760

This is your Segment ID.




Step 4 – Create a Power Automate Flow

  • Go to Power Automate and create a new Instant Cloud Flow.

  • Add a trigger: Manually trigger a flow.


Step 5 – Use the Unbound Action in Dataverse

  • Add a new Dataverse step: Perform an unbound action.

  • In the action name, enter: msdynmkt_RefreshSegment

  • In the SegmentId field, paste the ID from Step 3.





Step 6 – Run the Flow

Once your flow is set up:

  • Manually run the flow.

  • It will immediately trigger a refresh on the selected segment.

Check the segment record again, and you’ll see the Last update timestamp reflect the current time — confirming that the segment was refreshed.

Final Thoughts

I just created a manual on-demand flow, but this is a very powerful way to automate segmentation refresh if you really need it.

While Microsoft’s 30-minute refresh interval is in place to optimise system performance (as per official documentation), there are real-world cases where more immediate control is needed.

With this workaround using Power Automate + Dataverse unbound actions, you can: 👉 Refresh segments on-demand 👉 Align segments with last-minute campaign data 👉 Empower marketers with quicker turnaround

Comments

Popular posts from this blog

Automating Event Registration: Get CIJ Segment Contacts Using Power Automate

Why Segment Refresh Matters for Your Dynamics 365 Campaign