Skip to main content

preset

The preset command creates, updates, and runs presets. A snapshot preset stores the current system state for later restoration; a script preset stores a list of API commands to execute.

Command TypeDisplayNet
Minimum Version2.x.x

Usage

preset list
preset set snapshot <preset_name>
preset set script <preset_name> ["command1", "command2", ...]
preset get <preset_name>
preset echo <preset_name>
preset run <preset_name>
preset rename <preset_name> <new_name>
preset delete <preset_name>
preset status <task_id>
preset cancel <task_id>

Subcommands

SubcommandDescription
listRetrieves a list of all presets
setCreates or updates a preset. For a snapshot, stores the current system state; for a script, creates or replaces the command list
getGets a preset's details, including its stored commands. Snapshots return the full SDVoE command set needed to restore from a blank slate, plus any errors that would prevent a complete load (e.g. offline devices)
echo (alias preview)Previews a snapshot's contents without applying it
runRuns a preset. Snapshots execute only the commands needed relative to the current system state; scripts execute their stored commands. Returns a script task ID for status/cancel
renameRenames a preset
deleteDeletes a preset
statusRetrieves the status of a script task
cancelCancels a currently running script task

save <name> is a legacy alias for set snapshot <name>.

Arguments

ArgumentRequiredDescription
preset_typesetsnapshot or script. Other subcommands detect the type from the name.
preset_nameMost subcommandsThe preset name. Use underscores instead of spaces (spaces are not supported).
commandsset scriptA JSON array of command strings, e.g. ["connect hdmi tx1 rx2", "WAIT 500", "connect hdmi tx2 rx1"].
task_idstatus, cancelThe task ID returned from a script run.

Snapshot behavior

  • get returns the sum of all possible commands needed to restore the snapshot exactly, assuming every setting on every device must be restored.
  • run executes only the commands required relative to the current system state, minimizing the number of commands sent.
  • Loading a snapshot can cause a large amount of response traffic, since many commands run in quick succession.

Script behavior

  • All SDVoE and DisplayNet commands are supported in scripts.
  • A WAIT <milliseconds> command delays processing of the next command, which suits third-party devices that need timed command sequences.
  • Each command is authorized as the user executing the script; unauthorized commands are skipped.
  • Errors during a run are stored in the script task details. After 100 errors, the script stops.

Examples

Save the current routing state
preset set snapshot MorningState
Create a script with a timed sequence
preset set script MyScript [ "connect hdmi tx1 rx2", "WAIT 500", "connect hdmi tx2 rx1" ]
Run it and check the task
preset run MyScript
preset status c013cd7d-10b9-4812-bd69-9af9b0e9b501

Return value

preset list
{
"status": "SUCCESS",
"request_id": null,
"result": {
"presets": [
{
"name": "MorningState",
"type": "snapshot",
"creationDate": "2026-06-29T22:31:13.808789",
"createdBy": "DNAdmin",
"lastEditDate": "2026-06-30T19:51:15.507022",
"lastEditedBy": "DisplayNet",
"snapShotId": 4,
"scriptItemId": 0
}
]
},
"error": null
}

The id member that applies to the preset's type carries its value; the other is 0.

Notifications

Preset changes broadcast a DN_NOTIFICATION with a preset_update result:

preset set snapshot MorningState
{
"status": "DN_NOTIFICATION",
"request_id": null,
"result": {
"preset_update": [
{
"type": "snapshot",
"name": "MorningState",
"snapShotId": 26,
"createdBy": "DisplayNet",
"creationDate": "2023-07-24T19:25:03.9515274Z",
"lastEditedBy": "DisplayNet",
"LastEditDate": "2023-07-24T19:25:03.9515282Z"
}
]
},
"error": null
}

REST API

Endpoint typeDisplayNet API command
AddressPOST /api/displaynet/<operation>, or name the operation in the body of a POST /api/displaynet. See Sending commands.
RoleUser
SubcommandOperationParameters
cancelpreset_canceltask_id
deletepreset_deletename
echopreset_echoname
getpreset_getname
listpreset_list
renamepreset_renameold_name new_name
runpreset_runname
savepreset_savename
setpreset_settype name [commands]*
statuspreset_status[task_id]

A parameter in brackets is optional. A parameter marked * takes the remainder of the command line as one string. Pass the text exactly as you would type it on the TCI interface.

See also

  • getinitdata: the presets dataset for client startup
  • replace: migrates presets when replacing a device