Embedding Code Formats
When embedding pixel-perfect dashboards, KPI dashboards, or Analytical Designer, you need to construct the URL for an embedded object.
The structure of the URL varies depending on whether you use Life Cycle Management (LCM; see Managing Workspaces via Life Cycle Management) and also on the method of identifying the embedded object.
In GoodData, terms workspace and project denote the same entity. For example, project ID is exactly the same as workspace ID. See Find the Workspace ID.
Embed Pixel-Perfect Dashboards
When embedding pixel-perfect dashboards (see Embed Dashboards and Reports), you need to identify the embedded dashboard and where it belongs to (workspaces to use).
Identify the Dashboard
As best practice, use the dashboard identifier (/obj/identifier:{dashboard_identifier}
). Alternatively, you can use the dashboard ID (/obj/{dashboard_id}
).
If you use LCM, always use the dashboard identifier.
We recommend that you use the dashboard identifier over the dashboard ID because the ID of the same dashboard can be different in different workspace. The dashboard identifier, however, will always be the same if the workspace is cloned or imported with partial metadata import.
For details about the identifiers, see Acquiring Object Identifiers for Workspace Metadata.
Identify the Workspace
To identify where the dashboard belongs to:
If you do not use LCM, use the workspace ID (see Find the Workspace ID).
If you use LCM, use the combination of the data product ID and client ID (see Managing Workspaces via Life Cycle Management).
If you do not know the data product ID or do not use data products in your LCM implementation, use the valuedefault
instead of the data product ID.
Construct the URL
Without LCM
Use the workspace ID and the dashboard identifier:
https://{your.domain.com}/dashboard.html#project=/gdc/projects/{workspace_id}&dashboard=/gdc/md/{workspace_id}/obj/identifier:{dashboard_identifier}
Use the workspace ID and the dashboard ID:
https://{your.domain.com}/dashboard.html#project=/gdc/projects/{workspace_id}&dashboard=/gdc/md/{workspace_id}/obj/{dashboard_id}
With LCM
Use the dashboard identifier and the combination of the data product ID and client ID:
https://{your.domain.com}/dashboard.html#project=/gdc/projects/client:{data_product_id}:{client_id}&dashboard=/gdc/md/client:{data_product_id}:{client_id}/obj/identifier:{dashboard_identifier}
If you do not know the data product ID or do not use data products in your LCM implementation, use the value
default
instead of the data product ID. For example:https://{your.domain.com}/dashboard.html#project=/gdc/projects/client:default:{client_id}&dashboard=/gdc/md/client:default:{client_id}/obj/identifier:{dashboard_identifier}
Embed KPI Dashboards
When embedding KPI dashboards (see Embed a KPI Dashboard), you need to identify the embedded KPI dashboard and where it belongs to (workspaces to use).
Identify the Dashboard
As best practice, use the dashboard identifier (/dashboard/{dashboard_identifier}
). Alternatively, you can use the dashboard ID (/dashboardId/{dashboard_id}
).
If you use LCM, always use the dashboard identifier.
We recommend that you use the dashboard identifier over the dashboard ID because the ID of the same dashboard can be different in different workspace. The dashboard identifier, however, will always be the same if the workspace is cloned or imported with partial metadata import.
For details about the identifiers, see Acquiring Object Identifiers for Workspace Metadata.
Identify the Workspace
To identify where the KPI dashboard belongs to:
If you do not use LCM, use the workspace ID (see Find the Workspace ID).
If you use LCM, use the combination of the data product ID and client ID (see Managing Workspaces via Life Cycle Management).
If you do not know the data product ID or do not use data products in your LCM implementation, use the valuedefault
instead of the data product ID.
Construct the URL
Without LCM
Use the workspace ID and the dashboard identifier:
https://{your.domain.com}/dashboards/embedded/#/project/{workspace_id}/dashboard/{dashboard_identifier}
Use the workspace ID and the dashboard ID:
https://{your.domain.com}/dashboards/embedded/#/project/{workspace_id}/dashboardId/{dashboard_id}
With LCM
Use the dashboard identifier and the combination of the data product ID and client ID:
https://{your.domain.com}/dashboards/embedded/#/product/{data_product_id}/client/{client_id}/dashboard/{dashboard_identifier}
If you do not know the data product ID or do not use data products in your LCM implementation, use the value
default
instead of the data product ID. For example:https://{your.domain.com}/dashboards/embedded/#/product/default/client/{client_id}/dashboard/{dashboard_identifier}
Embed Analytical Designer
When embedding Analytical Designer (see Embed Analytical Designer), you need to identify the embedded insight and where it belongs to (workspaces to use).
Identify the Insight
Use the insight ID. For details about the identifiers, see Acquiring Object Identifiers for Workspace Metadata.
Depending on your use case, you can choose to open the form for creating a new insight instead of opening a specific insight.
Identify the Workspace
To identify where the insight belongs to:
If you do not use LCM, use the workspace ID (see Find the Workspace ID).
If you use LCM, use the combination of the data product ID and client ID (see Managing Workspaces via Life Cycle Management).
If you do not know the data product ID or do not use data products in your LCM implementation, use the valuedefault
instead of the data product ID.
Construct the URL
Without LCM
Use the workspace ID and the insight ID to open a specific insight:
https://{your.domain.com}/analyze/embedded/#/{workspace_id}/{insight_id}/edit
Use the workspace ID, and set the URL to open the form for creating a new insight:
https://{your.domain.com}/analyze/embedded/#/{workspace_id}/reportId/edit
With LCM
Use the insight ID and the combination of the data product ID and client ID to open a specific insight:
https://{your.domain.com}/analyze/embedded/#/client/{data_product_id}:{client_id}/{insight_id}/edit
Use the combination of the data product ID and client ID, and set the URL to open the form for creating a new insight:
https://{your.domain.com}/analyze/embedded/#/client/{data_product_id}:{client_id}/reportId/edit
If you do not know the data product ID or do not use data products in your LCM implementation, use the value
default
instead of the data product ID. For example:https://{your.domain.com}/analyze/embedded/#/client/default:{client_id}/reportId/edit
Embedding in an SSO Environment
If you have Single Sign-On (SSO) set up, pay special attention to how your SSO environment is configured, especially to the RelayState
parameter. For more information, see SAML SSO with GoodData.