Skip to main content

What's New and Release Notes for 26.x

Changed for APIs in 26.4, Sub Labels

In addition to the schemas described in Changed APIs in 26.4.0 (Schemas) these are the changes related to the property sub_labels.

Property sub_labels

Adding sub_labels introduces multi-dimensional, nested metadata sets into workloads.

Instead of a flat list of tags, workloads can now support groups of nested label collections.

vens_get

This schema update aligns the VEN retrieval API with multi-dimensional metadata tracking by introducing a sub_labels property for workloads associated with a VEN.

{
  "properties": {
    "workloads": {
      "items": {
        "properties": {
          "sub_labels": {
            "description": "List of sub-label sets associated with this workload",
            "type": [
              "array",
              "null"
            ],
            "items": {
              "description": "A sub-label set associated with this workload",
              "type": "array",
              "items": {
                "type": "object",
                "required": [
                  "href",
                  "key",
                  "value"
                ],
                "properties": {
                  "href": {
                    "description": "The URI of the label.",
                    "type": "string"
                  },
                  "key": {
                    "description": "Key of the label",
                    "type": "string"
                  },
                  "value": {
                    "description": "Value of the label",
                    "type": "string"
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}

Nullable Array of Arrays Structure: The sub_labels property is typed as ["array", "null"], making it optional or nullable.

Inline Key-Value Pair Definition: Each item within the nested array is an object representing an individual label instance. The schema enforces a strict object structure requiring three fields:

href: The unique URI/API path of the label (string).

key: The dimension or category of the label (string).

value: The specific assignment name of the label (string).

workloads_get

This update refines the workload retrieval data model (workloads_get) by standardizing label metadata and officially supporting nested sub-labels.

It introduces a new sub-labels array and fixes a documentation bug in the existing core labels object.

{
  "properties": {
    "sub_labels": {
      "description": "List of sub-label sets associated with this workload",
      "type": "array",
      "items": {
        "description": "A sub-label set associated with this workload",
        "type": "array",
        "items": {
          "type": "object",
          "required": [
            "href",
            "key",
            "value"
          ],
          "properties": {
            "href": {
              "description": "The URI of the label.",
              "type": "string"
            },
            "key": {
              "description": "Key of the label",
              "type": "string"
            },
            "value": {
              "description": "Value of the label",
              "type": "string"
            }
          }
        }
      }
    },
    "labels": {
      "items": {
        "properties": {
          "href": {
            "description": {
              "__old": "The URI of the VEN that manages this workload. This replaces the 'agent' field of this object.",
              "__new": "The URI of the label."
            }
          }
        }
      }
    }
  }
}

The schema fixes an incorrect legacy description.

The href inside the core labels block was erroneously documented as pointing to a VEN/Agent management URI, but it actually references the label's own URI. Correcting the documentation block prevents confusion for developers when integrating with the core labels object array.

workloads_post

This update introduces support for nested metadata during workload creation (workloads_post) by adding a new property, sub_labels, to the request payload configuration.

{
  "properties": {
    "sub_labels": {
      "description": "List of sub-label sets associated with the workload",
      "type": "array",
      "items": {
        "$ref": "labels.schema.json"
      }
    }
  }
}

Addition of a Sub-Label Array: The schema introduces a new property named sub_labels

Structural Reference ($ref): The creation payload defines this field as an "array" whose items reference an existing core schema file: labels.schema.json.

This allows API clients to assign a structured collection or list of nested sub-label sets directly when a new workload is provisioned.

workloads_with_ven_interface_put

This update introduces support for updating nested metadata on workloads paired with VEN network interfaces (workloads_with_ven_interfaces_put) by adding the sub_labels property to the update payload.

{
  "properties": {
    "sub_labels": {
      "description": "List of sub-label sets associated with the workload",
      "type": "array",
      "items": {
        "$ref": "labels.schema.json"
      }
    }
  }
}
workloads_with_ven_put

This update introduces support for modifying nested metadata on standard VEN-managed workloads (workloads_with_ven_put) by adding the sub_labels property to the update payload.

Consistent with the other write/update endpoints (workloads_post and workloads_with_ven_interfaces_put), this array references the core external schema file: labels.schema.json.

{
  "properties": {
    "sub_labels": {
      "description": "List of sub-label sets associated with the workload",
      "type": "array",
      "items": {
        "$ref": "labels.schema.json"
      }
    }
  }
}
workloads_without_ven_put

This update introduces support for modifying nested metadata on unmanaged or agentless workloads (workloads_without_ven_put) by adding the sub_labels property to the update payload.

This allows API clients to update, append to, or overwrite a structured collection of sub-label sets on workloads without a Virtual Enforcement Node installed (e.g., third-party appliances, legacy systems, or static network targets).

{
  "properties": {
    "sub_labels": {
      "description": "List of sub-label sets associated with the workload",
      "type": "array",
      "items": {
        "$ref": "labels.schema.json"
      }
    }
  }
}