We are using the QuickSight Embedding SDK (v2.11.3) with GenerateEmbedUrlForRegisteredUser and SharedView: { Enabled: true } in FeatureConfigurations.
When a user changes a visual filter (e.g., job_id) in the embedded dashboard and we call createSharedView(), the CreateCustomView response shows parameterValues: null.
When we consume the shared view using viewId in contentOptions with a fresh embed URL, the dashboard loads but the visual filter state is not restored.
Our dashboard uses visual filters, not dashboard parameters (getParameters() returns an empty array).
Questions:
Does createSharedView() capture visual filter state, or only dashboard parameter values?
Is viewId in contentOptions supposed to restore visual filter state when using a new embed URL session?
The native QuickSight sharing docs state “They see any parameters, filters, or controls that you changed” - does this also apply to embedded SDK shared views?
Environment:
Thank you for this question and for including relevant details.
To answer your questions:
Does createSharedView() capture visual filter state, or only dashboard parameter values?
The documentation for createSharedView() shares that it captures parameter and control state, but it does not mention standalone visual-level filter state being included. This means we need to understand if this is a known limitation or expected behavior. Therefore I’d recommend raising a ticket with AWS Support, to allow time to investigate the specific behavior in your account and region.
Does viewId in contentOptions restore visual filter state?
The viewId restores the state that was captured at shared view creation time (Consuming a shared view). If visual filter state was not included in the captured state, it would not be restored via viewId.
Does native QuickSight sharing behavior apply to embedded SDK shared views?
Native Amazon Quick sharing and sharing via the Embedding SDK’s createSharedView() are different. The native sharing statement about seeing “parameters, filters, or controls” applies to the full Amazon Quick console experience.
Given the above, there are two methods you can consider to achieve your goal:
Convert visual filters to parameter-driven filters
Create dashboard parameters, link them to your filters using the Use Parameters option in the filter settings, then use parameter controls to drive filtering. This ensures createSharedView() captures the filter state through parameterValues, and viewId will correctly restore it.
Use runtime filtering via the Embedding SDK (v2.5.0+)
This supports methods like getFilterGroupsForVisual() and addFilterGroups() to capture and apply visual filters allowing you to achieve your filtering goals independent of the method you use to create the shared Embedded view.
I wanted to follow up as it has been a while since last communication occurred on this thread. Were you able to make any progress in regard to your situation? If you still have any additional questions related to your initial post, feel free to share them. Otherwise, any update you’re able to provide within the next 3 business days would be helpful for the community.