Connecting Bold BI to Presto data source
The Bold BI dashboard designer supports connecting to Presto database through SQL Live Query (REST API).
Choose Presto data source
To configure the Presto data source, follow the below steps:
-
Click on the Data Sources button in the configuration panel to add a new data connection.

-
Click CREATE NEW to launch a new connection from the connection panel.
-
Select the Presto connection in the connection panel.

NOTE: You can also create a data source from the home page by clicking on the Data Sources menu on the left menu panel and selecting Create Data Source from the data sources page.

Connect to Presto
Create Presto data source
After clicking the data source, the NEW DATA SOURCE configuration panel opens. Follow the given steps to create a Presto data source:
-
Enter a name and description (optional) for the data source.
-
Enter a valid Presto server or host name in the Server Name text box.
-
Enter its corresponding port in Port text box.
-
Enter the Catalog Name from below Presto Connectors Link.
-
Choose either None or BASIC authentication in the Authentication Mechanism combo box.
-
Enter a valid Presto user name and password if you choose Basic Authentication Mechanism.
-
Select the database you want to query from the listed databases associated with the given Presto Server in the Database combo box.

In future, you can edit the connection information using Edit Connection option.
NOTE: To connect a data source with SSH, enable the SSH check box in the NEW DATA SOURCE configuration panel and enter the required credentials.

Data Preview
- Click Connect to connect the Presto server with configured details.
The schema represents the collection list that is retrieved from the Presto server. This dialog displays a list of schemas in a tree view and their corresponding values.

-
Now, the data design view page with the selected table schema opens. Drag and drop the table.

Either you can use the Code View options for passing query to display data.

-
Click Save to save the data source with a relevant name.
Connect using custom attribute and dashboard parameter
We have added support for custom attributes and dashboard parameters in the data source connection. You can now connect to the data source using custom attributes or dashboard parameters.
Custom Attribute

Dashboard Parameter

Note: Refer to the Dashboard Parameter Documentation and Custom Attributes Documentation for more details.
Connecting Bold BI to Presto Data Source via REST API
Prerequisites
Type while creating the data source needs to be presto.
Parameters for creating Data Source
NOTE: The ability to provide join support is available only during the creation of a new data source. Join in edit connection mode is not supported.
| Parameters | Details |
|---|---|
| Servername required | string
Server name or Host name of the connection |
| Port required | string
Port number used to connect to the presto server.
|
| AuthenticationType optional | string
None or Server Authentication. By default, it is None. |
| Username optional | string
A valid username for the connection. Required for Server Authentication. |
| Password optional | string
A valid Password for the connection. Required for Server Authentication. |
| CatalogName required | string
Catalog which need to be connected.
|
| Database required | string
database which needs to be connected |
| Schemaname required for table mode | string
Enter a valid Schemaname |
| Tablename required for table mode | string
Enter a valid Tablename |
JoinType Required For Join Info | string
Enter a valid JoinType For Example (Inner,Outer) |
| LeftTable Required For Join Info | string
Enter a valid Left Table name |
| RightTable Required For Join Info | string
Enter a valid Right Table name |
| LeftField Required For Join Info | string
Enter a valid Left Table Column Name |
| RightField Required For Join Info | string
Enter a valid Right Table Column Name |
| Condition Required For Join Info | string
Enter a valid Condition For Example (AND,OR) |
| LeftField Required For Join Info | string
Enter a valid Left Table Column Name |
| Operator Required For Join Info | string
Enter a Valid Operator For Example (=,>=) |
| Value Optional For only Join Info | string
Specifically choose the column values. |
| Query required for code view mode | string
Enter a valid Query |
| AdvancedSettings optional | string
Additional optional connection parameters can be provided. By default, it is empty. |
| CommandTimeout optional | string
Enter a valid Timeout for connection. By default, it is 300 |
| IsSshConnection optional | `boolean` Enable or disable SSH. By default, it is false. |
| SshServerName optional | string
Enter a valid Ssh Server name. By default, it is empty. |
| SshPort optional | `integer` Enter a valid Ssh Port number. |
| SshUserName optional | string
Enter a valid Ssh Username. By default, it is empty. |
| SshPassword optional | string
Enter a valid Ssh Password. By default, it is empty. |
| Expressions optional | `Array of Objects` |
Parameters for edit the connection while upload the dashboard via API
| Parameters | Details |
|---|---|
| ServerName required | string
Server name or Host name of the connection |
| Port required | string
Port number used to connect to the presto server.
|
| AuthenticationType optional | string
None or Server Authentication. By default, it is None. |
| UserName optional | string
A valid username for the connection. Required for Server Authentication. |
| Password optional | string
A valid Password for the connection. Required for Server Authentication. |
| CatalogName required | string
Catalog which need to be connected.
|
| Database required | string
database which needs to be connected |
| Schema required for table mode | string
Enter a valid Schemaname |
| AdvancedSettings optional | string
Additional optional connection parameters can be provided. By default, it is empty. |
| CommandTimeout optional | string
Enter a valid Timeout for connection. By default, it is 300 |
| IsSshConnection optional | `boolean` Enable or disable SSH. By default, it is false. |
| SshServerName optional | string
Enter a valid Ssh Server name. By default, it is empty. |
| SshPort optional | `integer` Enter a valid Ssh Port number. |
| SshUserName optional | string
Enter a valid Ssh Username. By default, it is empty. |
| SshPassword optional | string
Enter a valid Ssh Password. By default, it is empty. |
Parameters for adding expressions when creating Data Source
| Parameters | Details |
|---|---|
| Name required | string
Name of the Expression
|
| Expression required | string
Expression
|
Parameters for editing Data Source
NOTE: To edit a Data Source via API, all parameters are optional. Only the parameter that needs to be changed should be provided.
Parameters for modifying expressions when editing Data Source
| Parameters | Details |
|---|---|
| Name required | string
Name of the Expression
|
| Expression required | string
Expression
|
| Action optional | string
add/delete/edit
By default, it is add.
|
| NewName optional | string
For renaming the expression. This is applicable only if the Action is edit
|
Connection Sample for Table Mode
For creating connection:
"Connection":
{
"Servername": "string",
"Port": "string",
"AuthenticationType": "string",
"Username": "string",
"Password": "string",
"CatalogName": "string",
"Database": "string",
"Schemaname": "string",
"Tablename": "string",
"AdvancedSettings": "string",
"CommandTimeout": "string",
"IsSshConnection": "false",
"SshServerName": "string",
"SshPort": 0,
"SshUsername": "string",
"SshPassword": "string",
"Expressions" : [{
"Name": "Expression1",
"Expression" : "SUM(numeric expression)"
},
{
"Name": "Expression2",
"Expression" : "UPPER(string expression)"
}]
}
For creating connection with multiple tables :
"Connection":
{
"Servername": "string",
"Port": "string",
"AuthenticationType": "string",
"Username": "string",
"Password": "string",
"CatalogName": "string",
"Database": "string",
"Tables": [
{
"Tablename": "string",
"Schemaname": "string"
},
{
"Tablename": "string",
"Schemaname": "string"
}
],
"JoinInfo": [
{
"JoinType": "string",
"LeftTable": "string",
"RightTable": "string",
"JoinFieldInfos": [
{
"Condition": "string",
"LeftField": "string",
"Operator": "string",
"RightField": "string",
"Value": "string"
},
{
"Condition": "string",
"LeftField": "string",
"Operator": "string",
"RightField": "string",
"Value": "string"
}
]
}
],
"AdvancedSettings": "string",
"CommandTimeout": "string",
"IsSshConnection": "false",
"SshServerName": "string",
"SshPort": 0,
"SshUsername": "string",
"SshPassword": "string",
"Expressions" : [{
"Name": "Expression1",
"Expression" : "SUM(numeric expression)"
},
{
"Name": "Expression2",
"Expression" : "UPPER(string expression)"
}]
}
For editing connection:
"Connection":
{
"Servername": "string",
"Port": "string",
"AuthenticationType": "string",
"Username": "string",
"Password": "string",
"CatalogName": "string",
"Database": "string",
"Schemaname": "string",
"Tablename": "string",
"AdvancedSettings": "string",
"CommandTimeout": "string",
"IsSshConnection": "false",
"SshServerName": "string",
"SshPort": 0,
"SshUsername": "string",
"SshPassword": "string",
"Expressions" : [{
"Name": "Expression1",
"Expression" : "SUM(numeric expression)",
"NewName" : "Sum",
"Action": "edit"
},
{
"Name": "Expression2",
"Expression" : "UPPER(string expression)"
"Action": "delete"
}]
}
NOTE: Through the Rest API, the data source can be created or edited with only one table. If different table is provided in edit data source, the table will be replaced. The widgets will be retained only if the schema is same as the previous table.
Connection Sample for Code View Mode
"Connection":
{
"Servername": "string",
"Port": "string",
"AuthenticationType": "string",
"Username": "string",
"Password": "string",
"CatalogName": "string",
"Database": "string",
"Query": "string",
"AdvancedSettings": "string",
"CommandTimeout": "string",
"IsSshConnection": "false",
"SshServerName": "string",
"SshPort": 0,
"SshUsername": "string",
"SshPassword": "string",
"Expressions" : [{
"Name": "Expression1",
"Expression" : "SUM(numeric expression)"
},
{
"Name": "Expression2",
"Expression" : "UPPER(string expression)"
}]
}
Sample connection for editing the connection while uploading the dashboard via API.
"Connection": {
"ServerName": "string",
"Database": "string",
"Port": "string",
"UserName": "string",
"Password": "string",
"AuthenticationType": "string",
"AdvancedSettings": "string",
"CatalogName": "string",
"Schema": "string"
}