Get Architecture Aggregation (RESERVED)
RESERVED: The keyword RESERVED annotation means that the API is available for use but is not yet part of the officially supported specification. Its behavior, interface, or output may change in future releases without backward compatibility guarantees.
Overview
Get the aggregation graph for an architecture custom view. This returns the visual representation of the custom view including all nodes and their relationships.
Use this endpoint only for custom views whose aggregationType is Architecture in the custom view list response.
URI
GET /rest/applications/{name}/custom-views/{viewId}/architecture
Path parameters
name (string)
This parameter identifies the analyzed application. The application name must be properly encoded if required. Character back-quote is not allowed.
viewId (string)
The unique identifier of the custom view.
Query parameters
validate (boolean)
Optional. Default is false. When true, the edges computed from the real object-level relationships between the underlying objects are added, including escalated relationships. Real dependencies are only computed for a validated view. To validate it, save it with "validated": true through Update Custom View, the same as Validate links in the viewer. Adding custom nodes or switching the link mode resets the validation.
userLinks (boolean)
Optional. Defaults to the view’s saved userLinks setting, which is true unless it was changed through Update Custom View. Whether to include the links the user drew (created via Create Architecture Link). Combined with validate=true, it shows the user’s link design (authorized or unauthorized links) next to the real dependencies, so they can be compared before the view is published. Set it to false to see only the real dependencies. The user’s links are returned only while the view is unpublished.
shared (boolean)
Optional. Whether to include Shared virtual relationships between custom nodes. Default is false.
date (string)
Optional. A valid datetime (e.g. 2024-01-15T00:00:00Z) forwarded to the aggregation service to get the underlying objects as they existed at that point in history.
Notes
- This endpoint is intended for architecture custom views only.
- If the target custom view is not an architecture view, the API returns a client error.
Responses
application/json
Which edges are returned depends on validate and userLinks:
| validate | userLinks | Edges returned |
|---|---|---|
false |
true |
The user’s links only (default). |
false |
false |
None. |
true |
true |
The real dependencies and the user’s links. |
true |
false |
The real dependencies only. |
Default response (validate=false)
Edges are the links between custom nodes created via Create Architecture Link: AUTHORIZED_LINK or UNAUTHORIZED_LINK, depending on the view’s linkMode. These edges do
not carry a Count.
{
"success": {
"graph": {
"nodes": [
{
"id": "4:abc:123",
"data": {
"Name": "node1",
"Count": 94
}
},
{
"id": "4:abc:456",
"data": {
"Name": "node2",
"Count": 46
}
}
],
"edges": [
{
"id": "4:abc:123_AUTHORIZED_LINK_4:abc:456",
"source": "4:abc:123",
"target": "4:abc:456",
"type": "AUTHORIZED_LINK",
"data": {
"Type": "AUTHORIZED_LINK",
"sourceId": "4:abc:123",
"targetId": "4:abc:456"
}
}
]
},
"documents": []
}
}
Validated response (validate=true, userLinks=false)
Edges are computed from the real object-level relationships between the underlying
objects (e.g. CALL, IMPLEMENT), including escalated relationships, and carry a Count of the
underlying links. Direct and escalated links contribute to the computed counts and are not returned
as separate categories. With userLinks=true, the user’s links are returned as well, in the shape
shown in the default response.
{
"success": {
"graph": {
"nodes": [
{
"id": "4:abc:123",
"data": {
"Name": "node1",
"Count": 94
}
},
{
"id": "4:abc:456",
"data": {
"Name": "node2",
"Count": 46
}
}
],
"edges": [
{
"id": "4:abc:123_CALL_4:abc:456",
"source": "4:abc:123",
"target": "4:abc:456",
"type": "CALL",
"data": {
"Count": 12,
"Type": "CALL"
}
}
]
},
"documents": []
}
}
JSON representation
| Property | Type | Description |
|---|---|---|
| success.graph.nodes | []object | Array of custom nodes in the view. |
| success.graph.nodes[].id | string | The node’s unique identifier. |
| success.graph.nodes[].data | object | Node metadata, including name, count, parameters, and labels. |
| success.graph.edges | []object | Array of relationships between custom nodes: the user’s links when userLinks=true, plus the computed dependencies when validate=true. |
| success.graph.edges[].id | string | Unique identifier of the relationship. |
| success.graph.edges[].source | string | Source custom node ID. |
| success.graph.edges[].target | string | Target custom node ID. |
| success.graph.edges[].type | string | AUTHORIZED_LINK or UNAUTHORIZED_LINK for a user’s link; the real underlying relationship type (e.g. CALL) for a computed dependency. |
| success.graph.edges[].data | object | Relationship metadata. Includes Count for computed dependencies only. |
| success.documents | []object | Associated documents for the aggregation response. |