Drivers API schema
service.driver.graphqls
To authenticate API requests, you’ll need an API token. Learn how to generate an access token.
See usage examples in the cloudbeaver-graphql-examples repository.
You can try queries in the built-in GraphQL console, available on your server at https://your-server-address/api/gql/console. This tool lets you test requests directly from your browser.
For a live example, see the demo GraphQL console.
API Endpoints
https://your-server-address/api/gql
Queries
driverProviderList
Description
Returns the list of available driver providers.
Response
Returns [DriverProviderInfo!]!
Example
Query
query driverProviderList {
driverProviderList {
id
name
icon
}
}
Response
{
"data": {
"driverProviderList": [
{"id": "<id>", "name": "<string>", "icon": "<string>"}
]
}
}
Mutations
asyncDownloadDriverLibraries
Description
Creates the async task to download driver libraries for the specified driver.
Response
Returns an AsyncTaskInfo!
Example
Query
mutation asyncDownloadDriverLibraries(
$providerId: ID!,
$driverId: ID!
) {
asyncDownloadDriverLibraries(
providerId: $providerId,
driverId: $driverId
) {
id
name
running
status
error {
...ServerErrorFragment
}
taskResult
}
}
Variables
{"providerId": "<id>", "driverId": "<id>"}
Response
{
"data": {
"asyncDownloadDriverLibraries": {
"id": "<string>",
"name": "<string>",
"running": "<boolean>",
"status": "<string>",
"error": ServerError,
"taskResult": "<object>"
}
}
}
createDriver
Description
Creates a new driver based on the provided configuration.
Response
Returns a DriverInfo!
Arguments
| Name | Description |
|---|---|
config - DriverConfig!
|
Example
Query
mutation createDriver($config: DriverConfig!) {
createDriver(config: $config) {
id
name
description
icon
iconBig
driverId
providerId
driverClassName
defaultHost
defaultPort
defaultDatabase
defaultServer
defaultUser
sampleURL
driverInfoURL
driverPropertiesURL
embedded
enabled
requiresServerName
requiresDatabaseName
useCustomPage
licenseRequired
license
custom
promotedScore
driverProperties {
...ObjectPropertyInfoFragment
}
driverParameters
mainProperties {
...ObjectPropertyInfoFragment
}
providerProperties {
...ObjectPropertyInfoFragment
}
expertSettingsProperties {
...ObjectPropertyInfoFragment
}
anonymousAccess
defaultAuthModel
applicableAuthModels
applicableNetworkHandlers
configurationTypes
downloadable
driverInstalled
driverLibraries {
...DriverLibraryInfoFragment
}
safeEmbeddedDriver
}
}
Variables
{"config": DriverConfig}
Response
{
"data": {
"createDriver": {
"id": "<id>",
"name": "<string>",
"description": "<string>",
"icon": "<string>",
"iconBig": "<string>",
"driverId": "<id>",
"providerId": "<id>",
"driverClassName": "<string>",
"defaultHost": "<string>",
"defaultPort": "<string>",
"defaultDatabase": "<string>",
"defaultServer": "<string>",
"defaultUser": "<string>",
"sampleURL": "<string>",
"driverInfoURL": "<string>",
"driverPropertiesURL": "<string>",
"embedded": "<boolean>",
"enabled": "<boolean>",
"requiresServerName": "<boolean>",
"requiresDatabaseName": "<boolean>",
"useCustomPage": "<boolean>",
"licenseRequired": "<boolean>",
"license": "<string>",
"custom": "<boolean>",
"promotedScore": "<int>",
"driverProperties": [ObjectPropertyInfo],
"driverParameters": "<object>",
"mainProperties": [ObjectPropertyInfo],
"providerProperties": [ObjectPropertyInfo],
"expertSettingsProperties": [ObjectPropertyInfo],
"anonymousAccess": "<boolean>",
"defaultAuthModel": "<id>",
"applicableAuthModels": ["<id>"],
"applicableNetworkHandlers": ["<id>"],
"configurationTypes": ["MANUAL"],
"downloadable": "<boolean>",
"driverInstalled": "<boolean>",
"driverLibraries": [DriverLibraryInfo],
"safeEmbeddedDriver": "<boolean>"
}
}
}
deleteDriver
Description
Deletes a driver by its ID. Only custom drivers can be deleted.
deleteDriverLibraries
Description
Removes driver libraries by their IDs from the driver configuration. Driver files are not deleted from the server.
Example
Query
mutation deleteDriverLibraries(
$driverId: ID!,
$libraryIds: [ID!]!
) {
deleteDriverLibraries(
driverId: $driverId,
libraryIds: $libraryIds
)
}
Variables
{"driverId": "<id>", "libraryIds": "<id>"}
Response
{
"data": {
"deleteDriverLibraries": "<boolean>"
}
}
resetDriver
Description
Resets the driver to its default state.
Response
Returns a DriverInfo!
Arguments
| Name | Description |
|---|---|
id - ID!
|
Example
Query
mutation resetDriver($id: ID!) {
resetDriver(id: $id) {
id
name
description
icon
iconBig
driverId
providerId
driverClassName
defaultHost
defaultPort
defaultDatabase
defaultServer
defaultUser
sampleURL
driverInfoURL
driverPropertiesURL
embedded
enabled
requiresServerName
requiresDatabaseName
useCustomPage
licenseRequired
license
custom
promotedScore
driverProperties {
...ObjectPropertyInfoFragment
}
driverParameters
mainProperties {
...ObjectPropertyInfoFragment
}
providerProperties {
...ObjectPropertyInfoFragment
}
expertSettingsProperties {
...ObjectPropertyInfoFragment
}
anonymousAccess
defaultAuthModel
applicableAuthModels
applicableNetworkHandlers
configurationTypes
downloadable
driverInstalled
driverLibraries {
...DriverLibraryInfoFragment
}
safeEmbeddedDriver
}
}
Variables
{"id": "<id>"}
Response
{
"data": {
"resetDriver": {
"id": "<id>",
"name": "<string>",
"description": "<string>",
"icon": "<string>",
"iconBig": "<string>",
"driverId": "<id>",
"providerId": "<id>",
"driverClassName": "<string>",
"defaultHost": "<string>",
"defaultPort": "<string>",
"defaultDatabase": "<string>",
"defaultServer": "<string>",
"defaultUser": "<string>",
"sampleURL": "<string>",
"driverInfoURL": "<string>",
"driverPropertiesURL": "<string>",
"embedded": "<boolean>",
"enabled": "<boolean>",
"requiresServerName": "<boolean>",
"requiresDatabaseName": "<boolean>",
"useCustomPage": "<boolean>",
"licenseRequired": "<boolean>",
"license": "<string>",
"custom": "<boolean>",
"promotedScore": "<int>",
"driverProperties": [ObjectPropertyInfo],
"driverParameters": "<object>",
"mainProperties": [ObjectPropertyInfo],
"providerProperties": [ObjectPropertyInfo],
"expertSettingsProperties": [ObjectPropertyInfo],
"anonymousAccess": "<boolean>",
"defaultAuthModel": "<id>",
"applicableAuthModels": ["<id>"],
"applicableNetworkHandlers": ["<id>"],
"configurationTypes": ["MANUAL"],
"downloadable": "<boolean>",
"driverInstalled": "<boolean>",
"driverLibraries": [DriverLibraryInfo],
"safeEmbeddedDriver": "<boolean>"
}
}
}
updateDriver
Description
Updates an existing driver with the provided configuration.
Response
Returns a DriverInfo!
Arguments
| Name | Description |
|---|---|
config - DriverConfig!
|
Example
Query
mutation updateDriver($config: DriverConfig!) {
updateDriver(config: $config) {
id
name
description
icon
iconBig
driverId
providerId
driverClassName
defaultHost
defaultPort
defaultDatabase
defaultServer
defaultUser
sampleURL
driverInfoURL
driverPropertiesURL
embedded
enabled
requiresServerName
requiresDatabaseName
useCustomPage
licenseRequired
license
custom
promotedScore
driverProperties {
...ObjectPropertyInfoFragment
}
driverParameters
mainProperties {
...ObjectPropertyInfoFragment
}
providerProperties {
...ObjectPropertyInfoFragment
}
expertSettingsProperties {
...ObjectPropertyInfoFragment
}
anonymousAccess
defaultAuthModel
applicableAuthModels
applicableNetworkHandlers
configurationTypes
downloadable
driverInstalled
driverLibraries {
...DriverLibraryInfoFragment
}
safeEmbeddedDriver
}
}
Variables
{"config": DriverConfig}
Response
{
"data": {
"updateDriver": {
"id": "<id>",
"name": "<string>",
"description": "<string>",
"icon": "<string>",
"iconBig": "<string>",
"driverId": "<id>",
"providerId": "<id>",
"driverClassName": "<string>",
"defaultHost": "<string>",
"defaultPort": "<string>",
"defaultDatabase": "<string>",
"defaultServer": "<string>",
"defaultUser": "<string>",
"sampleURL": "<string>",
"driverInfoURL": "<string>",
"driverPropertiesURL": "<string>",
"embedded": "<boolean>",
"enabled": "<boolean>",
"requiresServerName": "<boolean>",
"requiresDatabaseName": "<boolean>",
"useCustomPage": "<boolean>",
"licenseRequired": "<boolean>",
"license": "<string>",
"custom": "<boolean>",
"promotedScore": "<int>",
"driverProperties": [ObjectPropertyInfo],
"driverParameters": "<object>",
"mainProperties": [ObjectPropertyInfo],
"providerProperties": [ObjectPropertyInfo],
"expertSettingsProperties": [ObjectPropertyInfo],
"anonymousAccess": "<boolean>",
"defaultAuthModel": "<id>",
"applicableAuthModels": ["<id>"],
"applicableNetworkHandlers": ["<id>"],
"configurationTypes": ["MANUAL"],
"downloadable": "<boolean>",
"driverInstalled": "<boolean>",
"driverLibraries": [DriverLibraryInfo],
"safeEmbeddedDriver": "<boolean>"
}
}
}
Types
AsyncTaskInfo
Description
Async types
Fields
| Field Name | Description |
|---|---|
id - String!
|
Task unique identifier |
name - String
|
Async task name |
running - Boolean!
|
Indicates if the task is currently running |
status - String
|
Current status of the async task |
error - ServerError
|
Error information if the task failed |
taskResult - Object
|
Task result. Can be some kind of identifier to obtain real result using another API function |
Example
{
"id": "<string>",
"name": "<string>",
"running": "<boolean>",
"status": "<string>",
"error": ServerError,
"taskResult": "<object>"
}
Boolean
Description
The Boolean scalar type represents true or false.
Example
"<boolean>"
Condition
Description
Represents a dynamic condition for a property, such as visibility or read-only state
Fields
| Field Name | Description |
|---|---|
expression - String!
|
The logical expression that defines when the condition applies |
conditionType - ConditionType!
|
The type of condition (e.g., HIDE or READ_ONLY) |
Example
{"expression": "<string>", "conditionType": "HIDE"}
ConditionType
Values
| Enum Value | Description |
|---|---|
|
|
hiding property condition |
|
|
restriction for setting a property value |
Example
"HIDE"
DriverConfig
Fields
| Input Field | Description |
|---|---|
id - ID
|
Unique identifier of the driver. |
name - String!
|
Driver display name. |
providerId - ID!
|
Driver provider ID. Must be one of the available driver providers. |
driverClassName - String!
|
Java class name for the driver. Used to load the driver. |
description - String
|
Driver description. |
sampleURL - String
|
Sample URL for the driver. |
defaultPort - String
|
Default port for the driver. |
defaultDatabase - String
|
Default database for the driver. |
defaultUser - String
|
Default user for the driver. |
Example
{
"id": "<id>",
"name": "<string>",
"providerId": "<id>",
"driverClassName": "<string>",
"description": "<string>",
"sampleURL": "<string>",
"defaultPort": "<string>",
"defaultDatabase": "<string>",
"defaultUser": "<string>"
}
DriverConfigurationType
Values
| Enum Value | Description |
|---|---|
|
|
Driver uses host, port, database and server name fields |
|
|
Driver uses URL field |
Example
"MANUAL"
DriverFileInfo
DriverInfo
Fields
| Field Name | Description |
|---|---|
id - ID!
|
Driver unique full ID. It is providerId + "." + driverId. It is recommended to use providerId and driverId separately. |
name - String
|
Name of the driver |
description - String
|
Description of the driver |
icon - String
|
Path to the driver icon |
iconBig - String
|
Path to the driver icon for big size |
driverId - ID!
|
Driver ID. It is unique within provider |
providerId - ID!
|
Driver provider ID. It is globally unique |
driverClassName - String
|
Driver Java class name |
defaultHost - String
|
Default host for the driver |
defaultPort - String
|
Default port for the driver |
defaultDatabase - String
|
Default database name for the driver |
defaultServer - String
|
Default server name for the driver |
defaultUser - String
|
Default user name for the driver |
sampleURL - String
|
Default connection URL for the driver |
driverInfoURL - String
|
Returns link to the driver documentation page |
driverPropertiesURL - String
|
Returns link to the driver properties page |
embedded - Boolean
|
Defines if the database for this driver is embedded |
enabled - Boolean!
|
Defines if the driver is enabled |
requiresServerName - Boolean
|
Defines if the driver page requires server name field use mainProperties instead |
requiresDatabaseName - Boolean
|
Defines if the driver page requires database name field use mainProperties instead |
useCustomPage - Boolean!
|
Defines if host, port, database, server name fields are using a custom page |
licenseRequired - Boolean
|
Defines if driver license is required |
license - String
|
Driver license information |
custom - Boolean
|
Defines if the driver is a custom driver |
promotedScore - Int
|
Driver score for ordering, biggest first |
driverProperties - [ObjectPropertyInfo!]!
|
Driver properties. Note: it is expensive property and it may produce database server roundtrips. Call it only when you really need it. These properties are for advanced users in usually shouldn't be specified for new connections. |
driverParameters - Object!
|
Driver parameters (map name->value) |
mainProperties - [ObjectPropertyInfo!]!
|
Main driver properties. Contains info about main fields (host, port, database, server name) that are used in main connection page |
providerProperties - [ObjectPropertyInfo!]!
|
Additional driver provider properties. These properties can be configured by user on main connection page to provide important connection settings |
expertSettingsProperties - [ObjectPropertyInfo!]!
|
Expert driver settings properties. Returns properties (like keep-alive interval) that are not often used and can be hidden in UI |
anonymousAccess - Boolean
|
False for drivers which do not support authentication. |
defaultAuthModel - ID!
|
Default auth model that is used for this driver (see authModels) |
applicableAuthModels - [ID!]!
|
List of auth models that can be used with this driver (see authModels) |
applicableNetworkHandlers - [ID]!
|
List of network handlers that can be used with this driver (SSH/SSL) |
configurationTypes - [DriverConfigurationType]!
|
Configuration types are used in UI to determine how to display connection settings (show host/port/database fields or use URL field) |
downloadable - Boolean!
|
Defines if the driver can be downloaded remotely |
driverInstalled - Boolean!
|
Defines if the driver is installed on the server |
driverLibraries - [DriverLibraryInfo!]!
|
List of driver libraries that are used for connecting to the database |
safeEmbeddedDriver - Boolean!
|
Defines if embedded driver is safe to use in the server |
Example
{
"id": "<id>",
"name": "<string>",
"description": "<string>",
"icon": "<string>",
"iconBig": "<string>",
"driverId": "<id>",
"providerId": "<id>",
"driverClassName": "<string>",
"defaultHost": "<string>",
"defaultPort": "<string>",
"defaultDatabase": "<string>",
"defaultServer": "<string>",
"defaultUser": "<string>",
"sampleURL": "<string>",
"driverInfoURL": "<string>",
"driverPropertiesURL": "<string>",
"embedded": "<boolean>",
"enabled": "<boolean>",
"requiresServerName": "<boolean>",
"requiresDatabaseName": "<boolean>",
"useCustomPage": "<boolean>",
"licenseRequired": "<boolean>",
"license": "<string>",
"custom": "<boolean>",
"promotedScore": "<int>",
"driverProperties": [ObjectPropertyInfo],
"driverParameters": "<object>",
"mainProperties": [ObjectPropertyInfo],
"providerProperties": [ObjectPropertyInfo],
"expertSettingsProperties": [ObjectPropertyInfo],
"anonymousAccess": "<boolean>",
"defaultAuthModel": "<id>",
"applicableAuthModels": ["<id>"],
"applicableNetworkHandlers": ["<id>"],
"configurationTypes": ["MANUAL"],
"downloadable": "<boolean>",
"driverInstalled": "<boolean>",
"driverLibraries": [DriverLibraryInfo],
"safeEmbeddedDriver": "<boolean>"
}
DriverLibraryInfo
Description
Driver library information. Used to display driver files in UI
Fields
| Field Name | Description |
|---|---|
id - ID!
|
Driver library unique ID |
name - String!
|
Driver library name |
icon - String
|
Path to the driver library icon |
libraryFiles - [DriverFileInfo!]
|
List of files that are used by the driver |
Example
{
"id": "<id>",
"name": "<string>",
"icon": "<string>",
"libraryFiles": [DriverFileInfo]
}
DriverProviderInfo
ID
Description
The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.
Example
"<id>"
Int
Description
The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
Example
"<int>"
Object
Description
Any object (JSON)
Example
"<object>"
ObjectPropertyInfo
Description
Information about the object property used to generate its UI
Fields
| Field Name | Description |
|---|---|
id - String
|
Unique property identifier |
displayName - String
|
Human-readable name |
description - String
|
Property description |
hint - String
|
Usage hint for the property |
category - String
|
Property category (may be used if object has a lot of properties) |
dataType - String
|
Property data type (e.g., int, String) |
value - Object
|
Property value (can be resource-intensive for some properties, e.g., RowCount for tables) |
validValues - [Object]
|
List of allowed values (for enumerable properties) |
defaultValue - Object
|
Default property value |
length - ObjectPropertyLength!
|
Property value length |
features - [String!]!
|
List of supported features (e.g., system, hidden, inherited, foreign, expensive) |
order - Int!
|
Order position |
supportedConfigurationTypes - [String!]
|
Supported configuration types (for driver properties) |
required - Boolean!
|
Is the property required |
scopes - [String!]
|
List of preference scopes (e.g., global, user) |
conditions - [Condition!]
|
Dynamic conditions for the property (e.g., visibility or read-only) |
Example
{
"id": "<string>",
"displayName": "<string>",
"description": "<string>",
"hint": "<string>",
"category": "<string>",
"dataType": "<string>",
"value": "<object>",
"validValues": ["<object>"],
"defaultValue": "<object>",
"length": "TINY",
"features": ["<string>"],
"order": "<int>",
"supportedConfigurationTypes": ["<string>"],
"required": "<boolean>",
"scopes": ["<string>"],
"conditions": [Condition]
}
ObjectPropertyLength
Values
| Enum Value | Description |
|---|---|
|
|
1 character |
|
|
20 characters |
|
|
<= 64 characters |
|
|
Full line length. The default |
|
|
Multi-line long text |
Example
"TINY"
ServerError
Description
Various server errors descriptor
Fields
| Field Name | Description |
|---|---|
message - String
|
Error message text |
errorCode - String
|
Retrieves the vendor-specific error code |
errorType - String
|
Type/category of the error |
stackTrace - String
|
Stack trace for debugging |
causedBy - ServerError
|
Nested error that caused this error (recursive) |
Example
{
"message": "<string>",
"errorCode": "<string>",
"errorType": "<string>",
"stackTrace": "<string>",
"causedBy": ServerError
}
String
Description
The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
Example
"<string>"