Renaming Measures and Attributes in Analytical Designer
To replace long names or to distinguish between the same measures with different filters, you can now rename measures, attributes, and dates in Analytical Designer for each insight that you create. If you add insights with renamed items to a KPI dashboard, the insight displays the new alias names there as well.
Data Warehouse JDBC Driver 3.1.2 Available!
We have released version 3.1.2 of the Data Warehouse JDBC driver. Download it from the Downloads page at https://secure.gooddata.com/downloads.html.
NOTE: If you are a white-labeled customer, log in to the Downloads page from your white-labeled domain:
What's new in this release:
Support for prepared statements. The following JDBC methods are now available:
With those methods, you can use the following data type setters:
IMPORTANT! If you are still using the old JDBC URL schema that starts with
jdbc:dss, do the following:
- Upgrade the URL schema to the new format so that it starts with
jdbc:gdc:datawarehouse. For more information, see Prepare the JDBC Connection String.
- Change the used driver class to
com.gooddata.datawarehouse.jdbc.driver.DatawarehouseDriver. For more information, see Access Data Warehouse from SQuirrel SQL.
The old JDBC URL format is still supported if you use
com.gooddata.dss.jdbc.driver.DssDriver as the driver class. However, it may be removed from future versions of the JDBC driver. We recommend that you switch to the new format of the URL schema as soon as possible.
Download the JDBC Driver
New API Event for Embedded Dashboards: No Access to Project
If you have embedded dashboards, you can now be notified when a user tries to access an embedded dashboard in a project that they do not have access rights to.
To do so, use the API event 'A user has no access to a project':
Embedded Dashboard Events (look for 'A user has no access to a project')
Embedded Dashboard and Report API - Events and Methods
New API Parameter for White Labeling
New API parameter suppressProjectLinks allows you to suppress hyperlinks for projects in email footers.
Project Metadata Objects Upgraded
Only for the customers who directly use the Visualization metadata objects using the programmatic API
We have upgraded project metadata.
- All project metadata objects of the
visualizationtype were migrated to the newly created
visualizationtype is no longer available for use, and any code still using it stops working.
- A new property,
visualizationClass, was introduced.
What are visualizationObject and visualizationClass?
Project metadata objects of the
visualizationObject type keep information about insights. Insights are created in Analytical Designer and can be then either used in Analytical Designer directly or added to KPI dashboards.
visualizationClass defines the type of a
visualizationObject object (pie chart, line chart, and so on).
You can query for
visualizationClass using the following API:
How can this affect you?
- If you are using the GoodData SDKs, upgrade to the latest version of the SDK to adjust your code to the structural changes in the project metadata. For more information, see GoodData SDK.
- If you are using project metadata objects directly, use
visualizationObjectin your code instead of
visualization, and use a new API to query for
API for Saving Insights as Reports Changed
Due to the metadata upgrade (see the previous article in these Release Notes), the API for saving an insight as a report definition has changed.
What has changed?
- Endpoint URL
- Request body
What has NOT changed?
How has the endpoint URL changed?
Old URL (stop using it):
New URL (use instead the old one):
How has the request body changed?
|Old request body||New request body|
REMINDER: Add Mandatory User-Agent Header to API Request
Starting from March 31, 2018, the GoodData REST API will require every API request to contain the
User-Agent header. Any API request without the
User-Agent header made after March 31, 2018, will be rejected.
What is the purpose of the header?
User-Agent header helps us identify users of our API and what they use the API for.
What is the header format?
User-Agent header must be in one of the following formats:
product} is the product in whose context you use the API (it can be your company's product that you are responsible for).
task} is the business domain in which you use the API (for example, managing users, configuring white-label properties, or creating projects).
company} is your company name.
version} is the version of your API integration. If you are not sure what version to include, set it to
firstname.lastname@example.org} is your email or the email of the contact person responsible for the product in your company.
User-Agent header must not contain spaces or slashes ( / ) apart from those that are already specified by the format.
How can you construct the User-Agent header?
Use the following examples to understand how to set the header:
- John Roe works in a company called 'Acme Corporation', on a product called 'Insight'. He uses the GoodData API to orchestrate ETL graphs across projects in his department. Here is how John can set the
- Jane Doe works in a company called 'Initech'. She uses the GoodData API to perform general administrative tasks across multiple products. Here is how Jane can set the
If you use a tool for handling API calls or a custom library for integrating with the GoodData REST API, update them to include the
User-Agent header in every API request.
TIP: Set up one
User-Agent header per tool/custom library and per task. For example, if you are using one tool to perform many administrative tasks, use a general header of
AdminTools. However, if you are using a few tools or libraries or if you are performing tasks from different business areas (for instance, managing access to dashboards and adding users to a Data Warehouse instance), set up headers for each tool or for each task separately.
When is the deadline for implementing the User-Agent header?
The date is March 31, 2018. However, we strongly recommend that you do so as soon as possible.
Are CloudConnect users affected?
No. If you call the API from CloudConnect (for example, REST Connector or HTTP Connector), you do not have to specify the
User-Agent header. CloudConnect provides a default
User-Agent header for all API calls that these components make.
If you have any question, please contact GoodData Support.