Versioning with Asset Bundle API

Hi, we would like to use the asset bundle API to deploy dashboards across environments. However, we have noticed in the past (using other QS APIs) that replacing a dashboard causes users to lose their bookmarks that they’ve created via the bookmarks side pane in QS. As a workaround, we’ve started publishing new versions of our existing dashboards instead of replacing them.

Does the asset bundle API support publishing a new version of a dashboard instead of replacing the existing dashboard? If not, what’s the best way to publish our dashboards across environments without causing users to lose their bookmarks?

Hi Ian,

Can you elaborate how you are importing assets…
1/Whether different environments are different Quicksight accounts?
2/ Are you updating dashboard or creating a new dashboard every time you import dashboard?

From QuickSight documentation:
An Asset Bundle import job imports specified Amazon QuickSight assets into an Amazon QuickSight account. You can also choose to import a naming prefix and specified configuration overrides. The assets that are contained in the bundle file that you provide are used to create or update a new or “existing asset” in your Amazon QuickSight account.
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/quicksight/client/start_asset_bundle_import_job.html

1/Whether different environments are different Quicksight accounts?

Yes

2/ Are you updating dashboard or creating a new dashboard every time you import dashboard?

Today we are updating the dashboard.

Hi Ian,

Sorry for delay in response.

Asset bundle API can update dashboard if it already exist. If not present it will create it.

Excerpt from QuickSight documentation:
“An Asset Bundle import job imports specified Amazon QuickSight assets into an Amazon QuickSight account. You can also choose to import a naming prefix and specified configuration overrides. The assets that are contained in the bundle file that you provide are used to create or update a new or existing asset in your Amazon QuickSight account.”

Bookmarks are user preference setting for filter values, and independent of dashboard. Users between environment can be different, so bookmarks are not captured as part of dashboard definition. However if you re-publish dashboards using asset bundle (export/import) API, if definition is originating from same source dashboard (in source environment) than visual-ids will be same, so it should not break the bookmarks values in target environment when dashboard are re-published and updated for same dashboard Ids.

Regards,
Anwar Ali

1 Like

Just want to add to the topic of bookmarks. Bookmarks rely on UUIDs for sheets, filters, parameters etc. If the author performs an action that cause those UUID to be regenerated then bookmarks become unusable. Most common actions that authors perform today do not cause UUIDs to be regenerated. For those other cases, we will make improvements in the future.

1 Like