Daemon API - Get

Role

Endpoints for the machine role in the Pixotope network.

Role [GET]

Role

Returns the current machine role configuration, including the role type, connected Director IP address, and any backup IP.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Role

string

The current machine role (e.g. `"StandAlone"`, `"Director"`, `"Renderer"`, `"Client"`).

IPAddress

string

The IP address of the Director this machine is connected to (empty for StandAlone/Director).

BackupIPAddress

string

The IP address of the backup Director (empty if not configured).

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "Role",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "Role"
}
JSON
{
  "Value": {
    "Role": "Director",
    "IPAddress": "",
    "BackupIPAddress": ""
  }
}

Backup

Endpoints for server backup configuration and status on this machine.

ServerBackup [GET]

ServerBackup

Returns the current server backup configuration and status for this machine, including whether backup is enabled, the backup server IP, and related state.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

object

The server backup state object.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "ServerBackup",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "ServerBackup"
}
JSON
{
  "Value": {
    "Enabled": false,
    "BackupIP": "",
    "IsBackupServer": false
  }
}
BuckupInfoUpdateInProgress [GET]

BuckupInfoUpdateInProgress

Returns whether a backup information update operation is currently in progress on this machine.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

boolean

Whether a backup info update is in progress.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "BuckupInfoUpdateInProgress",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "BuckupInfoUpdateInProgress"
}
JSON
{
  "Value": false
}
BackupCleanupInProgress [GET]

BackupCleanupInProgress

Returns whether a backup cleanup operation is currently running on this machine.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

boolean

Whether backup cleanup is in progress.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "BackupCleanupInProgress",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "BackupCleanupInProgress"
}
JSON
{
  "Value": false
}
MainServerInfo [GET]

MainServerInfo

Returns information about the main (primary) server in the current backup topology, such as its IP address and machine name.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

object

The main server info object.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "MainServerInfo",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "MainServerInfo"
}
JSON
{
  "Value": {
    "IP": "192.168.1.1",
    "MachineName": "DirectorMachine"
  }
}
BackupClientUpdated [GET]

BackupClientUpdated

Returns whether the backup client configuration has been updated since the last restart. Used internally to coordinate backup state synchronization.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

boolean

Whether the backup client has been updated.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "BackupClientUpdated",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "BackupClientUpdated"
}
JSON
{
  "Value": false
}

Projects

Endpoints for the project list on this machine.

Projects [GET]

Projects

Returns the list of projects currently known to the Store, merged with any local disk overrides registered on this machine.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

object

The project list as returned by the Daemon's internal project store.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "Projects",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "Projects"
}
JSON
{
  "Value": {}
}

General

Top-level daemon state, health, and runtime status endpoints.

State [GET]

State

Returns the full combined state of this Daemon instance, aggregating all runtime values into a single snapshot object.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

object

The full daemon state snapshot.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "State",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "State"
}
JSON
{
  "Value": {}
}
PersistentState [GET]

PersistentState

Returns the full persistent (disk-backed) state of this machine, including all settings that survive a Daemon restart.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

object

The full persistent state object.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "PersistentState",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "PersistentState"
}
JSON
{
  "Value": {}
}

System

Machine-level information, installation details, and feature configuration.

MetaInfo [GET]

MetaInfo

Returns machine meta-information such as the machine name, OS, and active network adapter details.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

object

The meta-information object for this machine.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "MetaInfo",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "MetaInfo"
}
JSON
{
  "Value": {
    "MachineName": "RenderMachine1",
    "OS": "Windows",
    "ActiveAdapter": {
      "Name": "Ethernet",
      "Address": "192.168.1.10"
    }
  }
}
Paths [GET]

Paths

Returns the set of important filesystem paths used by this Pixotope installation.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

object

An object containing named paths (install directory, shows database path, etc.).

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "Paths",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "Paths"
}
JSON
{
  "Value": {
    "InstallDirectory": "C:\\Pixotope",
    "ShowsDatabase": "C:\\Pixotope\\Shows"
  }
}

Role

Endpoints for the machine role in the Pixotope network.

RoleSet [GET]

RoleSet

Returns whether a role has been explicitly set for this machine. Returns `false` if the machine is using the default uninitialized state.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

boolean

Whether a role has been set.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "RoleSet",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "RoleSet"
}
JSON
{
  "Value": true
}

General

Top-level daemon state, health, and runtime status endpoints.

TemporaryStore [GET]

TemporaryStore

Returns the full in-memory temporary state of this Daemon. Temporary state is not persisted to disk and resets on restart.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

object

The full temporary state object.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "TemporaryStore",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "TemporaryStore"
}
JSON
{
  "Value": {
    "daemonIsBusy": false,
    "identifyReceived": true
  }
}

Network

Endpoints for network adapter information on this machine.

NetworkAdapters [GET]

NetworkAdapters

Returns the list of all network adapters detected on this machine.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

object array

Array of network adapter objects, each with a name and IP address.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "NetworkAdapters",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "NetworkAdapters"
}
JSON
{
  "Value": [
    {
      "Name": "Ethernet",
      "Address": "192.168.1.10"
    },
    {
      "Name": "Wi-Fi",
      "Address": "10.0.0.20"
    }
  ]
}

Shows

Endpoints for favourite shows and levels on this machine.

FavouriteShows [GET]

FavouriteShows

Returns the current list of favourite shows and levels for this machine.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

object

An object containing favourite shows and levels arrays, along with filter flags.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "FavouriteShows",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "FavouriteShows"
}
JSON
{
  "Value": {
    "Shows": [
      "Show1",
      "Show2"
    ],
    "Levels": [],
    "FilterShows": false,
    "FilterLevels": false
  }
}

General

Top-level daemon state, health, and runtime status endpoints.

EngineIsStarting [GET]

EngineIsStarting

Returns whether the Pixotope Engine (Director/Renderer process) is currently in the process of starting up.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

boolean

Whether the engine startup is in progress.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "EngineIsStarting",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "EngineIsStarting"
}
JSON
{
  "Value": false
}
DaemonIsBusy [GET]

DaemonIsBusy

Returns whether the Daemon is currently busy processing a long-running operation (e.g. a role change). When busy, certain commands (such as `SetRole`) are refused.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

boolean

Whether the Daemon is currently busy.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "DaemonIsBusy",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "DaemonIsBusy"
}
JSON
{
  "Value": false
}
StorePresent [GET]

StorePresent

Returns whether the Store service has identified itself to this Daemon (i.e. whether the Daemon has received an `Identify` response from the Store).

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

boolean

Whether the Store is present and identified.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "StorePresent",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "StorePresent"
}
JSON
{
  "Value": true
}

System

Machine-level information, installation details, and feature configuration.

FeatureFlags [GET]

FeatureFlags

Returns the feature flags configured for this Pixotope installation. Feature flags enable or disable optional product features.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

object

An object where each key is a feature flag name and the value is a boolean indicating whether it is enabled.

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "FeatureFlags",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "FeatureFlags"
}
JSON
{
  "Value": {
    "ServerFailover": true,
    "ExperimentalUI": false
  }
}
InstallerType [GET]

InstallerType

Returns the type of Pixotope installer present on this machine, indicating whether the full Engine is installed or only the no-engine variant.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

string

The installer type: `"Full"` (Engine installed) or `"NoEngine"` (Engine not installed).

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "InstallerType",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "InstallerType"
}
JSON
{
  "Value": "Full"
}
PixotopeVersion [GET]

PixotopeVersion

Returns the version of Pixotope installed on this machine.

Wire format: [Topic, Message]

Send: GetTopic + {} → Receive: UpdateTopic (targeted) + {Value: ...}

No parameters — message is always {}.

Value

Value

string

The Pixotope version string (e.g. `"26.2.0"`).

Example - Read current value

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "Name": "PixotopeVersion",
  "RespondTo": "<Service>"
}
JSON
{}

Response (you receive)

JSON
{
  "Type": "Update",
  "Target": "<Service>",
  "Source": "<MachineName>-Daemon",
  "Name": "PixotopeVersion"
}
JSON
{
  "Value": "26.2.0"
}