Node Labels
List, get, iterate, and count workflow node labels (node types) using the WorkflowNodeLabelCollection.
Node labels define the types of workflow nodes in a project's schema — for example
"SimulationRun", "MeasurementRun", or "LayoutReview". Access them via
project.workflow_nodes.labels, which is a WorkflowNodeLabelCollection.
No one() or first()
WorkflowNodeLabelCollection does not support one() or first(). Use get(),
get_or_none(), or list() with a name filter instead.
List labels
from optixlog import SDKClient
from optixlog.management import Management
client = SDKClient(base_url="https://optixlog.leidos.com", api_key="sk-opt-...")
mgmt = Management(client)
project = mgmt.project("proj_grating_7f3a")
page = project.workflow_nodes.labels.list()
for label in page.items:
print(label.id, label.name)Filter by name
page = project.workflow_nodes.labels.list(name="SimulationRun")The name filter is a substring / prefix match depending on server configuration.
Get by id
# Raises NotFoundError if not found
label = project.workflow_nodes.labels.get("label-abc123")
# Returns None instead of raising
label = project.workflow_nodes.labels.get_or_none("label-abc123")Iterate all labels
for label in project.workflow_nodes.labels.iter():
print(label.id, label.name, label.documentation_id)Count
total = project.workflow_nodes.labels.count()
sim_count = project.workflow_nodes.labels.count(name="Simulation")Ordering
Order by name or id. Default is name ascending.
page = project.workflow_nodes.labels.list(order_by="id", order="asc")NodeLabel fields
Prop
Type
Documentation fields
A documentation entry is a named pointer to an uploaded file. Its bytes are private — call download_documentation (below) to get a signed URL.
Prop
Type
Download a documentation file
download_documentation(documentation_id) returns a short-lived signed download_url for the file backing a documentation entry reachable from the project (via a label or the project's schema).
label = project.workflow_nodes.labels.get("label-abc123")
if label.documentation:
dl = project.workflow_nodes.labels.download_documentation(label.documentation.id)
print(dl.download_url, dl.expires_at)