The complete API

In the following section you can find a detailed description of the current API version 5.2.

Enums

BasicType

[
  "Uuid",
  "String",
  "StringList",
  "Int",
  "Uint",
  "Double",
  "Bool",
  "Variant",
  "Color",
  "Time",
  "Object"
]

BrowserIcon

[
  "BrowserIconNone",
  "BrowserIconFolder",
  "BrowserIconFile",
  "BrowserIconMusic",
  "BrowserIconVideo",
  "BrowserIconPictures",
  "BrowserIconApplication",
  "BrowserIconDocument",
  "BrowserIconPackage",
  "BrowserIconFavorites"
]

CloudConnectionState

[
  "CloudConnectionStateDisabled",
  "CloudConnectionStateUnconfigured",
  "CloudConnectionStateConnecting",
  "CloudConnectionStateConnected"
]

ConfigurationError

[
  "ConfigurationErrorNoError",
  "ConfigurationErrorInvalidTimeZone",
  "ConfigurationErrorInvalidStationName",
  "ConfigurationErrorInvalidId",
  "ConfigurationErrorInvalidPort",
  "ConfigurationErrorInvalidHostAddress",
  "ConfigurationErrorBluetoothHardwareNotAvailable",
  "ConfigurationErrorInvalidCertificate"
]

CreateMethod

[
  "CreateMethodUser",
  "CreateMethodAuto",
  "CreateMethodDiscovery"
]

DeviceError

[
  "DeviceErrorNoError",
  "DeviceErrorPluginNotFound",
  "DeviceErrorVendorNotFound",
  "DeviceErrorDeviceNotFound",
  "DeviceErrorDeviceClassNotFound",
  "DeviceErrorActionTypeNotFound",
  "DeviceErrorStateTypeNotFound",
  "DeviceErrorEventTypeNotFound",
  "DeviceErrorDeviceDescriptorNotFound",
  "DeviceErrorMissingParameter",
  "DeviceErrorInvalidParameter",
  "DeviceErrorSetupFailed",
  "DeviceErrorDuplicateUuid",
  "DeviceErrorCreationMethodNotSupported",
  "DeviceErrorSetupMethodNotSupported",
  "DeviceErrorHardwareNotAvailable",
  "DeviceErrorHardwareFailure",
  "DeviceErrorAuthenticationFailure",
  "DeviceErrorDeviceInUse",
  "DeviceErrorDeviceInRule",
  "DeviceErrorDeviceIsChild",
  "DeviceErrorPairingTransactionIdNotFound",
  "DeviceErrorParameterNotWritable",
  "DeviceErrorItemNotFound",
  "DeviceErrorItemNotExecutable",
  "DeviceErrorUnsupportedFeature",
  "DeviceErrorTimeout"
]

DeviceSetupStatus

[
  "DeviceSetupStatusNone",
  "DeviceSetupStatusInProgress",
  "DeviceSetupStatusComplete",
  "DeviceSetupStatusFailed"
]

IOType

[
  "IOTypeNone",
  "IOTypeDigitalInput",
  "IOTypeDigitalOutput",
  "IOTypeAnalogInput",
  "IOTypeAnalogOutput"
]

InputType

[
  "InputTypeNone",
  "InputTypeTextLine",
  "InputTypeTextArea",
  "InputTypePassword",
  "InputTypeSearch",
  "InputTypeMail",
  "InputTypeIPv4Address",
  "InputTypeIPv6Address",
  "InputTypeUrl",
  "InputTypeMacAddress"
]

LoggingError

[
  "LoggingErrorNoError",
  "LoggingErrorLogEntryNotFound",
  "LoggingErrorInvalidFilterParameter"
]

LoggingEventType

[
  "LoggingEventTypeTrigger",
  "LoggingEventTypeActiveChange",
  "LoggingEventTypeEnabledChange",
  "LoggingEventTypeActionsExecuted",
  "LoggingEventTypeExitActionsExecuted"
]

LoggingLevel

[
  "LoggingLevelInfo",
  "LoggingLevelAlert"
]

LoggingSource

[
  "LoggingSourceSystem",
  "LoggingSourceEvents",
  "LoggingSourceActions",
  "LoggingSourceStates",
  "LoggingSourceRules",
  "LoggingSourceBrowserActions"
]

MediaBrowserIcon

[
  "MediaBrowserIconNone",
  "MediaBrowserIconPlaylist",
  "MediaBrowserIconRecentlyPlayed",
  "MediaBrowserIconLibrary",
  "MediaBrowserIconMusicLibrary",
  "MediaBrowserIconVideoLibrary",
  "MediaBrowserIconPictureLibrary",
  "MediaBrowserIconDisk",
  "MediaBrowserIconUSB",
  "MediaBrowserIconNetwork",
  "MediaBrowserIconAux",
  "MediaBrowserIconBluetooth",
  "MediaBrowserIconSpotify",
  "MediaBrowserIconAmazon",
  "MediaBrowserIconTuneIn",
  "MediaBrowserIconSiriusXM",
  "MediaBrowserIconVTuner",
  "MediaBrowserIconTidal",
  "MediaBrowserIconAirable",
  "MediaBrowserIconDeezer",
  "MediaBrowserIconNapster",
  "MediaBrowserIconSoundCloud",
  "MediaBrowserIconRadioParadise"
]

NetworkDeviceState

[
  "NetworkDeviceStateUnknown",
  "NetworkDeviceStateUnmanaged",
  "NetworkDeviceStateUnavailable",
  "NetworkDeviceStateDisconnected",
  "NetworkDeviceStatePrepare",
  "NetworkDeviceStateConfig",
  "NetworkDeviceStateNeedAuth",
  "NetworkDeviceStateIpConfig",
  "NetworkDeviceStateIpCheck",
  "NetworkDeviceStateSecondaries",
  "NetworkDeviceStateActivated",
  "NetworkDeviceStateDeactivating",
  "NetworkDeviceStateFailed"
]

NetworkManagerError

[
  "NetworkManagerErrorNoError",
  "NetworkManagerErrorUnknownError",
  "NetworkManagerErrorWirelessNotAvailable",
  "NetworkManagerErrorAccessPointNotFound",
  "NetworkManagerErrorNetworkInterfaceNotFound",
  "NetworkManagerErrorInvalidNetworkDeviceType",
  "NetworkManagerErrorWirelessNetworkingDisabled",
  "NetworkManagerErrorWirelessConnectionFailed",
  "NetworkManagerErrorNetworkingDisabled",
  "NetworkManagerErrorNetworkManagerNotAvailable"
]

NetworkManagerState

[
  "NetworkManagerStateUnknown",
  "NetworkManagerStateAsleep",
  "NetworkManagerStateDisconnected",
  "NetworkManagerStateDisconnecting",
  "NetworkManagerStateConnecting",
  "NetworkManagerStateConnectedLocal",
  "NetworkManagerStateConnectedSite",
  "NetworkManagerStateConnectedGlobal"
]

RemovePolicy

[
  "RemovePolicyCascade",
  "RemovePolicyUpdate"
]

RepeatingMode

[
  "RepeatingModeNone",
  "RepeatingModeHourly",
  "RepeatingModeDaily",
  "RepeatingModeWeekly",
  "RepeatingModeMonthly",
  "RepeatingModeYearly"
]

RuleError

[
  "RuleErrorNoError",
  "RuleErrorInvalidRuleId",
  "RuleErrorRuleNotFound",
  "RuleErrorThingNotFound",
  "RuleErrorEventTypeNotFound",
  "RuleErrorStateTypeNotFound",
  "RuleErrorActionTypeNotFound",
  "RuleErrorInvalidParameter",
  "RuleErrorInvalidRuleFormat",
  "RuleErrorMissingParameter",
  "RuleErrorInvalidRuleActionParameter",
  "RuleErrorInvalidStateEvaluatorValue",
  "RuleErrorTypesNotMatching",
  "RuleErrorNotExecutable",
  "RuleErrorInvalidTimeDescriptor",
  "RuleErrorInvalidRepeatingOption",
  "RuleErrorInvalidCalendarItem",
  "RuleErrorInvalidTimeEventItem",
  "RuleErrorContainsEventBasesAction",
  "RuleErrorNoExitActions",
  "RuleErrorInterfaceNotFound"
]

ScriptError

[
  "ScriptErrorNoError",
  "ScriptErrorScriptNotFound",
  "ScriptErrorInvalidScript",
  "ScriptErrorHardwareFailure"
]

ScriptMessageType

[
  "ScriptMessageTypeLog",
  "ScriptMessageTypeWarning"
]

SetupMethod

[
  "SetupMethodJustAdd",
  "SetupMethodDisplayPin",
  "SetupMethodEnterPin",
  "SetupMethodPushButton",
  "SetupMethodUserAndPassword",
  "SetupMethodOAuth"
]

StateOperator

[
  "StateOperatorAnd",
  "StateOperatorOr"
]

TagError

[
  "TagErrorNoError",
  "TagErrorThingNotFound",
  "TagErrorRuleNotFound",
  "TagErrorTagNotFound"
]

ThingError

[
  "ThingErrorNoError",
  "ThingErrorPluginNotFound",
  "ThingErrorVendorNotFound",
  "ThingErrorThingNotFound",
  "ThingErrorThingClassNotFound",
  "ThingErrorActionTypeNotFound",
  "ThingErrorStateTypeNotFound",
  "ThingErrorEventTypeNotFound",
  "ThingErrorThingDescriptorNotFound",
  "ThingErrorMissingParameter",
  "ThingErrorInvalidParameter",
  "ThingErrorSetupFailed",
  "ThingErrorDuplicateUuid",
  "ThingErrorCreationMethodNotSupported",
  "ThingErrorSetupMethodNotSupported",
  "ThingErrorHardwareNotAvailable",
  "ThingErrorHardwareFailure",
  "ThingErrorAuthenticationFailure",
  "ThingErrorThingInUse",
  "ThingErrorThingInRule",
  "ThingErrorThingIsChild",
  "ThingErrorPairingTransactionIdNotFound",
  "ThingErrorParameterNotWritable",
  "ThingErrorItemNotFound",
  "ThingErrorItemNotExecutable",
  "ThingErrorUnsupportedFeature",
  "ThingErrorTimeout"
]

ThingSetupStatus

[
  "ThingSetupStatusNone",
  "ThingSetupStatusInProgress",
  "ThingSetupStatusComplete",
  "ThingSetupStatusFailed"
]

Unit

[
  "UnitNone",
  "UnitSeconds",
  "UnitMinutes",
  "UnitHours",
  "UnitUnixTime",
  "UnitMeterPerSecond",
  "UnitKiloMeterPerHour",
  "UnitDegree",
  "UnitRadiant",
  "UnitDegreeCelsius",
  "UnitDegreeKelvin",
  "UnitMired",
  "UnitMilliBar",
  "UnitBar",
  "UnitPascal",
  "UnitHectoPascal",
  "UnitAtmosphere",
  "UnitLumen",
  "UnitLux",
  "UnitCandela",
  "UnitMilliMeter",
  "UnitCentiMeter",
  "UnitMeter",
  "UnitKiloMeter",
  "UnitGram",
  "UnitKiloGram",
  "UnitDezibel",
  "UnitBpm",
  "UnitKiloByte",
  "UnitMegaByte",
  "UnitGigaByte",
  "UnitTeraByte",
  "UnitMilliWatt",
  "UnitWatt",
  "UnitKiloWatt",
  "UnitKiloWattHour",
  "UnitEuroPerMegaWattHour",
  "UnitEuroCentPerKiloWattHour",
  "UnitPercentage",
  "UnitPartsPerMillion",
  "UnitEuro",
  "UnitDollar",
  "UnitHertz",
  "UnitAmpere",
  "UnitMilliAmpere",
  "UnitVolt",
  "UnitMilliVolt",
  "UnitVoltAmpere",
  "UnitVoltAmpereReactive",
  "UnitAmpereHour",
  "UnitMicroSiemensPerCentimeter",
  "UnitDuration",
  "UnitNewton",
  "UnitNewtonMeter",
  "UnitRpm"
]

UserError

[
  "UserErrorNoError",
  "UserErrorBackendError",
  "UserErrorInvalidUserId",
  "UserErrorDuplicateUserId",
  "UserErrorBadPassword",
  "UserErrorTokenNotFound",
  "UserErrorPermissionDenied"
]

ValueOperator

[
  "ValueOperatorEquals",
  "ValueOperatorNotEquals",
  "ValueOperatorLess",
  "ValueOperatorGreater",
  "ValueOperatorLessOrEqual",
  "ValueOperatorGreaterOrEqual"
]

WirelessMode

[
  "WirelessModeUnknown",
  "WirelessModeAdhoc",
  "WirelessModeInfrastructure",
  "WirelessModeAccessPoint"
]

Flags

CreateMethods

[
  "$ref:CreateMethod"
]

Methods

Actions.ExecuteAction

Execute a single action.

Note: Please use Integrations.ExecuteAction instead.

Params

{
  "actionTypeId": "Uuid",
  "deviceId": "Uuid",
  "o:params": "$ref:ParamList"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:displayMessage": "String"
}

See also: DeviceError, ParamList

Actions.ExecuteBrowserItem

Execute the item identified by itemId on the given device.

Note: Please use Integrations.ExecuteBrowserItem instead.

Params

{
  "deviceId": "Uuid",
  "itemId": "String"
}

Returns

{
  "deviceError": "$ref:DeviceError"
}

See also: DeviceError

Actions.ExecuteBrowserItemAction

Execute the action for the browser item identified by actionTypeId and the itemId on the given device.

Note: Please use Integrations.ExecuteBrowserItem instead.

Params

{
  "actionTypeId": "Uuid",
  "deviceId": "Uuid",
  "itemId": "String",
  "o:params": "$ref:ParamList"
}

Returns

{
  "deviceError": "$ref:DeviceError"
}

See also: DeviceError, ParamList

Actions.GetActionType

Get the ActionType for the given ActionTypeId.

Note: Please use the Integrations namespace instead.

Params

{
  "actionTypeId": "Uuid"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:actionType": "$ref:ActionType"
}

See also: ActionType, DeviceError

Configuration.DeleteMqttPolicy

Delete a MQTT policy from the broker.

Params

{
  "clientId": "String"
}

Returns

{
  "configurationError": "$ref:ConfigurationError"
}

See also: ConfigurationError

Configuration.DeleteMqttServerConfiguration

Delete a MQTT Server interface of the server.

Params

{
  "id": "String"
}

Returns

{
  "configurationError": "$ref:ConfigurationError"
}

See also: ConfigurationError

Configuration.DeleteTcpServerConfiguration

Delete a TCP interface of the server. Note: if you are deleting the configuration for the interface you are currently connected to, the connection will be dropped.

Params

{
  "id": "String"
}

Returns

{
  "configurationError": "$ref:ConfigurationError"
}

See also: ConfigurationError

Configuration.DeleteWebServerConfiguration

Delete a WebServer interface of the server.

Params

{
  "id": "String"
}

Returns

{
  "configurationError": "$ref:ConfigurationError"
}

See also: ConfigurationError

Configuration.DeleteWebSocketServerConfiguration

Delete a WebSocket Server interface of the server. Note: if you are deleting the configuration for the interface you are currently connected to, the connection will be dropped.

Params

{
  "id": "String"
}

Returns

{
  "configurationError": "$ref:ConfigurationError"
}

See also: ConfigurationError

Configuration.GetAvailableLanguages

Returns a list of locale codes available for the server. i.e. en_US, de_AT

Note: Use the locale property in the Handshake message instead.

Params

{}

Returns

{
  "languages": [
    "String"
  ]
}

Configuration.GetConfigurations

Get all configuration parameters of the server.

Params

{}

Returns

{
  "basicConfiguration": {
    "d:language": "String",
    "d:serverTime": "Uint",
    "d:timeZone": "String",
    "debugServerEnabled": "Bool",
    "serverName": "String",
    "serverUuid": "Uuid"
  },
  "cloud": {
    "enabled": "Bool"
  },
  "tcpServerConfigurations": [
    "$ref:ServerConfiguration"
  ],
  "webServerConfigurations": [
    "$ref:WebServerConfiguration"
  ],
  "webSocketServerConfigurations": [
    "$ref:ServerConfiguration"
  ]
}

See also: ServerConfiguration, WebServerConfiguration

Configuration.GetMqttPolicies

Get all MQTT broker policies.

Params

{}

Returns

{
  "mqttPolicies": [
    "$ref:MqttPolicy"
  ]
}

See also: MqttPolicy

Configuration.GetMqttServerConfigurations

Get all MQTT Server configurations.

Params

{}

Returns

{
  "mqttServerConfigurations": [
    "$ref:ServerConfiguration"
  ]
}

See also: ServerConfiguration

Configuration.GetTimeZones

Get the list of available timezones.

Note: Use System.GetTimeZones instead.

Params

{}

Returns

{
  "timeZones": [
    "String"
  ]
}

Configuration.SetCloudEnabled

Sets whether the cloud connection is enabled or disabled in the settings.

Params

{
  "enabled": "Bool"
}

Returns

{
  "configurationError": "$ref:ConfigurationError"
}

See also: ConfigurationError

Configuration.SetDebugServerEnabled

Enable or disable the debug server.

Params

{
  "enabled": "String"
}

Returns

{
  "configurationError": "$ref:ConfigurationError"
}

See also: ConfigurationError

Configuration.SetLanguage

Sets the server language to the given language. See also: "GetAvailableLanguages"

Note: Use the locale property in the Handshake message instead.

Params

{
  "language": "String"
}

Returns

{
  "configurationError": "$ref:ConfigurationError"
}

See also: ConfigurationError

Configuration.SetMqttPolicy

Configure a MQTT broker policy. If the ID is an existing one, the existing policy will be modified, otherwise a new one will be added.

Params

{
  "policy": "$ref:MqttPolicy"
}

Returns

{
  "configurationError": "$ref:ConfigurationError"
}

See also: ConfigurationError, MqttPolicy

Configuration.SetMqttServerConfiguration

Configure a MQTT Server interface on the MQTT broker. If the ID is an existing one, the existing config will be modified, otherwise a new one will be added. Setting authenticationEnabled to true will require MQTT clients to use credentials set in the MQTT broker policies.

Params

{
  "configuration": "$ref:ServerConfiguration"
}

Returns

{
  "configurationError": "$ref:ConfigurationError"
}

See also: ConfigurationError, ServerConfiguration

Configuration.SetServerName

Set the name of the server. Default is nymea.

Params

{
  "serverName": "String"
}

Returns

{
  "configurationError": "$ref:ConfigurationError"
}

See also: ConfigurationError

Configuration.SetTcpServerConfiguration

Configure a TCP interface of the server. If the ID is an existing one, the existing config will be modified, otherwise a new one will be added. Note: if you are changing the configuration for the interface you are currently connected to, the connection will be dropped.

Params

{
  "configuration": "$ref:ServerConfiguration"
}

Returns

{
  "configurationError": "$ref:ConfigurationError"
}

See also: ConfigurationError, ServerConfiguration

Configuration.SetTimeZone

Set the time zone of the server. See also: "GetTimeZones"

Note: Use System.SetTimeZone instead.

Params

{
  "timeZone": "String"
}

Returns

{
  "configurationError": "$ref:ConfigurationError"
}

See also: ConfigurationError

Configuration.SetWebServerConfiguration

Configure a WebServer interface of the server. If the ID is an existing one, the existing config will be modified, otherwise a new one will be added.

Params

{
  "configuration": "$ref:WebServerConfiguration"
}

Returns

{
  "configurationError": "$ref:ConfigurationError"
}

See also: ConfigurationError, WebServerConfiguration

Configuration.SetWebSocketServerConfiguration

Configure a WebSocket Server interface of the server. If the ID is an existing one, the existing config will be modified, otherwise a new one will be added. Note: if you are changing the configuration for the interface you are currently connected to, the connection will be dropped.

Params

{
  "configuration": "$ref:ServerConfiguration"
}

Returns

{
  "configurationError": "$ref:ConfigurationError"
}

See also: ConfigurationError, ServerConfiguration

Devices.AddConfiguredDevice

Add a configured device with a setupMethod of SetupMethodJustAdd. For devices with a setupMethod different than SetupMethodJustAdd, use PairDevice. Devices with CreateMethodJustAdd require all parameters to be supplied here. Devices with CreateMethodDiscovery require the use of a deviceDescriptorId. For discovered devices params are not required and will be taken from the DeviceDescriptor, however, they may be overridden by supplying deviceParams.

Params

{
  "deviceClassId": "Uuid",
  "name": "String",
  "o:deviceDescriptorId": "Uuid",
  "o:deviceParams": "$ref:ParamList"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:deviceId": "Uuid",
  "o:displayMessage": "String"
}

See also: DeviceError, ParamList

Devices.BrowseDevice

Browse a device. If a DeviceClass indicates a device is browsable, this method will return the BrowserItems. If no parameter besides the deviceId is used, the root node of this device will be returned. Any returned item which is browsable can be passed as node. Results will be children of the given node.
In case of an error during browsing, the error will be indicated and the displayMessage may contain additional information for the user. The displayMessage will be translated. A client UI showing this message to the user should be prepared for empty, but also longer strings.

Params

{
  "deviceId": "Uuid",
  "o:itemId": "String"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "items": [
    "$ref:BrowserItem"
  ],
  "o:displayMessage": "String"
}

See also: BrowserItem, DeviceError

Devices.ConfirmPairing

Confirm an ongoing pairing. For SetupMethodUserAndPassword, provide the username in the "username" field and the password in the "secret" field. For SetupMethodEnterPin and provide the PIN in the "secret" field. In case of SetupMethodOAuth, the previously opened web view will eventually be redirected to http://128.0.0.1:8888 and the OAuth code as query parameters to this url. Provide the entire unmodified URL in the secret field.

Params

{
  "o:secret": "String",
  "o:username": "String",
  "pairingTransactionId": "Uuid"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:deviceId": "Uuid",
  "o:displayMessage": "String"
}

See also: DeviceError

Devices.EditDevice

Edit the name of a device. This method does not change the configuration of the device.

Params

{
  "deviceId": "Uuid",
  "name": "String"
}

Returns

{
  "deviceError": "$ref:DeviceError"
}

See also: DeviceError

Devices.ExecuteAction

Execute a single action.

Params

{
  "actionTypeId": "Uuid",
  "deviceId": "Uuid",
  "o:params": "$ref:ParamList"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:displayMessage": "String"
}

See also: DeviceError, ParamList

Devices.ExecuteBrowserItem

Execute the item identified by itemId on the given device.
In case of an error during execution, the error will be indicated and the displayMessage may contain additional information for the user. The displayMessage will be translated. A client UI showing this message to the user should be prepared for empty, but also longer strings.

Params

{
  "deviceId": "Uuid",
  "itemId": "String"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:displayMessage": "String"
}

See also: DeviceError

Devices.ExecuteBrowserItemAction

Execute the action for the browser item identified by actionTypeId and the itemId on the given device.
In case of an error during execution, the error will be indicated and the displayMessage may contain additional information for the user. The displayMessage will be translated. A client UI showing this message to the user should be prepared for empty, but also longer strings.

Params

{
  "actionTypeId": "Uuid",
  "deviceId": "Uuid",
  "itemId": "String",
  "o:params": "$ref:ParamList"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:displayMessage": "String"
}

See also: DeviceError, ParamList

Devices.GetActionTypes

Get action types for a specified deviceClassId.

Params

{
  "deviceClassId": "Uuid"
}

Returns

{
  "actionTypes": "$ref:ActionTypes"
}

See also: ActionTypes

Devices.GetBrowserItem

Get a single item from the browser. This won't give any more info on an item than a regular browseDevice call, but it allows to fetch details of an item if only the ID is known.
In case of an error during browsing, the error will be indicated and the displayMessage may contain additional information for the user. The displayMessage will be translated. A client UI showing this message to the user should be prepared for empty, but also longer strings.

Params

{
  "deviceId": "Uuid",
  "o:itemId": "String"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:displayMessage": "String",
  "o:item": "$ref:BrowserItem"
}

See also: BrowserItem, DeviceError

Devices.GetConfiguredDevices

Returns a list of configured devices, optionally filtered by deviceId.

Params

{
  "o:deviceId": "Uuid"
}

Returns

{
  "devices": "$ref:Devices"
}

See also: Devices

Devices.GetDiscoveredDevices

Performs a device discovery and returns the results. This function may take a while to return. Note that this method will include all the found devices, that is, including devices that already have been added. Those devices will have deviceId set to the device id of the already added device. Such results may be used to reconfigure existing devices and might be filtered in cases where only unknown devices are of interest.

Params

{
  "deviceClassId": "Uuid",
  "o:discoveryParams": "$ref:ParamList"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:deviceDescriptors": "$ref:DeviceDescriptors",
  "o:displayMessage": "String"
}

See also: DeviceDescriptors, DeviceError, ParamList

Devices.GetEventTypes

Get event types for a specified deviceClassId.

Params

{
  "deviceClassId": "Uuid"
}

Returns

{
  "eventTypes": "$ref:EventTypes"
}

See also: EventTypes

Devices.GetPluginConfiguration

Get a plugin's params.

Params

{
  "pluginId": "Uuid"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:configuration": "$ref:ParamList"
}

See also: DeviceError, ParamList

Devices.GetPlugins

Returns a list of loaded plugins.

Params

{}

Returns

{
  "plugins": "$ref:DevicePlugins"
}

See also: DevicePlugins

Devices.GetStateTypes

Get state types for a specified deviceClassId.

Params

{
  "deviceClassId": "Uuid"
}

Returns

{
  "stateTypes": "$ref:StateTypes"
}

See also: StateTypes

Devices.GetStateValue

Get the value of the given device and the given stateType

Params

{
  "deviceId": "Uuid",
  "stateTypeId": "Uuid"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:value": "Variant"
}

See also: DeviceError

Devices.GetStateValues

Get all the state values of the given device.

Params

{
  "deviceId": "Uuid"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:values": "$ref:States"
}

See also: DeviceError, States

Devices.GetSupportedDevices

Returns a list of supported Device classes, optionally filtered by vendorId.

Params

{
  "o:vendorId": "Uuid"
}

Returns

{
  "deviceClasses": "$ref:DeviceClasses"
}

See also: DeviceClasses

Devices.GetSupportedVendors

Returns a list of supported Vendors.

Params

{}

Returns

{
  "vendors": "$ref:Vendors"
}

See also: Vendors

Devices.PairDevice

Pair a device. Use this to set up or reconfigure devices for DeviceClasses with a setupMethod different than SetupMethodJustAdd. Depending on the CreateMethod and whether a new devices is set up or an existing one is reconfigured, different parameters are required:
CreateMethodJustAdd takes the deviceClassId and the parameters to be used with that device. If an existing device should be reconfigured, the deviceId of said device should be given additionally. CreateMethodDiscovery requires the use of a deviceDescriptorId, previously obtained with DiscoverDevices. Optionally, parameters can be overridden with the give deviceParams. DeviceDescriptors containing a deviceId will reconfigure that device, descriptors without deviceId will add a new one. If success is true, the return values will contain a pairingTransactionId, a displayMessage and the setupMethod. Depending on the setupMethod, the application should present the use an appropriate login mask, that is, For SetupMethodDisplayPin the user should enter a pin that is displayed on the device, for SetupMethodEnterPin the application should present the given PIN so the user can enter it on the device. For SetupMethodPushButton, the displayMessage shall be presented to the user as informational hints to press a button on the device. For SetupMethodUserAndPassword a login mask for a user and password login should be presented to the user. In case of SetupMethodOAuth, an OAuth URL will be returned which shall be opened in a web view to allow the user logging in. Once the login procedure has completed, the application shall proceed with ConfirmPairing, providing the results of the pairing procedure.

Params

{
  "o:deviceClassId": "Uuid",
  "o:deviceDescriptorId": "Uuid",
  "o:deviceId": "Uuid",
  "o:deviceParams": "$ref:ParamList",
  "o:name": "String"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:displayMessage": "String",
  "o:oAuthUrl": "String",
  "o:pairingTransactionId": "Uuid",
  "o:pin": "String",
  "o:setupMethod": "$ref:SetupMethod"
}

See also: DeviceError, ParamList, SetupMethod

Devices.ReconfigureDevice

Reconfigure a device. This comes down to removing and recreating a device with new parameters but keeping its device id the same (and with that keeping rules, tags etc). For devices with create method CreateMethodDiscovery, a discovery (GetDiscoveredDevices) shall be performed first and this method is to be called with a deviceDescriptorId of the re-discovered device instead of the deviceId directly. Device parameters will be taken from the discovery, but can be overridden individually here by providing them in the deviceParams parameter. Only writable parameters can be changed.

Params

{
  "o:deviceDescriptorId": "Uuid",
  "o:deviceId": "Uuid",
  "o:deviceParams": "$ref:ParamList"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:displayMessage": "String"
}

See also: DeviceError, ParamList

Devices.RemoveConfiguredDevice

Remove a device from the system.

Params

{
  "deviceId": "Uuid",
  "o:removePolicy": "$ref:RemovePolicy",
  "o:removePolicyList": [
    {
      "policy": "$ref:RemovePolicy",
      "ruleId": "Uuid"
    }
  ]
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:ruleIds": [
    "Uuid"
  ]
}

See also: DeviceError, RemovePolicy

Devices.SetDeviceSettings

Change the settings of a device.

Params

{
  "deviceId": "Uuid",
  "settings": "$ref:ParamList"
}

Returns

{
  "deviceError": "$ref:DeviceError"
}

See also: DeviceError, ParamList

Devices.SetPluginConfiguration

Set a plugin's params.

Params

{
  "configuration": "$ref:ParamList",
  "pluginId": "Uuid"
}

Returns

{
  "deviceError": "$ref:DeviceError"
}

See also: DeviceError, ParamList

Events.GetEventType

Get the EventType for the given eventTypeId.

Note: Please use the Devices namespace instead.

Params

{
  "eventTypeId": "Uuid"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:eventType": "$ref:EventType"
}

See also: DeviceError, EventType

Integrations.AddThing

Add a new thing to the system. Only things with a setupMethod of SetupMethodJustAdd can be added this way. For things with a setupMethod different than SetupMethodJustAdd, use PairThing. Things with CreateMethodJustAdd require all parameters to be supplied here. Things with CreateMethodDiscovery require the use of a thingDescriptorId. For discovered things, params are not required and will be taken from the ThingDescriptor, however, they may be overridden by supplying thingParams.

Params

{
  "name": "String",
  "o:thingDescriptorId": "Uuid",
  "o:thingParams": "$ref:ParamList",
  "thingClassId": "Uuid"
}

Returns

{
  "o:displayMessage": "String",
  "o:thingId": "Uuid",
  "thingError": "$ref:ThingError"
}

See also: ParamList, ThingError

Integrations.BrowseThing

Browse a thing. If a ThingClass indicates a thing is browsable, this method will return the BrowserItems. If no parameter besides the thingId is used, the root node of this thingwill be returned. Any returned item which is browsable can be passed as node. Results will be children of the given node.
In case of an error during browsing, the error will be indicated and the displayMessage may contain additional information for the user. The displayMessage will be translated. A client UI showing this message to the user should be prepared for empty, but also longer strings.

Params

{
  "o:itemId": "String",
  "thingId": "Uuid"
}

Returns

{
  "items": [
    "$ref:BrowserItem"
  ],
  "o:displayMessage": "String",
  "thingError": "$ref:ThingError"
}

See also: BrowserItem, ThingError

Integrations.ConfirmPairing

Confirm an ongoing pairing. For SetupMethodUserAndPassword, provide the username in the "username" field and the password in the "secret" field. For SetupMethodEnterPin and provide the PIN in the "secret" field. In case of SetupMethodOAuth, the previously opened web view will eventually be redirected to http://128.0.0.1:8888 and the OAuth code as query parameters to this url. Provide the entire unmodified URL in the secret field.

Params

{
  "o:secret": "String",
  "o:username": "String",
  "pairingTransactionId": "Uuid"
}

Returns

{
  "o:displayMessage": "String",
  "o:thingId": "Uuid",
  "thingError": "$ref:ThingError"
}

See also: ThingError

Integrations.ConnectIO

Connect two generic IO states. Input and output need to be compatible, that is, either a digital input and a digital output, or an analog input and an analog output. If successful, the connectionId will be returned.

Params

{
  "inputStateTypeId": "Uuid",
  "inputThingId": "Uuid",
  "o:inverted": "Bool",
  "outputStateTypeId": "Uuid",
  "outputThingId": "Uuid"
}

Returns

{
  "o:ioConnectionId": "Uuid",
  "thingError": "$ref:ThingError"
}

See also: ThingError

Integrations.DisconnectIO

Disconnect an existing IO connection.

Params

{
  "ioConnectionId": "Uuid"
}

Returns

{
  "thingError": "$ref:ThingError"
}

See also: ThingError

Integrations.DiscoverThings

Performs a thing discovery for things of the given thingClassId and returns the results. This function may take a while to return. Note that this method will include all the found things, that is, including things that may already have been added. Those things will have thingId set to the id of the already added thing. Such results may be used to reconfigure existing things and might be filtered in cases where only unknown things are of interest.

Params

{
  "o:discoveryParams": "$ref:ParamList",
  "thingClassId": "Uuid"
}

Returns

{
  "o:displayMessage": "String",
  "o:thingDescriptors": "$ref:ThingDescriptors",
  "thingError": "$ref:ThingError"
}

See also: ParamList, ThingDescriptors, ThingError

Integrations.EditThing

Edit the name of a thing.

Params

{
  "name": "String",
  "thingId": "Uuid"
}

Returns

{
  "thingError": "$ref:ThingError"
}

See also: ThingError

Integrations.ExecuteAction

Execute a single action.

Params

{
  "actionTypeId": "Uuid",
  "o:params": "$ref:ParamList",
  "thingId": "Uuid"
}

Returns

{
  "o:displayMessage": "String",
  "thingError": "$ref:ThingError"
}

See also: ParamList, ThingError

Integrations.ExecuteBrowserItem

Execute the item identified by itemId on the given thing.
In case of an error during execution, the error will be indicated and the displayMessage may contain additional information for the user. The displayMessage will be translated. A client UI showing this message to the user should be prepared for empty, but also longer strings.

Params

{
  "itemId": "String",
  "thingId": "Uuid"
}

Returns

{
  "o:displayMessage": "String",
  "thingError": "$ref:ThingError"
}

See also: ThingError

Integrations.ExecuteBrowserItemAction

Execute the action for the browser item identified by actionTypeId and the itemId on the given thing.
In case of an error during execution, the error will be indicated and the displayMessage may contain additional information for the user. The displayMessage will be translated. A client UI showing this message to the user should be prepared for empty, but also longer strings.

Params

{
  "actionTypeId": "Uuid",
  "itemId": "String",
  "o:params": "$ref:ParamList",
  "thingId": "Uuid"
}

Returns

{
  "o:displayMessage": "String",
  "thingError": "$ref:ThingError"
}

See also: ParamList, ThingError

Integrations.GetActionTypes

Get action types for a specified thingClassId.

Params

{
  "thingClassId": "Uuid"
}

Returns

{
  "actionTypes": "$ref:ActionTypes"
}

See also: ActionTypes

Integrations.GetBrowserItem

Get a single item from the browser. This won't give any more info on an item than a regular BrowseThing call, but it allows to fetch details of an item if only the ID is known.
In case of an error during browsing, the error will be indicated and the displayMessage may contain additional information for the user. The displayMessage will be translated. A client UI showing this message to the user should be prepared for empty, but also longer strings.

Params

{
  "o:itemId": "String",
  "thingId": "Uuid"
}

Returns

{
  "o:displayMessage": "String",
  "o:item": "$ref:BrowserItem",
  "thingError": "$ref:ThingError"
}

See also: BrowserItem, ThingError

Integrations.GetEventTypes

Get event types for a specified thingClassId.

Params

{
  "thingClassId": "Uuid"
}

Returns

{
  "eventTypes": "$ref:EventTypes"
}

See also: EventTypes

Integrations.GetIOConnections

Fetch IO connections. Optionally filtered by thingId and stateTypeId.

Params

{
  "o:thingId": "Uuid"
}

Returns

{
  "ioConnections": "$ref:IOConnections"
}

See also: IOConnections

Integrations.GetPluginConfiguration

Get a plugin's params.

Params

{
  "pluginId": "Uuid"
}

Returns

{
  "o:configuration": "$ref:ParamList",
  "thingError": "$ref:ThingError"
}

See also: ParamList, ThingError

Integrations.GetPlugins

Returns a list of loaded plugins.

Params

{}

Returns

{
  "plugins": "$ref:IntegrationPlugins"
}

See also: IntegrationPlugins

Integrations.GetStateTypes

Get state types for a specified thingClassId.

Params

{
  "thingClassId": "Uuid"
}

Returns

{
  "stateTypes": "$ref:StateTypes"
}

See also: StateTypes

Integrations.GetStateValue

Get the value of the given thing and the given stateType

Params

{
  "stateTypeId": "Uuid",
  "thingId": "Uuid"
}

Returns

{
  "o:value": "Variant",
  "thingError": "$ref:ThingError"
}

See also: ThingError

Integrations.GetStateValues

Get all the state values of the given thing.

Params

{
  "thingId": "Uuid"
}

Returns

{
  "o:values": "$ref:States",
  "thingError": "$ref:ThingError"
}

See also: States, ThingError

Integrations.GetThingClasses

Returns a list of supported thing classes, optionally filtered by vendorId.

Params

{
  "o:vendorId": "Uuid"
}

Returns

{
  "o:thingClasses": "$ref:ThingClasses",
  "thingError": "$ref:ThingError"
}

See also: ThingClasses, ThingError

Integrations.GetThings

Returns a list of configured things, optionally filtered by thingId.

Params

{
  "o:thingId": "Uuid"
}

Returns

{
  "o:things": "$ref:Things",
  "thingError": "$ref:ThingError"
}

See also: ThingError, Things

Integrations.GetVendors

Returns a list of supported Vendors.

Params

{}

Returns

{
  "vendors": "$ref:Vendors"
}

See also: Vendors

Integrations.PairThing

Pair a new thing. Use this to set up or reconfigure things for ThingClasses with a setupMethod different than SetupMethodJustAdd. Depending on the CreateMethod and whether a new thing is set up or an existing one is reconfigured, different parameters are required:
CreateMethodJustAdd takes the thingClassId and the parameters you want to have with that thing. If an existing thing should be reconfigured, the thingId of said thing should be given additionally. CreateMethodDiscovery requires the use of a thingDescriptorId, previously obtained with DiscoverThings. Optionally, parameters can be overridden with the give thingParams. ThingDescriptors containing a thingId will reconfigure an existing thing, descriptors without a thingId will add a new thing to the system. If success is true, the return values will contain a pairingTransactionId, a displayMessage and the setupMethod. Depending on the setupMethod, the application should present the use an appropriate login mask, that is, For SetupMethodDisplayPin the user should enter a pin that is displayed on the device or online service, for SetupMethodEnterPin the application should present the given PIN so the user can enter it on the device or online service. For SetupMethodPushButton, the displayMessage shall be presented to the user as informational hints to press a button on the device. For SetupMethodUserAndPassword a login mask for a user and password login should be presented to the user. In case of SetupMethodOAuth, an OAuth URL will be returned which shall be opened in a web view to allow the user logging in. Once the login procedure has completed, the application shall proceed with ConfirmPairing, providing the results of the pairing procedure.

Params

{
  "o:name": "String",
  "o:thingClassId": "Uuid",
  "o:thingDescriptorId": "Uuid",
  "o:thingId": "Uuid",
  "o:thingParams": "$ref:ParamList"
}

Returns

{
  "o:displayMessage": "String",
  "o:oAuthUrl": "String",
  "o:pairingTransactionId": "Uuid",
  "o:pin": "String",
  "o:setupMethod": "$ref:SetupMethod",
  "thingError": "$ref:ThingError"
}

See also: ParamList, SetupMethod, ThingError

Integrations.ReconfigureThing

Reconfigure a thing. This comes down to removing and recreating a thing with new parameters but keeping its thing id the same (and with that keeping rules, tags etc). For things with create method CreateMethodDiscovery, a discovery (DiscoverThings) shall be performed first and this method is to be called with a thingDescriptorId of the re-discovered thing instead of the thingId directly. Thing parameters will be taken from the discovery, but can be overridden individually here by providing them in the thingParams parameter. Only writable parameters can be changed.

Params

{
  "o:thingDescriptorId": "Uuid",
  "o:thingId": "Uuid",
  "o:thingParams": "$ref:ParamList"
}

Returns

{
  "o:displayMessage": "String",
  "thingError": "$ref:ThingError"
}

See also: ParamList, ThingError

Integrations.RemoveThing

Remove a thing from the system.

Params

{
  "o:removePolicy": "$ref:RemovePolicy",
  "o:removePolicyList": [
    {
      "policy": "$ref:RemovePolicy",
      "ruleId": "Uuid"
    }
  ],
  "thingId": "Uuid"
}

Returns

{
  "o:ruleIds": [
    "Uuid"
  ],
  "thingError": "$ref:ThingError"
}

See also: RemovePolicy, ThingError

Integrations.SetPluginConfiguration

Set a plugin's params.

Params

{
  "configuration": "$ref:ParamList",
  "pluginId": "Uuid"
}

Returns

{
  "thingError": "$ref:ThingError"
}

See also: ParamList, ThingError

Integrations.SetThingSettings

Change the settings of a thing.

Params

{
  "settings": "$ref:ParamList",
  "thingId": "Uuid"
}

Returns

{
  "thingError": "$ref:ThingError"
}

See also: ParamList, ThingError

JSONRPC.Authenticate

Authenticate a client to the api via user & password challenge. Provide a device name which allows the user to identify the client and revoke the token in case the device is lost or stolen. This will return a new token to be used to authorize a client at the API.

Note: Use Users.Authenticate instead.

Params

{
  "deviceName": "String",
  "password": "String",
  "username": "String"
}

Returns

{
  "o:token": "String",
  "success": "Bool"
}

JSONRPC.CreateUser

Create a new user in the API. Currently this is only allowed to be called once when a new nymea instance is set up. Call Authenticate after this to obtain a device token for this user.

Note: Use Users.CreateUser instead.

Params

{
  "password": "String",
  "username": "String"
}

Returns

{
  "error": "$ref:UserError"
}

See also: UserError

JSONRPC.Hello

Initiates a connection. Use this method to perform an initial handshake of the connection. Optionally, a parameter "locale" is can be passed to set up the used locale for this connection. Strings such as ThingClass displayNames etc will be localized to this locale. If this parameter is omitted, the default system locale (depending on the configuration) is used. The reply of this method contains information about this core instance such as version information, uuid and its name. The locale valueindicates the locale used for this connection. Note: This method can be called multiple times. The locale used in the last call for this connection will be used. Other values, like initialSetupRequired might change if the setup has been performed in the meantime.
The field cacheHashes may contain a map of methods and MD5 hashes. As long as the hash for a method does not change, a client may use a previously cached copy of the call instead of fetching the content again.

Params

{
  "o:locale": "String"
}

Returns

{
  "authenticationRequired": "Bool",
  "initialSetupRequired": "Bool",
  "language": "String",
  "locale": "String",
  "name": "String",
  "o:cacheHashes": [
    "$ref:CacheHash"
  ],
  "o:experiences": [
    "$ref:Experience"
  ],
  "protocol version": "String",
  "pushButtonAuthAvailable": "Bool",
  "server": "String",
  "uuid": "Uuid",
  "version": "String"
}

See also: CacheHash, Experience

JSONRPC.Introspect

Introspect this API.

Params

{}

Returns

{
  "methods": "Object",
  "notifications": "Object",
  "types": "Object"
}

JSONRPC.IsCloudConnected

Check whether the cloud is currently connected. "connected" will be true whenever connectionState equals CloudConnectionStateConnected and is deprecated. Please use the connectionState value instead.

Params

{}

Returns

{
  "connectionState": "$ref:CloudConnectionState",
  "d:connected": "Bool"
}

See also: CloudConnectionState

JSONRPC.KeepAlive

This is basically a Ping/Pong mechanism a client app may use to check server connectivity. Currently, the server does not actually do anything with this information and will return the call providing the given sessionId back to the caller. It is up to the client whether to use this or not and not required by the server to keep the connection alive.

Params

{
  "sessionId": "String"
}

Returns

{
  "sessionId": "String",
  "success": "Bool"
}

JSONRPC.RemoveToken

Revoke access for a given token.

Note: Use Users.RemoveToken instead.

Params

{
  "tokenId": "Uuid"
}

Returns

{
  "error": "$ref:UserError"
}

See also: UserError

JSONRPC.RequestPushButtonAuth

Authenticate a client to the api via Push Button method. Provide a device name which allows the user to identify the client and revoke the token in case the device is lost or stolen. If push button hardware is available, this will return with success and start listening for push button presses. When the push button is pressed, the PushButtonAuthFinished notification will be sent to the requesting client. The procedure will be cancelled when the connection is interrupted. If another client requests push button authentication while a procedure is still going on, the second call will take over and the first one will be notified by the PushButtonAuthFinished signal about the error. The application should make it clear to the user to not press the button when the procedure fails as this can happen for 2 reasons: a) a second user is trying to auth at the same time and only the currently active user should press the button or b) it might indicate an attacker trying to take over and snooping in for tokens.

Note: Use Users.RequestPushButtonAuth instead.

Params

{
  "deviceName": "String"
}

Returns

{
  "success": "Bool",
  "transactionId": "Int"
}

JSONRPC.SetNotificationStatus

Enable/Disable notifications for this connections. Either "enabled" or "namespaces" needs to be given but not both of them. The boolean based "enabled" parameter will enable/disable all notifications at once. If instead the list-based "namespaces" parameter is provided, all given namespaceswill be enabled, the others will be disabled. The return value of "success" will indicate success of the operation. The "enabled" property in the return value is deprecated and used for legacy compatibilty only. It will be set to true if at least one namespace has been enabled.

Params

{
  "d:o:enabled": "Bool",
  "o:namespaces": "StringList"
}

Returns

{
  "d:enabled": "Bool",
  "namespaces": "StringList"
}

JSONRPC.SetupCloudConnection

Sets up the cloud connection by deploying a certificate and its configuration.

Params

{
  "certificatePEM": "String",
  "endpoint": "String",
  "privateKey": "String",
  "publicKey": "String",
  "rootCA": "String"
}

Returns

{
  "success": "Bool"
}

JSONRPC.SetupRemoteAccess

Setup the remote connection by providing AWS token information. This requires the cloud to be connected.

Params

{
  "idToken": "String",
  "userId": "String"
}

Returns

{
  "message": "String",
  "status": "Int"
}

JSONRPC.Tokens

Return a list of TokenInfo objects of all the tokens for the current user.

Note: Use Users.GetTokens instead.

Params

{}

Returns

{
  "tokenInfoList": [
    "$ref:TokenInfo"
  ]
}

See also: TokenInfo

JSONRPC.Version

Version of this nymea/JSONRPC interface.

Params

{}

Returns

{
  "protocol version": "String",
  "qtBuildVersion": "String",
  "qtVersion": "String",
  "version": "String"
}

Logging.GetLogEntries

Get the LogEntries matching the given filter. The result set will contain entries matching all filter rules combined. If multiple options are given for a single filter type, the result set will contain entries matching any of those. The offset starts at the newest entry in the result set. By default all items are returned. Example: If the specified filter returns a total amount of 100 entries:
- a offset value of 10 would include the oldest 90 entries - a offset value of 0 would return all 100 entries The offset is particularly useful in combination with the maxCount property and can be used for pagination. E.g. A result set of 10000 entries can be fetched in batches of 1000 entries by fetching 1) offset 0, maxCount 1000: Entries 0 to 9999 2) offset 10000, maxCount 1000: Entries 10000 - 19999 3) offset 20000, maxCount 1000: Entries 20000 - 29999 ...

Params

{
  "d:o:deviceIds": [
    "Uuid"
  ],
  "o:eventTypes": [
    "$ref:LoggingEventType"
  ],
  "o:limit": "Int",
  "o:loggingLevels": [
    "$ref:LoggingLevel"
  ],
  "o:loggingSources": [
    "$ref:LoggingSource"
  ],
  "o:offset": "Int",
  "o:thingIds": [
    "Uuid"
  ],
  "o:timeFilters": [
    {
      "o:endDate": "Int",
      "o:startDate": "Int"
    }
  ],
  "o:typeIds": [
    "Uuid"
  ],
  "o:values": [
    "Variant"
  ]
}

Returns

{
  "count": "Int",
  "loggingError": "$ref:LoggingError",
  "o:logEntries": "$ref:LogEntries",
  "offset": "Int"
}

See also: LogEntries, LoggingError, LoggingEventType, LoggingLevel, LoggingSource

NetworkManager.ConnectWifiNetwork

Connect to the wifi network with the given ssid and password.

Params

{
  "interface": "String",
  "o:password": "String",
  "ssid": "String"
}

Returns

{
  "networkManagerError": "$ref:NetworkManagerError"
}

See also: NetworkManagerError

NetworkManager.DisconnectInterface

Disconnect the given network interface. The interface will remain disconnected until the user connect it again.

Params

{
  "interface": "String"
}

Returns

{
  "networkManagerError": "$ref:NetworkManagerError"
}

See also: NetworkManagerError

NetworkManager.EnableNetworking

Enable or disable networking in the NetworkManager.

Params

{
  "enable": "Bool"
}

Returns

{
  "networkManagerError": "$ref:NetworkManagerError"
}

See also: NetworkManagerError

NetworkManager.EnableWirelessNetworking

Enable or disable wireless networking in the NetworkManager.

Params

{
  "enable": "Bool"
}

Returns

{
  "networkManagerError": "$ref:NetworkManagerError"
}

See also: NetworkManagerError

NetworkManager.GetNetworkDevices

Get the list of current network devices.

Params

{}

Returns

{
  "networkManagerError": "$ref:NetworkManagerError",
  "o:wiredNetworkDevices": [
    "$ref:WiredNetworkDevice"
  ],
  "o:wirelessNetworkDevices": [
    "$ref:WirelessNetworkDevice"
  ]
}

See also: NetworkManagerError, WiredNetworkDevice, WirelessNetworkDevice

NetworkManager.GetNetworkStatus

Get the current network manager status.

Params

{}

Returns

{
  "networkManagerError": "$ref:NetworkManagerError",
  "o:status": {
    "networkingEnabled": "Bool",
    "state": "$ref:NetworkManagerState",
    "wirelessNetworkingEnabled": "Bool"
  }
}

See also: NetworkManagerError, NetworkManagerState

NetworkManager.GetWirelessAccessPoints

Get the current list of wireless network access points for the given interface. The interface has to be a WirelessNetworkDevice.

Params

{
  "interface": "String"
}

Returns

{
  "networkManagerError": "$ref:NetworkManagerError",
  "o:wirelessAccessPoints": [
    "$ref:WirelessAccessPoint"
  ]
}

See also: NetworkManagerError, WirelessAccessPoint

NetworkManager.ScanWifiNetworks

Start a wifi scan for searching new networks.

Params

{
  "interface": "String"
}

Returns

{
  "networkManagerError": "$ref:NetworkManagerError"
}

See also: NetworkManagerError

NetworkManager.StartAccessPoint

Start a WiFi Access point on the given interface with the given SSID and password. Use DisconnectInterface to stop it again.

Params

{
  "interface": "String",
  "password": "String",
  "ssid": "String"
}

Returns

{
  "networkManagerError": "$ref:NetworkManagerError"
}

See also: NetworkManagerError

Rules.AddRule

Add a rule. You can describe rules by one or many EventDesciptors and a StateEvaluator. Note that only one of either eventDescriptor or eventDescriptorList may be passed at a time. A rule can be created but left disabled, meaning it won't actually be executed until set to enabled. If not given, enabled defaults to true. A rule can have a list of actions and exitActions. It must have at least one Action. For state based rules, actions will be executed when the system enters a state matching the stateDescriptor. The exitActions will be executed when the system leaves the described state again. For event based rules, actions will be executed when a matching event happens and if the stateEvaluator matches the system's state. ExitActions for such rules will be executed when a matching event happens and the stateEvaluator is not matching the system's state. A rule marked as executable can be executed via the API using Rules.ExecuteRule, that means, its actions will be executed regardless of the eventDescriptor and stateEvaluators.

Params

{
  "actions": [
    "$ref:RuleAction"
  ],
  "name": "String",
  "o:enabled": "Bool",
  "o:eventDescriptors": [
    "$ref:EventDescriptor"
  ],
  "o:executable": "Bool",
  "o:exitActions": [
    "$ref:RuleAction"
  ],
  "o:stateEvaluator": "$ref:StateEvaluator",
  "o:timeDescriptor": "$ref:TimeDescriptor"
}

Returns

{
  "o:ruleId": "Uuid",
  "ruleError": "$ref:RuleError"
}

See also: EventDescriptor, RuleAction, RuleError, StateEvaluator, TimeDescriptor

Rules.DisableRule

Disable a rule. The rule won't be triggered by it's events or state changes while it is disabled. If successful, the notification "Rule.RuleConfigurationChanged" will be emitted.

Params

{
  "ruleId": "Uuid"
}

Returns

{
  "ruleError": "$ref:RuleError"
}

See also: RuleError

Rules.EditRule

Edit the parameters of a rule. The configuration of the rule with the given ruleId will be replaced with the new given configuration. In ordert to enable or disable a Rule, please use the methods "Rules.EnableRule" and "Rules.DisableRule". If successful, the notification "Rule.RuleConfigurationChanged" will be emitted.

Params

{
  "actions": [
    "$ref:RuleAction"
  ],
  "name": "String",
  "o:enabled": "Bool",
  "o:eventDescriptors": [
    "$ref:EventDescriptor"
  ],
  "o:executable": "Bool",
  "o:exitActions": [
    "$ref:RuleAction"
  ],
  "o:stateEvaluator": "$ref:StateEvaluator",
  "o:timeDescriptor": "$ref:TimeDescriptor",
  "ruleId": "Uuid"
}

Returns

{
  "o:rule": "$ref:Rule",
  "ruleError": "$ref:RuleError"
}

See also: EventDescriptor, Rule, RuleAction, RuleError, StateEvaluator, TimeDescriptor

Rules.EnableRule

Enabled a rule that has previously been disabled.If successful, the notification "Rule.RuleConfigurationChanged" will be emitted.

Params

{
  "ruleId": "Uuid"
}

Returns

{
  "ruleError": "$ref:RuleError"
}

See also: RuleError

Rules.ExecuteActions

Execute the action list of the rule with the given ruleId.

Params

{
  "ruleId": "Uuid"
}

Returns

{
  "ruleError": "$ref:RuleError"
}

See also: RuleError

Rules.ExecuteExitActions

Execute the exit action list of the rule with the given ruleId.

Params

{
  "ruleId": "Uuid"
}

Returns

{
  "ruleError": "$ref:RuleError"
}

See also: RuleError

Rules.FindRules

Find a list of rules containing any of the given parameters.

Params

{
  "d:o:deviceId": "Uuid",
  "o:thingId": "Uuid"
}

Returns

{
  "ruleIds": [
    "Uuid"
  ]
}

Rules.GetRuleDetails

Get details for the rule identified by ruleId

Params

{
  "ruleId": "Uuid"
}

Returns

{
  "o:rule": "$ref:Rule",
  "ruleError": "$ref:RuleError"
}

See also: Rule, RuleError

Rules.GetRules

Get the descriptions of all configured rules. If you need more information about a specific rule use the method Rules.GetRuleDetails.

Params

{}

Returns

{
  "ruleDescriptions": [
    "$ref:RuleDescription"
  ]
}

See also: RuleDescription

Rules.RemoveRule

Remove a rule

Params

{
  "ruleId": "Uuid"
}

Returns

{
  "ruleError": "$ref:RuleError"
}

See also: RuleError

Scripts.AddScript

Add a script

Params

{
  "content": "String",
  "name": "String"
}

Returns

{
  "o:errors": "StringList",
  "o:script": "$ref:Script",
  "scriptError": "$ref:ScriptError"
}

See also: Script, ScriptError

Scripts.EditScript

Edit a script

Params

{
  "id": "Uuid",
  "o:content": "String",
  "o:name": "String"
}

Returns

{
  "o:errors": "StringList",
  "scriptError": "$ref:ScriptError"
}

See also: ScriptError

Scripts.GetScriptContent

Get a scripts content.

Params

{
  "id": "Uuid"
}

Returns

{
  "o:content": "String",
  "scriptError": "$ref:ScriptError"
}

See also: ScriptError

Scripts.GetScripts

Get all script, that is, their names and properties, but no content.

Params

{}

Returns

{
  "scripts": "$ref:Scripts"
}

See also: Scripts

Scripts.RemoveScript

remove a script

Params

{
  "id": "Uuid"
}

Returns

{
  "scriptError": "$ref:ScriptError"
}

See also: ScriptError

States.GetStateType

Get the StateType for the given stateTypeId.

Note: Please use the Integrations namespace instead.

Params

{
  "stateTypeId": "Uuid"
}

Returns

{
  "deviceError": "$ref:DeviceError",
  "o:stateType": "$ref:StateType"
}

See also: DeviceError, StateType

System.CheckForUpdates

Instruct the system to poll the server for updates. Normally the system should automatically do this in regular intervals, however, if the client wants to allow the user to manually check for new updates now, this can be called. Returns true if the operation has been started successfully and the update manager will become busy. In order to know whether there are updates available, clients should walk through the list of packages retrieved from GetPackages and check whether there are packages with the updateAvailable flag set to true.

Params

{}

Returns

{
  "success": "Bool"
}

System.EnableRepository

Enable or disable a repository.

Params

{
  "enabled": "Bool",
  "repositoryId": "String"
}

Returns

{
  "success": "Bool"
}

System.GetCapabilities

Get the list of capabilites on this system. The property "powerManagement" indicates whether restarting nymea and rebooting or shutting down is supported on this system. The property "updateManagement indicates whether system update features are available in this system. The property "timeManagement" indicates whether the system time can be configured on this system. Note that GetTime will be available in any case.

Params

{}

Returns

{
  "powerManagement": "Bool",
  "timeManagement": "Bool",
  "updateManagement": "Bool"
}

System.GetPackages

Get the list of packages currently available to the system. This might include installed available but not installed packages. Installed packages will have the installedVersion set to a non-empty value.

Params

{}

Returns

{
  "packages": "$ref:Packages"
}

See also: Packages

System.GetRepositories

Get the list of repositories currently available to the system.

Params

{}

Returns

{
  "repositories": "$ref:Repositories"
}

See also: Repositories

System.GetTime

Get the system time and configuraton. The "time" and "timeZone" properties give the current server time and time zone. "automaticTimeAvailable" indicates whether this system supports automatically setting the clock (e.g. using NTP). "automaticTime" will be true if the system is configured to automatically update the clock.

Params

{}

Returns

{
  "automaticTime": "Bool",
  "automaticTimeAvailable": "Bool",
  "time": "Uint",
  "timeZone": "String"
}

System.GetTimeZones

Returns the list of IANA specified time zone IDs which can be used to select a time zone. It is not required to use this method if the client toolkit already provides means to obtain a list of IANA time zone ids.

Params

{}

Returns

{
  "timeZones": "StringList"
}

System.GetUpdateStatus

Get the current status of the update system. "busy" indicates that the system is current busy with an operation regarding updates. This does not necessarily mean an actual update is running. When this is true, update related functions on the client should be marked as busy and no interaction with update components shall be allowed. An example for such a state is when the system queries the server if there are updates available, typically after a call to CheckForUpdates. "updateRunning" on the other hand indicates an actual update process is ongoing. The user should be informed about it, the system also might restart at any point while an update is running.

Params

{}

Returns

{
  "busy": "Bool",
  "updateRunning": "Bool"
}

System.Reboot

Initiate a reboot of the system. The return value will indicate whether the procedure has been initiated successfully.

Params

{}

Returns

{
  "success": "Bool"
}

System.RemovePackages

Starts removing a package. Returns true if the removal has been started successfully. Before calling this method, clients should check whether the package can be removed (canRemove set to true).

Params

{
  "packageIds": [
    "String"
  ]
}

Returns

{
  "success": "Bool"
}

System.Restart

Initiate a restart of the nymea service. The return value will indicate whether the procedure has been initiated successfully.

Params

{}

Returns

{
  "success": "Bool"
}

System.RollbackPackages

Starts a rollback. Returns true if the rollback has been started successfully. Before calling this method, clients should check whether the package can be rolled back (canRollback set to true).

Params

{
  "packageIds": [
    "String"
  ]
}

Returns

{
  "success": "Bool"
}

System.SetTime

Set the system time configuraton. The system can be configured to update the time automatically by setting "automaticTime" to true. This will only work if the "timeManagement" capability is available on this system and "GetTime" indicates the availability of automatic time settings. If any of those requirements are not met, this method will return "false" in the "success" property. In order to manually configure the time, "automaticTime" should be set to false and "time" should be set. Note that if "automaticTime" is set to true and a manual "time" is still passed, the system will attempt to configure automatic time updates and only set the manual time if automatic mode fails. A time zone can always be passed optionally to change the system time zone and should be a IANA time zone id.

Params

{
  "o:automaticTime": "Bool",
  "o:time": "Uint",
  "o:timeZone": "String"
}

Returns

{
  "success": "Bool"
}

System.Shutdown

Initiate a shutdown of the system. The return value will indicate whether the procedure has been initiated successfully.

Params

{}

Returns

{
  "success": "Bool"
}

System.UpdatePackages

Starts updating/installing packages with the given ids. Returns true if the upgrade has been started successfully. Note that it might still fail later. Before calling this method, clients should check the packages whether they are in a state where they can either be installed (no installedVersion set) or upgraded (updateAvailable set to true).

Params

{
  "o:packageIds": [
    "String"
  ]
}

Returns

{
  "success": "Bool"
}

Tags.AddTag

Add a Tag. A Tag must have a thingId OR a ruleId (call this method twice if you want to attach the same tag to a thing and a rule), an appId (Use the appId of your app), a tagId (e.g. "favorites") and a value. Upon success, a TagAdded notification will be emitted. Calling this method twice for the same ids (thing/rule, appId and tagId) but with a different value will update the tag's value and the TagValueChanged notification will be emitted.

Params

{
  "tag": "$ref:Tag"
}

Returns

{
  "tagError": "$ref:TagError"
}

See also: Tag, TagError

Tags.GetTags

Get the Tags matching the given filter. Tags can be filtered by a thingID, a ruleId, an appId, a tagId or a combination of any (however, combining thingId and ruleId will return an empty result set).

Params

{
  "d:o:deviceId": "Uuid",
  "o:appId": "String",
  "o:ruleId": "Uuid",
  "o:tagId": "String",
  "o:thingId": "Uuid"
}

Returns

{
  "o:tags": "$ref:Tags",
  "tagError": "$ref:TagError"
}

See also: TagError, Tags

Tags.RemoveTag

Remove a Tag. Tag value is optional and will be disregarded. If the ids match, the tag will be deleted and a TagRemoved notification will be emitted.

Params

{
  "tag": "$ref:Tag"
}

Returns

{
  "tagError": "$ref:TagError"
}

See also: Tag, TagError

Users.Authenticate

Authenticate a client to the api via user & password challenge. Provide a device name which allows the user to identify the client and revoke the token in case the device is lost or stolen. This will return a new token to be used to authorize a client at the API.

Params

{
  "deviceName": "String",
  "password": "String",
  "username": "String"
}

Returns

{
  "o:token": "String",
  "success": "Bool"
}

Users.ChangePassword

Change the password for the currently logged in user.

Params

{
  "newPassword": "String"
}

Returns

{
  "error": "$ref:UserError"
}

See also: UserError

Users.CreateUser

Create a new user in the API. Currently this is only allowed to be called once when a new nymea instance is set up. Call Authenticate after this to obtain a device token for this user.

Params

{
  "password": "String",
  "username": "String"
}

Returns

{
  "error": "$ref:UserError"
}

See also: UserError

Users.GetTokens

Get all the tokens for the current user.

Params

{}

Returns

{
  "error": "$ref:UserError",
  "o:tokenInfoList": "$ref:TokenInfoList"
}

See also: TokenInfoList, UserError

Users.GetUserInfo

Get info about the current token (the currently logged in user).

Params

{}

Returns

{
  "error": "$ref:UserError",
  "o:userInfo": "$ref:UserInfo"
}

See also: UserError, UserInfo

Users.RemoveToken

Revoke access for a given token.

Params

{
  "tokenId": "Uuid"
}

Returns

{
  "error": "$ref:UserError"
}

See also: UserError

Users.RequestPushButtonAuth

Authenticate a client to the api via Push Button method. Provide a device name which allows the user to identify the client and revoke the token in case the device is lost or stolen. If push button hardware is available, this will return with success and start listening for push button presses. When the push button is pressed, the PushButtonAuthFinished notification will be sent to the requesting client. The procedure will be cancelled when the connection is interrupted. If another client requests push button authentication while a procedure is still going on, the second call will take over and the first one will be notified by the PushButtonAuthFinished signal about the error. The application should make it clear to the user to not press the button when the procedure fails as this can happen for 2 reasons: a) a second user is trying to auth at the same time and only the currently active user should press the button or b) it might indicate an attacker trying to take over and snooping in for tokens.

Params

{
  "deviceName": "String"
}

Returns

{
  "success": "Bool",
  "transactionId": "Int"
}

Notifications

Configuration.BasicConfigurationChanged

Emitted whenever the basic configuration of this server changes.

Params

{
  "basicConfiguration": {
    "d:language": "String",
    "d:serverTime": "Uint",
    "d:timeZone": "String",
    "debugServerEnabled": "Bool",
    "serverName": "String",
    "serverUuid": "Uuid"
  }
}

Configuration.CloudConfigurationChanged

Emitted whenever the cloud configuration is changed.

Params

{
  "cloudConfiguration": {
    "enabled": "Bool"
  }
}

Configuration.LanguageChanged

Emitted whenever the language of the server changed. The Plugins, Vendors and ThingClasses have to be reloaded to get the translated data.

Params

{
  "language": "String"
}

Configuration.MqttPolicyChanged

Emitted whenever a MQTT broker policy is changed.

Params

{
  "policy": "$ref:MqttPolicy"
}

See also: MqttPolicy

Configuration.MqttPolicyRemoved

Emitted whenever a MQTT broker policy is removed.

Params

{
  "clientId": "String"
}

Configuration.MqttServerConfigurationChanged

Emitted whenever the MQTT broker configuration is changed.

Params

{
  "mqttServerConfiguration": "$ref:ServerConfiguration"
}

See also: ServerConfiguration

Configuration.MqttServerConfigurationRemoved

Emitted whenever a MQTT server configuration is removed.

Params

{
  "id": "String"
}

Configuration.TcpServerConfigurationChanged

Emitted whenever the TCP server configuration changes.

Params

{
  "tcpServerConfiguration": "$ref:ServerConfiguration"
}

See also: ServerConfiguration

Configuration.TcpServerConfigurationRemoved

Emitted whenever a TCP server configuration is removed.

Params

{
  "id": "String"
}

Configuration.WebServerConfigurationChanged

Emitted whenever the web server configuration changes.

Params

{
  "webServerConfiguration": "$ref:WebServerConfiguration"
}

See also: WebServerConfiguration

Configuration.WebServerConfigurationRemoved

Emitted whenever a Web server configuration is removed.

Params

{
  "id": "String"
}

Configuration.WebSocketServerConfigurationChanged

Emitted whenever the web socket server configuration changes.

Params

{
  "webSocketServerConfiguration": "$ref:ServerConfiguration"
}

See also: ServerConfiguration

Configuration.WebSocketServerConfigurationRemoved

Emitted whenever a WebSocket server configuration is removed.

Params

{
  "id": "String"
}

Devices.DeviceAdded

Emitted whenever a Device was added.

Params

{
  "device": "$ref:Device"
}

See also: Device

Devices.DeviceChanged

Emitted whenever the params, name or setupStatus of a Device changes.

Params

{
  "device": "$ref:Device"
}

See also: Device

Devices.DeviceRemoved

Emitted whenever a Device was removed.

Params

{
  "deviceId": "Uuid"
}

Devices.DeviceSettingChanged

Emitted whenever the setting of a Device is changed.

Params

{
  "deviceId": "Uuid",
  "paramTypeId": "Uuid",
  "value": "Variant"
}

Devices.EventTriggered

Emitted whenever an Event is triggered.

Params

{
  "event": "$ref:Event"
}

See also: Event

Devices.PluginConfigurationChanged

Emitted whenever a plugin's configuration is changed.

Params

{
  "configuration": "$ref:ParamList",
  "pluginId": "Uuid"
}

See also: ParamList

Devices.StateChanged

Emitted whenever a State of a device changes.

Params

{
  "deviceId": "Uuid",
  "stateTypeId": "Uuid",
  "value": "Variant"
}

Events.EventTriggered

Emitted whenever an Event is triggered.

Note: Please use Devices.EventTriggered instead.

Params

{
  "event": "$ref:Event"
}

See also: Event

Integrations.EventTriggered

Emitted whenever an Event is triggered.

Params

{
  "event": "$ref:Event"
}

See also: Event

Integrations.IOConnectionAdded

Emitted whenever an IO connection has been added.

Params

{
  "ioConnection": "$ref:IOConnection"
}

See also: IOConnection

Integrations.IOConnectionRemoved

Emitted whenever an IO connection has been removed.

Params

{
  "ioConnectionId": "Uuid"
}

Integrations.PluginConfigurationChanged

Emitted whenever a plugin's configuration is changed.

Params

{
  "configuration": "$ref:ParamList",
  "pluginId": "Uuid"
}

See also: ParamList

Integrations.StateChanged

Emitted whenever a state of a thing changes.

Params

{
  "stateTypeId": "Uuid",
  "thingId": "Uuid",
  "value": "Variant"
}

Integrations.ThingAdded

Emitted whenever a thing was added.

Params

{
  "thing": "$ref:Thing"
}

See also: Thing

Integrations.ThingChanged

Emitted whenever the params or name of a thing are changed (by EditThing or ReconfigureThing).

Params

{
  "thing": "$ref:Thing"
}

See also: Thing

Integrations.ThingRemoved

Emitted whenever a thing was removed.

Params

{
  "thingId": "Uuid"
}

Integrations.ThingSettingChanged

Emitted whenever the setting of a thing is changed.

Params

{
  "paramTypeId": "Uuid",
  "thingId": "Uuid",
  "value": "Variant"
}

JSONRPC.CloudConnectedChanged

Emitted whenever the cloud connection status changes.

Params

{
  "connected": "Bool",
  "connectionState": "$ref:CloudConnectionState"
}

See also: CloudConnectionState

JSONRPC.PushButtonAuthFinished

Emitted when a push button authentication reaches final state. NOTE: This notification is special. It will only be emitted to connections that did actively request a push button authentication, but also it will be emitted regardless of the notification settings.

Note: Use Users.PushButtonAuthFinished instead.

Params

{
  "o:token": "String",
  "success": "Bool",
  "transactionId": "Int"
}

Logging.LogDatabaseUpdated

Emitted whenever the database was updated. The database will be updated when a log entry was deleted. A log entry will be deleted when the corresponding thing or a rule will be removed, or when the oldest entry of the database was deleted to keep to database in the size limits.

Params

{}

Logging.LogEntryAdded

Emitted whenever an entry is appended to the logging system.

Params

{
  "logEntry": "$ref:LogEntry"
}

See also: LogEntry

NetworkManager.NetworkStatusChanged

Emitted whenever a status of a NetworkManager changes.

Params

{
  "status": {
    "networkingEnabled": "Bool",
    "state": "$ref:NetworkManagerState",
    "wirelessNetworkingEnabled": "Bool"
  }
}

See also: NetworkManagerState

NetworkManager.WiredNetworkDeviceAdded

Emitted whenever a new WiredNetworkDevice was added.

Params

{
  "wiredNetworkDevice": "$ref:WiredNetworkDevice"
}

See also: WiredNetworkDevice

NetworkManager.WiredNetworkDeviceChanged

Emitted whenever the given WiredNetworkDevice has changed.

Params

{
  "wiredNetworkDevice": "$ref:WiredNetworkDevice"
}

See also: WiredNetworkDevice

NetworkManager.WiredNetworkDeviceRemoved

Emitted whenever a WiredNetworkDevice was removed.

Params

{
  "interface": "String"
}

NetworkManager.WirelessNetworkDeviceAdded

Emitted whenever a new WirelessNetworkDevice was added.

Params

{
  "wirelessNetworkDevice": "$ref:WirelessNetworkDevice"
}

See also: WirelessNetworkDevice

NetworkManager.WirelessNetworkDeviceChanged

Emitted whenever the given WirelessNetworkDevice has changed.

Params

{
  "wirelessNetworkDevice": "$ref:WirelessNetworkDevice"
}

See also: WirelessNetworkDevice

NetworkManager.WirelessNetworkDeviceRemoved

Emitted whenever a WirelessNetworkDevice was removed.

Params

{
  "interface": "String"
}

Rules.RuleActiveChanged

Emitted whenever the active state of a Rule changed.

Params

{
  "active": "Bool",
  "ruleId": "Uuid"
}

Rules.RuleAdded

Emitted whenever a Rule was added.

Params

{
  "rule": "$ref:Rule"
}

See also: Rule

Rules.RuleConfigurationChanged

Emitted whenever the configuration of a Rule changed.

Params

{
  "rule": "$ref:Rule"
}

See also: Rule

Rules.RuleRemoved

Emitted whenever a Rule was removed.

Params

{
  "ruleId": "Uuid"
}

Scripts.ScriptAdded

Emitted when a script has been added to the system.

Params

{
  "script": "$ref:Script"
}

See also: Script

Scripts.ScriptChanged

Emitted when a script has been changed in the system (e.g. renamed).

Params

{
  "name": "String",
  "scriptId": "Uuid"
}

Scripts.ScriptContentChanged

Emitted when a script's content has been changed in the system.

Params

{
  "scriptId": "Uuid"
}

Scripts.ScriptLogMessage

Emitted when a script produces a console message.

Params

{
  "message": "String",
  "scriptId": "Uuid",
  "type": "$ref:ScriptMessageType"
}

See also: ScriptMessageType

Scripts.ScriptRemoved

Emitted when a script has been removed from the system.

Params

{
  "id": "Uuid"
}

System.CapabilitiesChanged

Emitted whenever the system capabilities change.

Params

{
  "powerManagement": "Bool",
  "updateManagement": "Bool"
}

System.PackageAdded

Emitted whenever a package is added to the list of packages.

Params

{
  "package": "$ref:Package"
}

See also: Package

System.PackageChanged

Emitted whenever a package in the list of packages changes.

Params

{
  "package": "$ref:Package"
}

See also: Package

System.PackageRemoved

Emitted whenever a package is removed from the list of packages.

Params

{
  "packageId": "String"
}

System.RepositoryAdded

Emitted whenever a repository is added to the list of repositories.

Params

{
  "repository": "$ref:Repository"
}

See also: Repository

System.RepositoryChanged

Emitted whenever a repository in the list of repositories changes.

Params

{
  "repository": "$ref:Repository"
}

See also: Repository

System.RepositoryRemoved

Emitted whenever a repository is removed from the list of repositories.

Params

{
  "repositoryId": "String"
}

System.TimeConfigurationChanged

Emitted whenever the time configuration is changed

Params

{
  "automaticTime": "Bool",
  "automaticTimeAvailable": "Bool",
  "time": "Uint",
  "timeZone": "String"
}

System.UpdateStatusChanged

Emitted whenever the update status changes.

Params

{
  "busy": "Bool",
  "updateRunning": "Bool"
}

Tags.TagAdded

Emitted whenever a tag is added to the system.

Params

{
  "tag": "$ref:Tag"
}

See also: Tag

Tags.TagRemoved

Emitted whenever a tag is removed from the system.

Params

{
  "tag": "$ref:Tag"
}

See also: Tag

Tags.TagValueChanged

Emitted whenever a tag's value is changed in the system.

Params

{
  "tag": "$ref:Tag"
}

See also: Tag

Users.PushButtonAuthFinished

Emitted when a push button authentication reaches final state. NOTE: This notification is special. It will only be emitted to connections that did actively request a push button authentication, but also it will be emitted regardless of the notification settings.

Params

{
  "o:token": "String",
  "success": "Bool",
  "transactionId": "Int"
}

Types

Action

{
  "actionTypeId": "Uuid",
  "d:deviceId": "Uuid",
  "o:params": "$ref:ParamList",
  "thingId": "Uuid",
  "refs": [
    "ParamList"
  ],
  "deprecated": [
    "deviceId"
  ]
}

Warning: following values are deprecated and will be removed with the next major API version:
deviceId

See also: ParamList

ActionType

{
  "displayName": "String",
  "index": "Int",
  "name": "String",
  "paramTypes": "$ref:ParamTypes",
  "r:id": "Uuid",
  "refs": [
    "ParamTypes"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: ParamTypes

ActionTypes

[
  "$ref:ActionType"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: ActionType

BrowserItem

{
  "actionTypeIds": [
    "Uuid"
  ],
  "browsable": "Bool",
  "description": "String",
  "disabled": "Bool",
  "displayName": "String",
  "executable": "Bool",
  "icon": "$ref:BrowserIcon",
  "id": "String",
  "o:mediaIcon": "$ref:MediaBrowserIcon",
  "thumbnail": "String",
  "refs": [
    "BrowserIcon",
    "MediaBrowserIcon"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: BrowserIcon, MediaBrowserIcon

CacheHash

{
  "hash": "String",
  "method": "String",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

CalendarItem

{
  "duration": "Uint",
  "o:datetime": "Uint",
  "o:repeating": "$ref:RepeatingOption",
  "o:startTime": "Time",
  "refs": [
    "RepeatingOption"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: RepeatingOption

CalendarItems

[
  "$ref:CalendarItem"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: CalendarItem

Device

{
  "d:r:setupComplete": "Bool",
  "o:name": "String",
  "o:settings": "$ref:ParamList",
  "r:deviceClassId": "Uuid",
  "r:id": "Uuid",
  "r:o:parentId": "Uuid",
  "r:o:setupDisplayMessage": "String",
  "r:params": "$ref:ParamList",
  "r:setupError": "$ref:ThingError",
  "r:setupStatus": "$ref:ThingSetupStatus",
  "r:states": "$ref:States",
  "r:thingClassId": "Uuid",
  "refs": [
    "ParamList",
    "ThingError",
    "ThingSetupStatus",
    "States"
  ],
  "deprecated": [
    "r:setupComplete"
  ]
}

Warning: following values are deprecated and will be removed with the next major API version:
r:setupComplete

See also: ParamList, States, ThingError, ThingSetupStatus

DeviceClass

{
  "r:actionTypes": "$ref:ActionTypes",
  "r:browsable": "Bool",
  "r:browserItemActionTypes": "$ref:ActionTypes",
  "r:createMethods": "$ref:CreateMethods",
  "r:discoveryParamTypes": "$ref:ParamTypes",
  "r:displayName": "String",
  "r:eventTypes": "$ref:EventTypes",
  "r:id": "Uuid",
  "r:interfaces": "StringList",
  "r:name": "String",
  "r:paramTypes": "$ref:ParamTypes",
  "r:pluginId": "Uuid",
  "r:settingsTypes": "$ref:ParamTypes",
  "r:setupMethod": "$ref:SetupMethod",
  "r:stateTypes": "$ref:StateTypes",
  "r:vendorId": "Uuid",
  "refs": [
    "ActionTypes",
    "CreateMethods",
    "ParamTypes",
    "EventTypes",
    "SetupMethod",
    "StateTypes"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: ActionTypes, CreateMethods, EventTypes, ParamTypes, SetupMethod, StateTypes

DeviceClasses

[
  "$ref:DeviceClass"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: DeviceClass

DeviceDescriptor

{
  "r:description": "String",
  "r:deviceParams": "$ref:ParamList",
  "r:id": "Uuid",
  "r:o:deviceId": "Uuid",
  "r:o:thingId": "Uuid",
  "r:title": "String",
  "refs": [
    "ParamList"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: ParamList

DeviceDescriptors

[
  "$ref:DeviceDescriptor"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: DeviceDescriptor

DevicePlugin

{
  "r:displayName": "String",
  "r:id": "Uuid",
  "r:name": "String",
  "r:paramTypes": "$ref:ParamTypes",
  "refs": [
    "ParamTypes"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: ParamTypes

DevicePlugins

[
  "$ref:DevicePlugin"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: DevicePlugin

Devices

[
  "$ref:Device"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: Device

Event

{
  "d:r:deviceId": "Uuid",
  "r:eventTypeId": "Uuid",
  "r:params": "$ref:ParamList",
  "r:thingId": "Uuid",
  "refs": [
    "ParamList"
  ],
  "deprecated": [
    "r:deviceId"
  ]
}

Warning: following values are deprecated and will be removed with the next major API version:
r:deviceId

See also: ParamList

EventDescriptor

{
  "d:o:deviceId": "Uuid",
  "o:eventTypeId": "Uuid",
  "o:interface": "String",
  "o:interfaceEvent": "String",
  "o:paramDescriptors": "$ref:ParamDescriptors",
  "o:thingId": "Uuid",
  "refs": [
    "ParamDescriptors"
  ],
  "deprecated": [
    "o:deviceId"
  ]
}

Warning: following values are deprecated and will be removed with the next major API version:
o:deviceId

See also: ParamDescriptors

EventDescriptors

[
  "$ref:EventDescriptor"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: EventDescriptor

EventType

{
  "displayName": "String",
  "name": "String",
  "paramTypes": "$ref:ParamTypes",
  "r:id": "Uuid",
  "r:index": "Int",
  "refs": [
    "ParamTypes"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: ParamTypes

EventTypes

[
  "$ref:EventType"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: EventType

Experience

{
  "name": "String",
  "version": "String",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

IOConnection

{
  "r:id": "Uuid",
  "r:inputStateTypeId": "Uuid",
  "r:inputThingId": "Uuid",
  "r:inverted": "Bool",
  "r:outputStateTypeId": "Uuid",
  "r:outputThingId": "Uuid",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

IOConnections

[
  "$ref:IOConnection"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: IOConnection

IntegrationPlugin

{
  "r:displayName": "String",
  "r:id": "Uuid",
  "r:name": "String",
  "r:paramTypes": "$ref:ParamTypes",
  "refs": [
    "ParamTypes"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: ParamTypes

IntegrationPlugins

[
  "$ref:IntegrationPlugin"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: IntegrationPlugin

LogEntries

[
  "$ref:LogEntry"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: LogEntry

LogEntry

{
  "d:r:o:deviceId": "Uuid",
  "r:loggingLevel": "$ref:LoggingLevel",
  "r:o:active": "Bool",
  "r:o:errorCode": "String",
  "r:o:eventType": "$ref:LoggingEventType",
  "r:o:thingId": "Uuid",
  "r:o:typeId": "Uuid",
  "r:o:value": "Variant",
  "r:source": "$ref:LoggingSource",
  "r:timestamp": "Uint",
  "refs": [
    "LoggingLevel",
    "LoggingEventType",
    "LoggingSource"
  ],
  "deprecated": [
    "r:o:deviceId"
  ]
}

Warning: following values are deprecated and will be removed with the next major API version:
r:o:deviceId

See also: LoggingEventType, LoggingLevel, LoggingSource

MqttPolicy

{
  "allowedPublishTopicFilters": "StringList",
  "allowedSubscribeTopicFilters": "StringList",
  "clientId": "String",
  "password": "String",
  "username": "String",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

Package

{
  "r:canRemove": "Bool",
  "r:candidateVersion": "String",
  "r:changelog": "String",
  "r:displayName": "String",
  "r:id": "String",
  "r:installedVersion": "String",
  "r:rollbackAvailable": "Bool",
  "r:summary": "String",
  "r:updateAvailable": "Bool",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

Packages

[
  "$ref:Package"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: Package

Param

{
  "o:paramTypeId": "Uuid",
  "value": "Variant",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

ParamDescriptor

{
  "o:paramName": "String",
  "o:paramTypeId": "Uuid",
  "operator": "$ref:ValueOperator",
  "value": "Variant",
  "refs": [
    "ValueOperator"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: ValueOperator

ParamDescriptors

[
  "$ref:ParamDescriptor"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: ParamDescriptor

ParamList

[
  "$ref:Param"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: Param

ParamType

{
  "displayName": "String",
  "index": "Int",
  "name": "String",
  "o:allowedValues": [
    "Variant"
  ],
  "o:defaultValue": "Variant",
  "o:inputType": "$ref:InputType",
  "o:maxValue": "Variant",
  "o:minValue": "Variant",
  "o:readOnly": "Bool",
  "o:unit": "$ref:Unit",
  "r:id": "Uuid",
  "type": "$ref:BasicType",
  "refs": [
    "InputType",
    "Unit",
    "BasicType"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: BasicType, InputType, Unit

ParamTypes

[
  "$ref:ParamType"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: ParamType

RepeatingOption

{
  "mode": "$ref:RepeatingMode",
  "o:monthDays": [
    "Int"
  ],
  "o:weekDays": [
    "Int"
  ],
  "refs": [
    "RepeatingMode"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: RepeatingMode

Repositories

[
  "$ref:Repository"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: Repository

Repository

{
  "enabled": "Bool",
  "r:displayName": "String",
  "r:id": "String",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

Rule

{
  "actions": "$ref:RuleActions",
  "name": "String",
  "o:enabled": "Bool",
  "o:eventDescriptors": "$ref:EventDescriptors",
  "o:executable": "Bool",
  "o:exitActions": "$ref:RuleActions",
  "o:stateEvaluator": "$ref:StateEvaluator",
  "o:timeDescriptor": "$ref:TimeDescriptor",
  "r:active": "Bool",
  "r:id": "Uuid",
  "refs": [
    "RuleActions",
    "EventDescriptors",
    "StateEvaluator",
    "TimeDescriptor"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: EventDescriptors, RuleActions, StateEvaluator, TimeDescriptor

RuleAction

{
  "d:o:deviceId": "Uuid",
  "o:actionTypeId": "Uuid",
  "o:browserItemId": "String",
  "o:interface": "String",
  "o:interfaceAction": "String",
  "o:ruleActionParams": "$ref:RuleActionParams",
  "o:thingId": "Uuid",
  "refs": [
    "RuleActionParams"
  ],
  "deprecated": [
    "o:deviceId"
  ]
}

Warning: following values are deprecated and will be removed with the next major API version:
o:deviceId

See also: RuleActionParams

RuleActionParam

{
  "d:o:stateDeviceId": "Uuid",
  "o:eventParamTypeId": "Uuid",
  "o:eventTypeId": "Uuid",
  "o:paramName": "String",
  "o:paramTypeId": "Uuid",
  "o:stateThingId": "Uuid",
  "o:stateTypeId": "Uuid",
  "o:value": "Variant",
  "refs": [],
  "deprecated": [
    "o:stateDeviceId"
  ]
}

Warning: following values are deprecated and will be removed with the next major API version:
o:stateDeviceId

RuleActionParams

[
  "$ref:RuleActionParam"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: RuleActionParam

RuleActions

[
  "$ref:RuleAction"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: RuleAction

RuleDescription

{
  "active": "Bool",
  "enabled": "Bool",
  "executable": "Bool",
  "id": "Uuid",
  "name": "String",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

Rules

[
  "$ref:Rule"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: Rule

Script

{
  "name": "String",
  "r:id": "Uuid",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

Scripts

[
  "$ref:Script"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: Script

ServerConfiguration

{
  "address": "String",
  "authenticationEnabled": "Bool",
  "id": "String",
  "port": "Uint",
  "sslEnabled": "Bool",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

State

{
  "r:stateTypeId": "Uuid",
  "r:value": "Variant",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

StateDescriptor

{
  "d:o:deviceId": "Uuid",
  "o:interface": "String",
  "o:interfaceState": "String",
  "o:stateTypeId": "Uuid",
  "o:thingId": "Uuid",
  "operator": "$ref:ValueOperator",
  "value": "Variant",
  "refs": [
    "ValueOperator"
  ],
  "deprecated": [
    "o:deviceId"
  ]
}

Warning: following values are deprecated and will be removed with the next major API version:
o:deviceId

See also: ValueOperator

StateEvaluator

{
  "o:childEvaluators": "$ref:StateEvaluators",
  "o:operator": "$ref:StateOperator",
  "o:stateDescriptor": "$ref:StateDescriptor",
  "refs": [
    "StateEvaluators",
    "StateOperator",
    "StateDescriptor"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: StateDescriptor, StateEvaluators, StateOperator

StateEvaluators

[
  "$ref:StateEvaluator"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: StateEvaluator

StateType

{
  "defaultValue": "Variant",
  "displayName": "String",
  "index": "Int",
  "name": "String",
  "o:ioType": "$ref:IOType",
  "o:maxValue": "Variant",
  "o:minValue": "Variant",
  "o:possibleValues": [
    "Variant"
  ],
  "o:unit": "$ref:Unit",
  "r:id": "Uuid",
  "type": "$ref:BasicType",
  "refs": [
    "IOType",
    "Unit",
    "BasicType"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: BasicType, IOType, Unit

StateTypes

[
  "$ref:StateType"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: StateType

States

[
  "$ref:State"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: State

Tag

{
  "appId": "String",
  "d:o:deviceId": "Uuid",
  "o:ruleId": "Uuid",
  "o:thingId": "Uuid",
  "o:value": "String",
  "tagId": "String",
  "refs": [],
  "deprecated": [
    "o:deviceId"
  ]
}

Warning: following values are deprecated and will be removed with the next major API version:
o:deviceId

Tags

[
  "$ref:Tag"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: Tag

Thing

{
  "d:r:setupComplete": "Bool",
  "o:name": "String",
  "o:settings": "$ref:ParamList",
  "r:id": "Uuid",
  "r:o:parentId": "Uuid",
  "r:o:setupDisplayMessage": "String",
  "r:params": "$ref:ParamList",
  "r:setupError": "$ref:ThingError",
  "r:setupStatus": "$ref:ThingSetupStatus",
  "r:states": "$ref:States",
  "r:thingClassId": "Uuid",
  "refs": [
    "ParamList",
    "ThingError",
    "ThingSetupStatus",
    "States"
  ],
  "deprecated": [
    "r:setupComplete"
  ]
}

Warning: following values are deprecated and will be removed with the next major API version:
r:setupComplete

See also: ParamList, States, ThingError, ThingSetupStatus

ThingClass

{
  "r:actionTypes": "$ref:ActionTypes",
  "r:browsable": "Bool",
  "r:browserItemActionTypes": "$ref:ActionTypes",
  "r:createMethods": "$ref:CreateMethods",
  "r:discoveryParamTypes": "$ref:ParamTypes",
  "r:displayName": "String",
  "r:eventTypes": "$ref:EventTypes",
  "r:id": "Uuid",
  "r:interfaces": "StringList",
  "r:name": "String",
  "r:paramTypes": "$ref:ParamTypes",
  "r:pluginId": "Uuid",
  "r:settingsTypes": "$ref:ParamTypes",
  "r:setupMethod": "$ref:SetupMethod",
  "r:stateTypes": "$ref:StateTypes",
  "r:vendorId": "Uuid",
  "refs": [
    "ActionTypes",
    "CreateMethods",
    "ParamTypes",
    "EventTypes",
    "SetupMethod",
    "StateTypes"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: ActionTypes, CreateMethods, EventTypes, ParamTypes, SetupMethod, StateTypes

ThingClasses

[
  "$ref:ThingClass"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: ThingClass

ThingDescriptor

{
  "r:description": "String",
  "r:deviceParams": "$ref:ParamList",
  "r:id": "Uuid",
  "r:o:thingId": "Uuid",
  "r:title": "String",
  "refs": [
    "ParamList"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: ParamList

ThingDescriptors

[
  "$ref:ThingDescriptor"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: ThingDescriptor

Things

[
  "$ref:Thing"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: Thing

TimeDescriptor

{
  "o:calendarItems": "$ref:CalendarItems",
  "o:timeEventItems": "$ref:TimeEventItems",
  "refs": [
    "CalendarItems",
    "TimeEventItems"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: CalendarItems, TimeEventItems

TimeEventItem

{
  "o:datetime": "Uint",
  "o:repeating": "$ref:RepeatingOption",
  "o:time": "Time",
  "refs": [
    "RepeatingOption"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: RepeatingOption

TimeEventItems

[
  "$ref:TimeEventItem"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: TimeEventItem

TokenInfo

{
  "r:creationTime": "Uint",
  "r:deviceName": "String",
  "r:id": "Uuid",
  "r:username": "String",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

TokenInfoList

[
  "$ref:TokenInfo"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: TokenInfo

UserInfo

{
  "r:username": "String",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

Vendor

{
  "displayName": "String",
  "id": "Uuid",
  "name": "String",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

Vendors

[
  "$ref:Vendor"
]

Warning: following values are deprecated and will be removed with the next major API version:

See also: Vendor

WebServerConfiguration

{
  "address": "String",
  "authenticationEnabled": "Bool",
  "id": "String",
  "port": "Uint",
  "publicFolder": "String",
  "sslEnabled": "Bool",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

WiredNetworkDevice

{
  "r:bitRate": "String",
  "r:interface": "String",
  "r:ipv4Addresses": "StringList",
  "r:ipv6Addresses": "StringList",
  "r:macAddress": "String",
  "r:pluggedIn": "Bool",
  "r:state": "$ref:NetworkDeviceState",
  "refs": [
    "NetworkDeviceState"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: NetworkDeviceState

WirelessAccessPoint

{
  "r:frequency": "Double",
  "r:macAddress": "String",
  "r:protected": "Bool",
  "r:signalStrength": "Int",
  "r:ssid": "String",
  "refs": [],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

WirelessNetworkDevice

{
  "r:bitRate": "String",
  "r:interface": "String",
  "r:ipv4Addresses": "StringList",
  "r:ipv6Addresses": "StringList",
  "r:macAddress": "String",
  "r:mode": "$ref:WirelessMode",
  "r:o:currentAccessPoint": "$ref:WirelessAccessPoint",
  "r:state": "$ref:NetworkDeviceState",
  "refs": [
    "WirelessMode",
    "WirelessAccessPoint",
    "NetworkDeviceState"
  ],
  "deprecated": []
}

Warning: following values are deprecated and will be removed with the next major API version:

See also: NetworkDeviceState, WirelessAccessPoint, WirelessMode