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.

Contents:

Create a URL for Embedding Analytical Designer

Follow these 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
  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 one of the following parameters to the URL and separate multiple values with a comma:
    • ?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]


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

    Tags can include only lowercase characters, uppercase characters, and numbers.

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

    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.

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

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.

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 catalogue 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 two following formats:

  • postMessage with projectId and reportId

    {
        "gdc": {
            "product": "analyticalDesigner",
            "event": {
                "name": "openInsight",
                "data": {
                    "projectId": "{project_id}",
                    "reportId": "{report_id}"
                    "dataset": "{dataset_id}"
                    "includeObjectsWithTags": "[{tag_name},{tag_name}]",
                    "excludeObjectsWithTags": "[{tag_name},{tag_name}]"
                }
            }
        }
    }
    NameRequiredTypeDesciption
    projectIdyesstringProject ID
    reportIdyesstringThe ID or Identifier of the insight to be edited.
    To create a new insight, 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.


  • postMessage with clientId and reportId

    {
        "gdc": {
            "product": "analyticalDesigner",
            "event": {
                "name": "openInsight",
                "data": {
                    "productId": "{product_id}",
                    "clientId": "{client_id}",
                    "reportId": "{report_id}"
                    "dataset": "{dataset_id}"
                    "includeObjectsWithTags": "[{tag_name},{tag_name}]",
                    "excludeObjectsWithTags": "[{tag_name},{tag_name}]"
                }
            }
        }
    }
    NameRequiredTypeDescription
    productIdyesstringName of the data product.
    To redirect to the default data product, set it to "default".
    clientIdyesstringClient ID
    reportIdyesstringThe ID or Identifier of the insight to be edited.
    To create a new insight, 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.

Embedding Code Format

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>

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>

For additional details, see also Embedding Code Formats.

Limitations

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