ERD queries schema
service.erd.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
generateEntityDiagram
Description
Returns ERD diagram information for the specified object node IDs.
generateEntityDiagramExtended
Description
Returns ERD diagram information for the specified object node IDs.
Response
Returns an ERDDiagramInfo!
Arguments
| Name | Description |
|---|---|
objectNodeIds - [ID!]!
|
Example
Query
query generateEntityDiagramExtended($objectNodeIds: [ID!]!) {
generateEntityDiagramExtended(objectNodeIds: $objectNodeIds) {
entities {
...ERDEntityInfoFragment
}
associations {
...ERDAssociationInfoFragment
}
data {
...ERDDiagramDataFragment
}
}
}
Variables
{"objectNodeIds": "<id>"}
Response
{
"data": {
"generateEntityDiagramExtended": {
"entities": [ERDEntityInfo],
"associations": [ERDAssociationInfo],
"data": ERDDiagramData
}
}
}
Mutations
fakeFunction
Response
Returns an Object
Example
Query
mutation fakeFunction {
fakeFunction
}
Response
{"data": {"fakeFunction": "<object>"}}
Types
Boolean
Description
The Boolean scalar type represents true or false.
Example
"<boolean>"
ERDAssociationInfo
Description
Information about an association between entities in the ERD diagram.
Fields
| Field Name | Description |
|---|---|
name - String!
|
Name of the association. |
fqn - String
|
Fully qualified name of the association. |
type - String!
|
Association type, such as 'fk' (foreign key), 'pk' (primary key) etc. |
primaryEntity - Int
|
Returns the index of the primary (source) entity if specified. |
foreignEntity - Int
|
Returns the index of the foreign (target) entity if specified. |
primaryAttributes - [String!]!
|
List of primary attributes in the association. |
foreignAttributes - [String!]!
|
List of foreign attributes in the association. |
Example
{
"name": "<string>",
"fqn": "<string>",
"type": "<string>",
"primaryEntity": "<int>",
"foreignEntity": "<int>",
"primaryAttributes": ["<string>"],
"foreignAttributes": ["<string>"]
}
ERDDiagramData
Fields
| Field Name | Description |
|---|---|
icons - [String!]!
|
List of icon paths used in the ERD diagram. |
Example
{"icons": ["<string>"]}
ERDDiagramInfo
Description
Information about an ERD diagram, including entities, associations, and diagram data.
Fields
| Field Name | Description |
|---|---|
entities - [ERDEntityInfo!]!
|
Entities in the ERD diagram. |
associations - [ERDAssociationInfo!]
|
Associations between entities in the ERD diagram. |
data - ERDDiagramData!
|
Diagram data, including icons and other metadata. |
Example
{
"entities": [ERDEntityInfo],
"associations": [ERDAssociationInfo],
"data": ERDDiagramData
}
ERDEntityAttributeInfo
Description
Information about an entity attribute in the ERD diagram (columns from table).
Fields
| Field Name | Description |
|---|---|
name - String!
|
Name of the attribute. |
alias - String
|
Alias of the attribute if it has one. |
dataKind - String
|
Data type of the attribute. |
typeName - String
|
Type name of the attribute. |
optional - Boolean
|
Indicates if the attribute is optional. |
iconIndex - Int
|
Returns the icon index for the attribute from the ERD diagram data. |
fullTypeName - String
|
Fully qualified type name of the attribute. |
defaultValue - String
|
Default value of the attribute. |
description - String
|
Description of the attribute. |
checked - Boolean!
|
Indicates if the attribute is checked. |
inPrimaryKey - Boolean
|
Indicates if the attribute is in a primary key. |
inForeignKey - Boolean
|
Indicates if the attribute is in a foreign key. |
Example
{
"name": "<string>",
"alias": "<string>",
"dataKind": "<string>",
"typeName": "<string>",
"optional": "<boolean>",
"iconIndex": "<int>",
"fullTypeName": "<string>",
"defaultValue": "<string>",
"description": "<string>",
"checked": "<boolean>",
"inPrimaryKey": "<boolean>",
"inForeignKey": "<boolean>"
}
ERDEntityInfo
Fields
| Field Name | Description |
|---|---|
id - Int!
|
Unique identifier of the entity. |
name - String!
|
Display name of the entity. |
alias - String
|
Alias of the entity if it has one. |
fqn - String
|
Fully qualified name of the entity, including its namespace. |
nodeId - ID
|
ID of the node in the ERD diagram. |
nodeUri - ID
|
URI of the node in the ERD diagram. |
attributes - [ERDEntityAttributeInfo!]!
|
List of attributes for the entity. |
Example
{
"id": "<int>",
"name": "<string>",
"alias": "<string>",
"fqn": "<string>",
"nodeId": "<id>",
"nodeUri": "<id>",
"attributes": [ERDEntityAttributeInfo]
}
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>"
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>"