Traffic Management: Tools

Endpoints

Tools

Tool Groups

Dry-run preview

The mutation endpoints above accept an optional ?dry_run=true query parameter. With the flag set, the handler runs all the same checks as the non-dry-run call but does not persist to the DAO and does not push to the network module. Error responses (status code and body) are identical to the non-dry-run call. On success the answer is 200 {}, or — when the edit changes what a chain costs — the resource cost report described in Chain Management (rules, chains and total; both arrays are always present).

Json structures

Display Tool json structure

{
    "id": 1,
    "set_id": 10,
    "name": "tool",
    "a_ports": [{"id":1, "type":"INF"}, ...],
    "b_ports": [{"id":2, "type":"INF"}, ...],
    "is_chained": false,
    "is_in_group": false,
    "is_online": true
}

The two flags are facts about relationships, not one combined "pickable" verdict: check is_chained when offering a tool to a chain and is_in_group when offering it to a group. A tool in a group no chain uses reads {"is_chained": false, "is_in_group": true} and may still be picked by a chain directly. When both are true the tool is unavailable for everything either way — the combination does not tell whether the group is the chained party or the tool is chained on its own next to an idle group membership.

The bypass-on-link-down policy (bypass_enabled) is not a tool attribute: it is configured where the tool is used, per chain entry — see Chain Management.

Display Tool Group json structure

{
    "id": 1,
    "set_id": 10,
    "name": "tool-group",
    "tools": [1, 2],
    "group_logic": "active_passive_ha",
    "type": "inline",
    "active_tool_id": 1
}

Back to X2-SERIES API Home