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"
}
}
}
- provider: The service providing the file, for example
Autodesk,OneDrive,SharePoint,TrimbleConnect, orSAP. Required for a remote resource. - path: The path to the file within the provider's system, including the file name. Required for a remote resource.
- Any other keys are provider-specific metadata, such as
region,server,project,site, ordrive. They follow the same conventions as the Autorun<resource>element; see the resource element section of Solibri Autorun Tasks for provider-by-provider examples.
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:
- From Filter Table takes the filters currently in the Filter Table.
- From Selection captures the components currently selected in the 3D view. This is stored as a list of GUIDs:
{ "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
}
]
- point: A point on the plane.
- normal: The plane normal.
- offset: Offset along the normal.
- enabled: Only planes with
trueare applied.
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:
- A disabled action is skipped. When you use Run selected in the Superrun view, only the selected actions run.
- An action whose license requirement is not satisfied is skipped, and the run continues.
- If an action fails, the run stops at that action. Later actions are not executed.
- Cancelling a run stops it before the next action starts; the action that is already running is not interrupted.
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:
- A required parameter is missing.
- An input file does not exist (checked for local files only).
- The output directory of an output file does not exist (checked for local files only).
- A RUN_SUPERRUN action points to a file that has the wrong extension, does not exist, or itself contains a RUN_SUPERRUN action.
Warnings, which do not prevent the workflow from being run:
- An action's prerequisites may not be available at that point in the workflow. Validation tracks what earlier actions open, check, and close, starting from the current state of the session, so a warning can also mean that the workflow relies on something being open before it starts.
- An action will be skipped at run time because its license requirement is not satisfied.
- A RUN_SUPERRUN action has no file selected.
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.