Skip to main content

Data Types

Reference for the key data types used across the WebSocket API.

LocalizedText​

Text that supports multiple locales:

{
"raw": "Rainbow",
"byLocale": {
"zh-CN": "彩虹",
"en-US": "Rainbow"
}
}

The raw field is used as a fallback when no matching locale is found.


EffectParamInfo​

Describes a configurable parameter exposed by an effect. The type field determines the UI control. Parameters can also include an optional group field for UI grouping.

Slider​

{
"type": "slider",
"key": "speed",
"label": {"raw": "Speed", "byLocale": {"zh-CN": "速度"}},
"min": 0.0,
"max": 5.0,
"step": 0.1,
"default": 2.5,
"group": {"raw": "Animation", "byLocale": {"zh-CN": "动画"}},
"dependency": null
}

RangeSlider​

{
"type": "range_slider",
"key": "frequency_range",
"label": {"raw": "Frequency Range", "byLocale": {"zh-CN": "频率范围"}},
"min": 20.0,
"max": 20000.0,
"step": 1.0,
"default": [100.0, 8000.0]
}

Select​

{
"type": "select",
"key": "preset",
"label": {"raw": "Preset", "byLocale": {"zh-CN": "预设"}},
"default": 0,
"options": [
{"label": {"raw": "Custom", "byLocale": {"zh-CN": "自定义"}}, "value": 0},
{"label": {"raw": "Rainbow", "byLocale": {"zh-CN": "彩虹"}}, "value": 1},
{"label": {"raw": "Sunset", "byLocale": {"zh-CN": "日落"}}, "value": 2}
]
}

Toggle​

{
"type": "toggle",
"key": "reverse",
"label": {"raw": "Reverse Direction", "byLocale": {"zh-CN": "反向方向"}},
"default": false
}

Color​

{
"type": "color",
"key": "baseColor",
"label": {"raw": "Base Color", "byLocale": {"zh-CN": "基础颜色"}},
"default": "#FF0000"
}

MultiColor​

{
"type": "multi_color",
"key": "colors",
"label": {"raw": "Color Palette", "byLocale": {"zh-CN": "调色板"}},
"default": ["#FF0000", "#00FF00", "#0000FF"],
"fixedCount": null,
"minCount": 2,
"maxCount": 16
}

ParamDependency​

Controls parameter visibility or enabled state based on another parameter's value.

{
"key": "preset",
"equals": 0,
"behavior": "hide"
}
FieldTypeDescription
keystringKey of the parameter to depend on
equalsany?Show/enable only when the dependency equals this value
not_equalsany?Show/enable only when the dependency does NOT equal this value
behaviorstring"hide" (remove from UI) or "disable" (show but grayed out)

ScreenRegion​

Specifies the capture area for screen-based effects.

type ScreenRegion =
| "Full"
| "Top"
| "Bottom"
| "Left"
| "Right"
| { Custom: { x: number; y: number; width: number; height: number } };

EffectInfo​

Complete effect metadata returned by get_effects:

{
"id": "rainbow",
"name": {"raw": "Rainbow", "byLocale": {"zh-CN": "彩虹"}},
"description": {"raw": "Flowing rainbow animation"},
"icon": "Waves",
"group": {"raw": "Animation", "byLocale": {"zh-CN": "动画"}},
"permissions": ["log"],
"params": [ ... ]
}

PluginsResponse​

Returned by get_plugins:

{
"effects": [EffectPluginInfo, ...],
"controllers": [ControllerPluginInfo, ...],
"extensions": [ExtensionPluginInfo, ...]
}

Each plugin info contains:

{
"id": "plugin_id",
"name": {"raw": "Display Name"},
"enabled": true,
"version": "1.0.0",
"publisher": "Author",
"description": "Description",
"language": "native-c",
"abi": "skydimo-effect-c-v3",
"repository": "https://github.com/...",
"license": "MIT",
"pluginDir": "...",
"dataDir": "...",
"bundled": false,
"installSource": "import-dev",
"reimportsOnRefresh": false
}

language is the runtime language ("lua" or "native-c" for currently supported runtimes). abi is present for native-c plugins.


SystemInfo​

Version

The extended format below is available since 3.0.0-dev.2.

Returned by get_system_info. Contains complete hardware and OS details.

OsInfo​

FieldTypeDescription
platformstringOS name ("Windows", "macOS", "linux")
versionstringOS version or product name
buildstringOS build number
archstringCPU architecture ("x86_64", "aarch64", etc.)
hostnamestringMachine hostname

MotherboardInfo​

FieldTypeDescription
manufacturerstringBoard manufacturer
modelstringBoard model name
productstringBoard product name
serialNumberstringBoard serial number

BiosInfo​

FieldTypeDescription
vendorstringBIOS vendor
versionstringBIOS version
datestringBIOS release date

CpuInfo​

FieldTypeDescription
namestringProcessor model name
manufacturerstringCPU manufacturer
coresnumberPhysical core count
threadsnumberLogical thread count
baseClockMhznumberBase clock speed in MHz
architecturestringCPU architecture

GpuInfo​

gpu is an array of GPU objects.

FieldTypeDescription
namestringGPU model name
manufacturerstringGPU manufacturer
driverVersionstringDriver version string
vramMbnumberVideo RAM in MB

RamInfo​

FieldTypeDescription
totalMemoryMbnumberTotal physical memory in MB
modulesRamModuleInfo[]Per-DIMM module details

RamModuleInfo​

FieldTypeDescription
manufacturerstringModule manufacturer
partNumberstringModule part number
capacityMbnumberModule capacity in MB
speedMhznumberModule speed in MHz
formFactorstringForm factor ("DIMM", "SO-DIMM", etc.)

Full Example​

{
"os": {
"platform": "Windows",
"version": "Microsoft Windows 11 Pro",
"build": "22631",
"arch": "x86_64",
"hostname": "MY-PC"
},
"motherboard": {
"manufacturer": "ASUSTeK COMPUTER INC.",
"model": "ROG STRIX B550-F GAMING",
"product": "ROG STRIX B550-F GAMING",
"serialNumber": "ABC123456"
},
"bios": {
"vendor": "American Megatrends Inc.",
"version": "2803",
"date": "12/01/2023"
},
"cpu": {
"name": "AMD Ryzen 9 5900X 12-Core Processor",
"manufacturer": "AMD",
"cores": 12,
"threads": 24,
"baseClockMhz": 3700,
"architecture": "x64"
},
"gpu": [
{
"name": "NVIDIA GeForce RTX 3080",
"manufacturer": "NVIDIA",
"driverVersion": "537.58",
"vramMb": 10240
}
],
"ram": {
"totalMemoryMb": 32768,
"modules": [
{
"manufacturer": "G Skill Intl",
"partNumber": "F4-3600C16-16GVKC",
"capacityMb": 16384,
"speedMhz": 3600,
"formFactor": "DIMM"
}
]
}
}