Programmatically Adding or Removing Nodes in a KNIME Workflow

Dear KNIME Community,

I am exploring ways to programmatically add or remove nodes within an existing KNIME workflow using Python or another programming language. My goal is to dynamically modify the workflow’s structure without manual intervention through the KNIME graphical interface.

From my research, I understand that KNIME does not currently offer native support for programmatically altering workflows in this manner.

I am interested in learning about any potential workarounds or best practices the community might recommend for achieving this functionality. Specifically:

  1. Are there any APIs, perhaps unofficial or in development, that facilitate programmatic modifications to workflow structures?
  2. Has anyone successfully manipulated the workflow’s XML files to add or remove nodes? If so, what precautions should be taken to prevent workflow corruption?
  3. Are there alternative approaches or tools that integrate with KNIME to allow for such dynamic workflow modifications?

I appreciate any insights or experiences you can share regarding this topic.

Best regards