Developer Platform

Solibri API - Solibri Superrun File Format

Since: 26.9.0

A Superrun workflow is stored as a UTF-8 JSON document with the .superrun file extension. Normally you create these files in the Superrun view of Solibri, but the format is plain text, so you can also generate or edit them with a text editor or a script.

File structure

{
  "version": 1,
  "name": "Nightly check",
  "actions": [
    {
      "type": "OPEN_MODEL",
      "params": { "file": "C:\\Models\\Building.ifc" },
      "enabled": true
    }
  ]
}
Key Type Description
version number Format version. Currently 1.
name string Workflow name shown in the Superrun view. Default: New Superrun.
actions array The actions to execute, in execution order.

Each element of actions is an object:

Key Type Description
type string The action identifier, for example OPEN_MODEL or CHECK. See Solibri Superrun Actions. Actions with an unknown type are dropped when the file is loaded.
params object Parameter names and values for the action.
enabled boolean Whether the action is executed. Default: true.

Unknown keys are ignored. Because JSON uses \ as an escape character, Windows paths must be written with doubled backslashes (C:\\Models\\Building.ifc) or with forward slashes (C:/Models/Building.ifc).

Parameter value types

Type JSON value Notes
Text string
Boolean true / false
Integer, decimal number
Length number Stored in millimeters.
Angle number Degrees.
Color string Hex color, with or without a leading #.
Choice, option string One of the values listed for the parameter.
File string or object A local path, a URL, or a remote resource object. See File and resource references.
Categories array of strings Model category names.
Component filter JSON array, or a string containing one See Component filters.
Section planes JSON array, or a string containing one See Section planes.

Parameters that you leave out of params fall back to their default values, which are listed per action in Solibri Superrun Actions.

File and resource references

Local file system or mapped network drive

Give the path as a string:

{ "type": "OPEN_MODEL", "params": { "file": "C:\\Users\\Models\\ifc\\MyModel.ifc" } }

URL

If the string is a valid URL, the file is read from that URL:

{ "type": "OPEN_MODEL", "params": { "file": "https://example.com/models/MyModel.ifc" } }

Remote file from a cloud provider

Instead of a path string, give an object that identifies the provider and the path within it:

{
  "type": "OPEN_MODEL",
  "params": {
    "file": {
      "provider": "Autodesk",
      "region": "EMEA",
      "server": "My Account",
      "project": "My Project",
      "path": "Project Files/Example Project/Structural.ifc"
    }
  }
}

To access files from a remote provider, you must first log in to that service in Solibri. Solibri then attempts to refresh the saved access token, but initial setup and occasional re-authentication are done manually.

In the Superrun view, remote references are shown as [provider] path and are not editable as plain text: use Browse to pick the file again.

Component filters

The visualization actions—and CHECK when its scope is filtered—select components with a filter_json parameter. The value uses the standard Solibri class and property filter JSON, either as a JSON array or as a string containing that array. The default filter matches every component:

[
  {
    "target": "ANY",
    "state": "INCLUDE"
  }
]

The easiest way to produce a filter is to build it in Solibri and capture it in the Superrun view:

{ "superrun_selection_guids": ["3DqaUydM1Tps1e3s2Ny7Ph", "1Ab2CdE3fG4hI5jK6lM7nO"] }

Section planes

SET_SECTION_PLANES takes its planes from a planes_json parameter. The value is a JSON array of plane objects, either as an array or as a string containing one:

[
  {
    "point": { "x": 0.0, "y": 0.0, "z": 0.0 },
    "normal": { "x": 0.0, "y": 0.0, "z": 1.0 },
    "offset": 0.0,
    "enabled": true
  }
]

At most six planes can be applied, and all existing section planes are disabled before the new ones are applied. In the Superrun view, Capture Current Planes fills this value from the current 3D view.

Execution

Actions run one after another, in file order:

Each run consumes one Autorun seat from your license quota. Offline licenses have unlimited Autorun seats. A workflow started with RUN_SUPERRUN from inside another workflow does not consume an additional seat.

Validation

Validate in the Superrun view checks a workflow without running it and without consuming a seat. It reports:

Errors, which prevent the workflow from being run:

Warnings, which do not prevent the workflow from being run:

Where workflows are stored

Superrun files are saved wherever you choose in the Save Superrun dialog; there is no fixed default directory. The Superrun view remembers the directory you last opened or saved a workflow in.

A workflow can also be pinned to the current project, in which case it is stored inside the .smc file and reappears in the Superrun view when that project is opened. Pinned workflows travel with the project, so they do not need a separate .superrun file.