Create Custom Node (Reserved)


Overview

Create a custom node within a custom view. A custom node groups objects based on filter criteria such as transaction membership, object type, insight association, or name pattern. Multiple filters can be combined using AND logic.

URI

POST /rest/applications/{application}/custom-views/nodes

Path parameters

application (string)

This parameter identifies the analyzed application. The application name must be properly encoded if required. Character back-quote is not allowed.

Request Body

{
    "name": "Cloud Blockers in Payment Service",
    "modeId": "abc123-def456",
    "searchQuery": {
        "page": 1,
        "limit": 100,
        "name": "",
        "fullName": "",
        "mode": "child",
        "labels": [],
        "apiLevels": [],
        "objectTypes": ["Java Method", "Java Class"],
        "insightFilters": [
            {
                "category": "CloudReady - Blocker",
                "rules": ["Avoid using java.lang.Runtime.exec()"]
            }
        ],
        "excludedIds": [],
        "operations": [],
        "forceAllTags": 0,
        "forceAllInsight": 1,
        "forceAllAPILevels": true,
        "forceAllProperties": 1,
        "forceAllDocuments": 0,
        "isTagsAndObjectTypes": true,
        "pos": "start",
        "searchBy": ["Name"],
        "isRegex": false,
        "ignoreCase": true,
        "searchType": "string",
        "objectSearchBy": "",
        "sortKey": "Name",
        "sortOrder": "asc",
        "documents": [],
        "module": [],
        "transactions": []
    }
}

Request Body Properties

PropertyTypeRequiredDescription
namestringYesName for the custom node.
modeIdstringYesID of the custom view to add the node to.
searchQueryobjectYesFilter criteria defining which objects to include.

Search Query Properties

PropertyTypeDescription
objectTypes[]stringFilter by object types (e.g., “Java Method”, “Java Class”).
insightFilters[]objectFilter by insights. Each filter has category and rules.
transactions[]objectFilter by transaction membership. Each has label and value (transaction ID).
namestringFilter by object name pattern.
objectSearchBystringScope filter: “”, “internal”, “external”, or “all”.
forceAllInsightintegerSet to 1 to require all insight filters to match (AND logic).
isTagsAndObjectTypesbooleanWhether to combine tags and object types with AND logic.

Insight Filter Object

PropertyTypeDescription
categorystringInsight category in format “InsightType - Value”.
rules[]stringList of specific rule names within the insight category.

Transaction Filter Object

PropertyTypeDescription
labelstringTransaction identifier.
valuestringTransaction identifier (same).

Responses

application/json

Example:

{
    "success": {
        "id": "node-xyz789",
        "name": "Cloud Blockers in Payment Service",
        "objectCount": 42
    }
}

JSON representation

PropertyTypeDescription
success.idstringThe unique identifier for the created node.
success.namestringThe node name.
success.objectCountintegerNumber of objects matching the filter criteria.

Usage Examples

Filter by Object Type

{
    "name": "All Java Methods",
    "modeId": "view-123",
    "searchQuery": {
        "objectTypes": ["Java Method"],
        "forceAllInsight": 0
    }
}

Filter by Transaction

{
    "name": "Payment Transaction Objects",
    "modeId": "view-123",
    "searchQuery": {
        "transactions": [{"label": "12345", "value": "12345"}],
        "forceAllInsight": 0
    }
}

Filter by Insight

{
    "name": "Cloud Migration Blockers",
    "modeId": "view-123",
    "searchQuery": {
        "insightFilters": [
            {
                "category": "CloudReady - Blocker",
                "rules": ["Avoid using java.lang.Runtime.exec()"]
            }
        ],
        "forceAllInsight": 1
    }
}

Combined Filters (AND logic)

{
    "name": "Java Methods with Cloud Issues",
    "modeId": "view-123",
    "searchQuery": {
        "objectTypes": ["Java Method"],
        "insightFilters": [
            {
                "category": "CloudReady - Medium",
                "rules": ["Avoid hardcoded IP addresses"]
            }
        ],
        "forceAllInsight": 1,
        "isTagsAndObjectTypes": true
    }
}