Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Join us at FabCon Vienna from September 15-18, 2025, for the ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM. Get registered

Reply

Cloning and Publishing Eventstream via Fabric API — Response 202 but Blank Eventstream

Hi all,

I'm working on cloning an existing Fabric Eventstream using the Fabric REST APIs. The goal is to automate the process of duplicating a working Eventstream and publishing it with a new display name.

What I did:

  • Used the /getDefinition API to extract the full Eventstream structure.

  • Decoded all payload parts (such as eventstream.json, platform.json, etc.).

  • Modified the displayName in platform.json to differentiate the cloned stream.

  • Re-encoded the parts to Base64 and used the /items POST API to create a new Eventstream.

What happens:

  • The initial response is 202 Accepted, and I receive a Location header.

  • I poll the Location URL until I get a 200 OK response.

  • The final response shows "status": "Succeed".

The issue: Despite a successful status, the cloned Eventstream appears blank in the Fabric UI — no sources, streams, or destinations are shown.

Questions:

  1. Are there additional validation checks or metadata required for a proper Eventstream publish?

  2. Do we need to explicitly include or transform certain properties beyond what's returned by /getDefinition?

  3. Are there known limitations or issues with using the Eventstream API for cloning and provisioning?

I’d appreciate any help or insights from others who have successfully implemented this or faced a similar issue. I can provide sanitized code snippets if needed.

Thanks in advance.

1 ACCEPTED SOLUTION
v-aatheeque
Community Support
Community Support

Hi @PrachiJain_2025 ,

  • Replace any original itemId, workspaceId, or dataConnectionId with those relevant to the new workspace/resources.
  • The Fabric UI might not immediately reflect the cloned Eventstream due to caching or a delay in provisioning the underlying resources (e.g., Event Hubs namespace).
  • The Eventstream REST API might not fully support cloning complex configurations (e.g., transformations or enhanced capabilities) in a single POST operation, requiring additional steps.
  • Eventstreams rely on connections to sources and destinations (e.g., Azure Event Hubs, KQL Databases). If the cloned definition retains original workspace-specific IDs or connection references that don’t exist in the new context, Fabric might silently discard those components.
  • After calling /getDefinition, ensure the response includes all expected parts: eventstream.json (defining sources, destinations, operators, streams) and platform.json (metadata like displayName).
  • Event streams often link to external resources via IDs (e.g., dataConnectionId for Event Hubs or itemId for a Lakehouse). If these IDs are workspace-specific, reusing them in a new Eventstream could cause Fabric to ignore those components.

Reference : https://learn.microsoft.com/en-us/fabric/real-time-intelligence/event-streams/eventstream-rest-api

Hope this helps !

Did I answer your question? Then please mark my post as the solution.

View solution in original post

5 REPLIES 5

Thank you, will ask if any question further

Thank you, will ask if any question further

v-aatheeque
Community Support
Community Support

Hi @PrachiJain_2025 ,

  • Replace any original itemId, workspaceId, or dataConnectionId with those relevant to the new workspace/resources.
  • The Fabric UI might not immediately reflect the cloned Eventstream due to caching or a delay in provisioning the underlying resources (e.g., Event Hubs namespace).
  • The Eventstream REST API might not fully support cloning complex configurations (e.g., transformations or enhanced capabilities) in a single POST operation, requiring additional steps.
  • Eventstreams rely on connections to sources and destinations (e.g., Azure Event Hubs, KQL Databases). If the cloned definition retains original workspace-specific IDs or connection references that don’t exist in the new context, Fabric might silently discard those components.
  • After calling /getDefinition, ensure the response includes all expected parts: eventstream.json (defining sources, destinations, operators, streams) and platform.json (metadata like displayName).
  • Event streams often link to external resources via IDs (e.g., dataConnectionId for Event Hubs or itemId for a Lakehouse). If these IDs are workspace-specific, reusing them in a new Eventstream could cause Fabric to ignore those components.

Reference : https://learn.microsoft.com/en-us/fabric/real-time-intelligence/event-streams/eventstream-rest-api

Hope this helps !

Did I answer your question? Then please mark my post as the solution.

Hi @PrachiJain_2025 ,

If you find this post helpful, please mark it as an "Accept as Solution" and consider giving a KUDOS. Feel free to reach out if you need further assistance.
Thanks and Regards

Hi @PrachiJain_2025 ,

If you find this post helpful, please mark it as an "Accept as Solution" and consider giving a KUDOS. Feel free to reach out if you need further assistance.
Thanks and Regards

Helpful resources

Announcements
Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

May FBC25 Carousel

Fabric Monthly Update - May 2025

Check out the May 2025 Fabric update to learn about new features.

June 2025 community update carousel

Fabric Community Update - June 2025

Find out what's new and trending in the Fabric community.

Top Solution Authors