Topology definition requests
Topology definition requests handle creation, configuration, editing, and deletion of topology definitions on your Turbonomic appliance.
Getting Topology Definitions
For a list of topology definitions, the API returns an array of TopologyDataDefinitionApiDTO. Each TopologyDataDefinitionApiDTO will contain the UUID, entity type, and connection attributes for the defined topology. To get a single topology definition, include the UUID of the topology definition in the request.
Examples:
All Topology Definitions:
GET https://10.10.10.10/api/v3/topologydefinitions
Single Topology Definition:
GET https://10.10.10.10/api/v3/topologydefinitions/284711321829968
Response:
{
"uuid":"284711313871856",
"displayName":"Daltest1__App",
"entityType":"BusinessApplication",
"entityDefinitionData":{
"namePrefix":"Daltest1_",
"entityType":"VirtualMachine",
"generationAndConnectionAttribute":{
"expVal":"App",
"expType":"EQ",
"filterType":"virtualMachinesByTag",
"caseSensitive":true,
"entityType":null,
"singleLine":false
}
}
}
Creating a manual topology definition
To create a manual topology definition, you must provide the entityType
of the definition, and manual mapping data to the
entities to use. Consider the following input DTO to create a manual topology definition:
{
"entityType":"BusinessApplication",
"entityDefinitionData":{
"manualConnectionData":{
"BusinessTransaction":{
"staticConnections":[
"73585155548499",
"73585155548500"
]
},
"Service":{
"staticConnections":[
"73585155548487",
"73585155608929"
]
},
"ApplicationComponent":{
"staticConnections":[
"73596151905427",
"73596151905425",
"73596151905428",
"73596151905429"
]
},
"VirtualMachine":{
"staticConnections":[
"73586657216608",
"73585300874097",
"73586657216576"
]
},
"DatabaseServer":{
"staticConnections":[
"73585314633044",
"73585314632869",
"73585314632946"
]
},
"Container":{
"staticConnections":[
"73585323455544",
"73582124234229",
"73585385438946"
]
},
"ContainerPod":{
"staticConnections":[
"73585334243044",
"73585314324535",
"73585314533256"
]
}
}
},
"displayName":"DalManualtest_"
}
In the manualConnectionData
parameter of the entityDefinitionData
, the UUIDs of the related entities have
been provided for each level of the supply chain for which the topology should be instantiated.
The creation can be as simple or complex as desired. For example, a simple manual topology may look like the following:
{
"entityType":"BusinessTransaction",
"entityDefinitionData":{
"manualConnectionData":{
"Service":{
"staticConnections":[
"73585155548487"
]
},
"Container":{
"staticConnections":[
"73596151905298"
]
}
}
},
"uuid":"284711514573216",
"displayName":"DalManualSimple"
}
Creating an automated topology definition
To create an automated topology definition, you must provide the entityType
of the definition, and the data that makes up
the regular expression used to determine dynamic group membership. Consider the following input DTO to create an automated topology
definition:
{
"entityType":"BusinessApplication",
"entityDefinitionData":{
"entityType":"VirtualMachine",
"namePrefix":"Daltest1_",
"generationAndConnectionAttribute":{
"expType":"EQ",
"expVal":"App",
"filterType":"vmsByTag",
"caseSensitive":false
}
}
}
In the generationAndConnectionAttribute
parameter of the entityDefinitionData
, the information that makes
up the regular expression is sent. In this instance, it will match any virtual machine whose tag value equals "App".
Editing a topology definition
Edits the input fields of an existing topology definition, and accepts the modified TopologyDataDefinitionApiDTO as input.
GET /topologydefinition/UUID
request to see the current
configuration. Note that you must pass all fields in the modified TopologyDataDefinitionApiDTO, not only the changed fields.A successful edit will return the modified TopologyDataDefinitionApiDTO.
Example:
PUT https://10.10.10.10/api/v3/topologydefinitions
Deleting a topology definition
Deletes the specified topology definition and removes all created entities. This will also remove any pending actions related to the deleted entities.
Example:
DELETE https://10.10.10.10/api/v3/topologydefinitions/284711321829968
Response: A successful deletion request returns a Response Code of
200
.