Embed Analytical Designer

Embedding Analytical Designer creates a version of Analytical Designer minus all GoodData branding and platform functions (open as report, CSV Uploader) for use in your own product.

The minimum dimension of 1100x575 pixels is required for Analytical Designer to be embedded correctly.

Contents:

Create a URL for Embedding Analytical Designer

Steps:

  1. Log in to the GoodData Portal.
  2. Click the Analyze tab.
  3. Check the URL in the browser bar. For example:

    https://secure.gooddata.com/analyze/#/{project_id}/reportId/edit
  4. Add the string /embedded/ into the URL after /analyze. For example:

    https://secure.gooddata.com/analyze/embedded/#/{project_id}/reportId/edit

    By default, you would have the project ID in your URL. However, If you use LCM (see Managing Projects via Life Cycle Management), use the combination of the data product ID and client ID instead of the project ID:

    https://secure.gooddata.com/analyze/embedded/#/client/{data_product_id}:{client_id}/reportId/edit

    For more details about formats of the embedded URL, see Embedding Code Formats.

  5. (Only when you have tags assigned to attributes, measures, facts, or date datasets) If you want to configure hiding and displaying attributes, measures, or dates based on tags, add either of the following parameters to the URL:
    • ?includeObjectsWithTags=[tagName] - to show only the attributes, measures, facts, and dates with the specified tag
    • ?excludeObjectsWithTags=[tagName] - to hide the attributes, measures, facts, and dates with the specified tag
    https://secure.gooddata.com/analyze/embedded/#/{project_id}/reportId/edit?includeObjectsWithTags=[sales]
    
    https://secure.gooddata.com/analyze/embedded/#/{project_id}/reportId/edit?excludeObjectsWithTags=[marketing,hr]

    Do not specify both the parameters at the same time. If you do, only the includeObjectsWithTags parameter is applied, and the excludeObjectsWithTags parameter is ignored. You can specify more than one tag by separating them with a comma. The tags must include only lowercase characters, uppercase characters, and numbers.

    Hiding and displaying attributes, measures, facts, and dates is not a security feature. Attributes, measures, facts, and dates are hidden and shown depending on the parameter in the URL, and anyone who can access and edit the URL can change the parameters and display all the attributes, measures, facts, and dates.

    For more information about adding tags to attributes, measures, facts, or date datasets, see: 

You can now use this completed URL as the basis for embedding Analytical Designer.

The following is an example reference for embedding Analytical Designer to open to the form for creating a new insight:

<iframe src="https://secure.gooddata.com/analyze/embedded/#/{project_id}/reportId/edit" frameborder="0"></iframe>

For users who would use Analytical Designer embedded with this URL, Analytical Designer will open to an empty form ready for creating a new insight.


You can customize the URL so that the embedded Analytical Designer opens to a specific insight instead on the form for creating a new one.

Customize the URL for Embedding Analytical Designer to Open a Specific Insight

You can customize the URL for embedding Analytical Designer so that Analytical Designer always opens to a specific insight instead on the form for creating a new one.

To do so, replace the reportID section in the embed URL with the ID of the insight that you want to open.

The URL for embedding then would look like the following:

https://secure.gooddata.com/analyze/embedded/#/{project_id}/{insight_id}/edit

For users who use Analytical Designer embedded with this URL, Analytical Designer will open to the specific insight.

The following is an example reference for embedding Analytical Designer to open to a specific insight:

<iframe src="https://secure.gooddata.com/analyze/embedded/#/{project_id}/{insight_id}/edit" frameborder="0"></iframe>

To find the ID of the insight:

  1. Go to Analytical Designer, and open the insight.
  2. Check the URL in the browser address bar. The section between /{project_id}/ and /edit is the ID of the insight that you have opened.

    https://secure.gooddata.com/analyze/#/{project_id}/{insight_id}/edit

    In the following example, the ID is 2468:

    https://secure.gooddata.com/analyze/#/{project_id}/2468/edit

Preload Analytical Designer in a Hidden iframe

To shorten the loading times when editing embedded insights, you can define a postMessage that preloads Analytical Designer with data catalog in a hidden iframe. When you then open an embedded insight for editing, Analytical Designer then loads only the insight configuration.

The postMessage can have the following formats:

  • a postMessage the project ID and the insight ID

    {
      "gdc": {
        "product": "analyticalDesigner",
        "event": {
          "name": "openInsight",
          "data": {
            "projectId": "{project_id}",
            "reportId": "{insight_id}",
            "dataset": "{dataset_id}",
            "includeObjectsWithTags": "[{tag_name},{tag_name}]",
            "excludeObjectsWithTags": "[{tag_name},{tag_name}]"
          }
        }
      }
    }
    NameRequired?TypeDesciption
    projectIdyesstringProject ID
    reportIdyesstringThe ID of the insight to be edited
    To create a new insight, explicitly set it to reportId.
    datasetnostringDataset identifier
    includeObjectsWithTagsnoarrayShow only attributes, measures, facts, and dates with the specified tags
    excludeObjectsWithTagsnoarrayHide attributes, measures, facts, and dates with the specified tags
  • a postMessage the clint ID, the data product ID, and the insight ID

    {
      "gdc": {
        "product": "analyticalDesigner",
        "event": {
          "name": "openInsight",
          "data": {
            "productId": "{data_product_id}",
            "clientId": "{client_id}",
            "reportId": "{insight_id}",
            "dataset": "{dataset_id}",
            "includeObjectsWithTags": "[{tag_name},{tag_name}]",
            "excludeObjectsWithTags": "[{tag_name},{tag_name}]"
          }
        }
      }
    }
    NameRequiredTypeDescription
    productIdyesstringData product ID
    To redirect to the default data product, set it to default.
    clientIdyesstringClient ID
    reportIdyesstringThe ID of the insight to be edited
    To create a new insight, explicitly set it to reportId.
    datasetnostringDataset identifier
    includeObjectsWithTagsnoarrayShow only attributes, measures, facts, and dates with the specified tags
    excludeObjectsWithTagsnoarrayHide attributes, measures, facts, and dates with the specified tags

In includeObjectsWithTags and excludeObjectsWithTags, you can specify multiple tags by separating them with a comma.

Do not specify both parameters at the same time. If you do, only the includeObjectsWithTags parameter is applied, and the excludeObjectsWithTags parameter is ignored.