OptixLog Docs
Python SDKManagement API

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

node_labels.py
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)

On this page