Skip to main content

Siren and light configuration

This API is based on the Device Configuration API framework. For guidance on how to use these APIs, see Device Configuration APIs.

The VAPIX® Siren and light configuration API allows you to manage signaling features on devices with sirens or lights, such as cameras or standalone IoT devices. These signals can be used for various purposes, such as notifications, alerts, and deterrence.

This API allows you to control individual device components, referred to as functions. A function is a controllable hardware element, like a speaker or light, that operates independently from other functions on the same device. For example, a device can include separate light functions like "AudioLED" or "SignalingLED", or speaker functions like "AudioSpeaker".

Each function supports a list of patterns, where a pattern defines how that function behaves. For a siren, a pattern can be a sound file, while a light describes behavior such as steady on, flashing, or alternating. Patterns are configured with additional settings like intensity (volume for sirens, brightness for lights), duration, speed, colors, and priority.

Priority determines which activity takes precedence when multiple tasks attempt to control the same function. All tasks created by activating a function have an associated priority. When a function is activated, a task is created that represents the ongoing activity. This task can later be stopped or queried. If multiple tasks are targeting the same function, only the one with the highest priority will be active at any given time. If that task ends, the next highest-priority task becomes active.

To simplify control, a pattern and its associated settings, including priority, can be saved as a named profile. Profiles allow users to activate functions using a predefined setup, reducing complexity and enabling more convenient operation. Profiles also have the ability to resume playing if the device is restarted.

Use cases

Start a light pattern

Use the start action to initiate a light pattern and set related parameters.

curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/functions/light/patterns/Blink/start \
--data '{
"data": {
"colors": [
"red"
],
"duration": {
"unit": "REPETITIONS",
"value": 10
},
"intensity": 5,
"priority": 3,
"speed": 1
}
}'
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": {
"taskId": "0"
}
}

Start a profile

Use the start action to start the "Fire_Alarm" profile if the fire alarm is triggered.

curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/profiles/Fire_Alarm/start \
--data '{
"data": {}
}'
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": {
"tasks": [
{
"function": "SignalingLED",
"taskId": "3"
},
{
"function": "AudioSpeaker",
"taskId": "4"
}
]
}
}

Start a profile with a delay

Use the start action with a timestamp scheduled to begin 0.5 seconds in the future. This allows multiple units to be synchronized to start simultaneously.

curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/profiles/Exit/start \
--data '{
"data": {
"startAt": "2008-07-05T13:14Z"
}
}'
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": {
"tasks": [
{
"function": "SignalingLED",
"taskId": "3"
}
]
}
}

Start a light pattern with a delay

Specify a 'startAt' timestamp about 0.5 seconds ahead to synchronize multiple devices or functions.

curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/functions/light/patterns/Alternate/start \
--data '{
"data": {
"colors": [
"red",
"green"
],
"duration": {
"unit": "REPETITIONS",
"value": 10
},
"intensity": 5,
"priority": 3,
"speed": 1,
"startAt": "2008-07-05T13:14Z"
}
}'
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": {
"taskId": "0"
}
}

Stop all tasks for a specific function

Use the stop action to stop the siren function when you want to stop playing a sound but you don't know taskId or which profile is playing.

curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/functions/siren/stop \
--data '{
"data": {}
}'
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": {}
}

Stop all tasks for all functions

Use the stop action to stop all active tasks without knowing what is playing.

curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/stop \
--data '{
"data": {}
}'
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": {}
}

Get device status

Get all tasks that are running for all functions.

curl --request GET \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/functions
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": [
{
"function": "siren",
"functionClass": "SIREN",
"powerMode": "FULL",
"scheduledStartSupported": false,
"scheduledStartToleranceMs_supported": false,
"calibrationStatus": null,
"patterns": [
{
"audioVisualizer": false,
"colors": null,
"defaultColors": null,
"defaultIntensity": 0,
"defaultIntensityLimited": null,
"defaultPriority": 3,
"defaultSpeed": null,
"intensity": [
0
],
"intensityLimited": null,
"maxNbrColors": null,
"minNbrColors": null,
"pattern": "Off",
"priority": [
1,
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"speed": null
},
{
"audioVisualizer": false,
"colors": null,
"defaultColors": null,
"defaultIntensity": 2,
"defaultIntensityLimited": null,
"defaultPriority": 3,
"defaultSpeed": null,
"intensity": [
1,
2,
3,
4,
5
],
"intensityLimited": null,
"maxNbrColors": null,
"minNbrColors": null,
"pattern": "Alarm: Alarm high pitch",
"priority": [
1,
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"speed": null
},
{
"audioVisualizer": false,
"colors": null,
"defaultColors": null,
"defaultIntensity": 2,
"defaultIntensityLimited": null,
"defaultPriority": 3,
"defaultSpeed": null,
"intensity": [
1,
2,
3,
4,
5
],
"intensityLimited": null,
"maxNbrColors": null,
"minNbrColors": null,
"pattern": "Alarm: Single beep",
"priority": [
1,
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"speed": null
}
],
"tasks": [
{
"intensity": 1,
"durationLeft": 12,
"pattern": "Alarm: Single beep",
"priority": 3,
"profile": "test",
"taskId": "2"
}
]
},
{
"function": "SignalingLED",
"functionClass": "LIGHT",
"powerMode": "FULL",
"calibrationStatus": "CALIBRATED",
"scheduledStartSupported": true,
"scheduledStartToleranceMs": 3000,
"scheduledStartToleranceMs_supported": true,
"patterns": [
{
"audioVisualizer": false,
"colors": null,
"defaultColors": null,
"defaultIntensity": 0,
"defaultIntensityLimited": 0,
"defaultPriority": 3,
"defaultSpeed": 1,
"intensity": [
0
],
"intensityLimited": [
0
],
"maxNbrColors": null,
"minNbrColors": null,
"pattern": "Off",
"priority": [
1,
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"speed": [
1
]
},
{
"colors": [
"red",
"green",
"blue",
"amber",
"white",
"yellow",
"pink",
"purple",
"turquoise"
],
"defaultColors": [
"red"
],
"defaultIntensity": 3,
"defaultIntensityLimited": 3,
"defaultPriority": 3,
"defaultSpeed": 1,
"intensity": [
1,
2,
3,
4,
5
],
"intensityLimited": [
1,
2,
3
],
"maxNbrColors": 1,
"minNbrColors": 1,
"pattern": "Steady",
"priority": [
1,
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"speed": [
1
]
},
{
"audioVisualizer": false,
"colors": [
"red",
"green",
"blue",
"amber",
"white",
"yellow",
"pink",
"purple",
"turquoise"
],
"defaultColors": [
"red",
"blue"
],
"defaultIntensity": 3,
"defaultIntensityLimited": 3,
"defaultPriority": 3,
"defaultSpeed": 3,
"intensity": [
1,
2,
3,
4,
5
],
"intensityLimited": [
1,
2,
3
],
"maxNbrColors": 9,
"minNbrColors": 2,
"pattern": "Alternate",
"priority": [
1,
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"speed": [
1,
2,
3,
4,
5
]
}
],
"tasks": [
{
"colors": [
"white"
],
"intensity": 3,
"pattern": "Rotate",
"priority": 3,
"profile": "Profile 1",
"speed": 3,
"taskId": "1"
}
]
}
]
}

Update intensity of a task

Updates the intensity for an active function.

curl --request PATCH \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/functions/SignalingLED/tasks/1/intensity \
--data '{
"data": 2
}'
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": {}
}

Get profiles

Get all available profiles.

curl --request GET \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/profiles
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": [
{
"description": "This is a description.",
"functions": [
{
"function": "siren",
"functionClass": "SIREN",
"intensity": 2,
"pattern": "Alarm: Soft triple beep",
"patternAvailable": true,
"priority": 3
},
{
"colors": [
"white"
],
"function": "SignalingLED",
"functionClass": "LIGHT",
"intensity": 3,
"pattern": "Random",
"priority": 3,
"speed": 3
}
],
"profile": "Profile 1",
"resumeOnStartup": true
},
{
"description": "Description for Profile 2",
"functions": [
{
"colors": [
"white"
],
"function": "SignalingLED",
"functionClass": "LIGHT",
"intensity": 3,
"pattern": "Rotate",
"patternAvailable": true,
"priority": 3,
"speed": 3
}
],
"profile": "Profile 2",
"resumeOnStartup": false
}
]
}

Add profile

Create a profile that will restart on reboot. It will fail if a profile with the same name already exists or if the maximum number of profiles (30) has been reached.

curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/profiles \
--data '{
"data": {
"profile": "Test",
"description": "Test profile",
"resumeOnStartup": true
}
}'
HTTP/1.1 201 Created
Content-Type: application/json

{
"status": "success",
"data": {}
}

Add a function to the profile. Each profile can only have one light function and one siren function.

curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/profiles/Test/functions \
--data '{
"data": {
"colors": [
"red"
],
"duration": {
"unit": "SECONDS",
"value": 10
},
"function": "SignalingLED",
"intensity": 5,
"pattern": "steady",
"priority": 13,
"speed": 5
}
}'
HTTP/1.1 201 Created
Content-Type: application/json

{
"status": "success",
"data": {}
}

Remove profile

Removes an existing siren and light pattern profile from the device. If the profile is currently active, it will be stopped as part of the removal process.

curl --request DELETE \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/profiles/Test
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": {}
}

Update intensity of a function in a profile

Updates the intensity for the function in a profile. If the profile is active, the intensity gets immediately updated. The new intensity is also stored in the profile.

curl --request PATCH \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/profiles/Test/functions/SignalingLED \
--data '{
"data": 1
}'
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": {}
}

Start maintenance mode

Maintenance mode mutes any siren-type functions while active. It can be set for a specific duration or run indefinitely until manually stopped.

  • If a time value is provided, it represents the duration in seconds that maintenance mode will stay active.
  • If no time value is given, the mode will remain active indefinitely until stopped. Note that not all devices support maintenance mode.

Check whether maintenance mode is supported on this device:

curl --request GET \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/maintenanceMode/supported
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": true
}

Start maintenance mode that stops after 10 seconds.

curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/maintenanceMode/start \
--data '{
"data": {
"time": 10
}
}'
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": {}
}

Start maintenance mode that runs indefinitely.

curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/maintenanceMode/start \
--data '{
"data": {}
}'
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": {}
}

Stop maintenance mode

Stop maintenance mode if it has been started without a timeout.

curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/maintenanceMode/stop \
--data '{
"data": {}
}'
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": {}
}

Check if maintenance mode is running

Check if the maintenance mode is currently running.

curl --request GET \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/maintenanceMode/running
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": false
}

Verify the operational condition with a health check

Some functions use health checks to verify if they are fully operational. They generally run a short test sequence and report back if a function is healthy or not. If a check fails, detailed information is available in the device’s system log.

Check if a function supports health check.

curl --request GET \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/functions/SignalingLED/healthCheckSupported
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": true
}

Run health check for the function.

curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/functions/SignalingLED/runHealthCheck \
--data '{
"data": {}
}'
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": {
"isHealthy": true
}
}

Set beam shape for function

Some functions support beam shapes. This is indicated by the property beamShape_supported. If supported, the default beam shape can be set from a collection of supported beam shapes. The default beam shape is what is used if not overridden by a profile or when starting a task.

If the default beam shape is updated and a profile that does not override the beam shape is running, the beam shape will be immediately updated for the running profile.

Check if beam shapes are supported.

curl --request GET \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/functions/IlluminatorLED/beamShape/beamShape_supported
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": true
}

Get supported beam shapes.

curl --request GET \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/functions/IlluminatorLED/beamShape/beamShapes
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": [
{
"beamShape": "Wide"
},
{
"beamShape": "Mid"
},
{
"beamShape": "Spot"
},
{
"beamShape": "Left"
},
{
"beamShape": "Right"
},
{
"beamShape": "Panoramic left"
},
{
"beamShape": "Panoramic right"
}
]
}

Set default beam shape.

curl --request PATCH \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/functions/IlluminatorLED/beamShape/default \
--data '{
"data": "Wide"
}'
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success"
}

Get the currently default beam shape.

curl --request GET \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/functions/IlluminatorLED/beamShape/default
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": "Wide"
}

Override beam shape

The beam shape can be overridden either when starting a task or using a profile with the beamShapeOverride property.

If neither a task nor a profile overrides the beam shape, the default beam shape is used.

The property beamShape_supported indicates whether the function supports beam shapes. If supported, the beamShape property returns the current beam shape (either the default or the overridden value).

It is not possible to determine if a task without a profile has started with an overridden beam shape. Additionally, its beam shape will not be updated if the function’s default beam shape changes.

The property beamShapeOverride_supported indicates whether the function supports beam shape overrides. If the profile overrides the default beam shape, the beamShapeOverride property indicates which beam shape is applied. If no override is set, the property value is null.

Start a task that overrides the functions beam shape.

curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/functions/light/patterns/Steady/start \
--data '{
"data": {
"beamShapeOverride": "Spot",
"colors": [
"white"
],
"duration": {
"unit": "SECONDS",
"value": 2
},
"intensity": 1,
"priority": 3,
"speed": 1
}
}'
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": {
"taskId": "0"
}
}

Add a profile function that overrides the functions beam shape.

curl --request POST \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/profiles/Test/functions \
--data '{
"data": {
"beamShapeOverride": "Mid",
"colors": [
"white"
],
"duration": {
"unit": "SECONDS",
"value": 10
},
"function": "IlluminatorLED",
"intensity": 5,
"pattern": "Steady",
"priority": 5,
"speed": 1
}
}'
HTTP/1.1 201 Created
Content-Type: application/json

{
"status": "success",
"data": {}
}

Set default beam shape for a profile function, do not override.

curl --request PATCH \
--anyauth \
--user "<username>:<password>" \
--http1.1 \
--header "Content-Type: application/json" \
http://my-device/config/rest/siren-and-light/v2/profiles/Test/functions/IlluminatorLED/beamShapeOverride \
--data '{
"data": null
}'
HTTP/1.1 200 OK
Content-Type: application/json

{
"status": "success",
"data": {}
}

Error codes

The following error codes can occur when using this API:

| Error code | Description | | 100 | The specified pattern is invalid or does not exist. | | 101 | The specified intensity is invalid, e.g. it may exceed the available power. | | 102 | The specified priority is not supported for the chosen function and pattern. | | 103 | The specified speed is is not supported for the chosen function and pattern. | | 104 | The specified function is invalid, e.g. it does not exist or the combination of function and pattern is invalid. | | 105 | The specified number of colors is invalid, the pattern does not support the number of colors. | | 106 | The specified color is invalid, e.g. the combination of function and pattern does not support this color. | | 107 | The specified duration unit is invalid, see the DurationUnit type for valid values. | | 108 | The specified duration value is invalid, e.g. the number of repetitions exceed the maximum value. | | 109 | The specified profile does not exist. | | 110 | The specified timestamp is invalid, it must be in ISO 8601 format and within the time diff tolerance for the function. | | 111 | The specified beam shape is is not supported for the chosen function. |

API definition

Structure

siren-and-light.v2 (Root Entity)
├── stop (Action)
├── functions (Entity Collection)
├── calibrationStatus (Property)
├── function (Property)
├── functionClass (Property)
├── healthCheckSupported (Property)
├── powerMode (Property)
├── scheduledStartSupported (Property)
├── scheduledStartToleranceMs (Property)
├── calibrationStatus_supported (Property)
├── scheduledStartToleranceMs_supported (Property)
├── beamShape_supported (Property)
├── runHealthCheck (Action)
├── stop (Action)
├── beamShape (Entity)
├── default (Property)
├── beamShapes (Entity Collection)
├── beamShape (Property)
├── patterns (Entity Collection)
├── audioVisualizer (Property)
├── colors (Property)
├── defaultColors (Property)
├── defaultIntensity (Property)
├── defaultIntensityLimited (Property)
├── defaultPriority (Property)
├── defaultSpeed (Property)
├── defaultThreshold (Property)
├── intensity (Property)
├── intensityLimited (Property)
├── maxNbrColors (Property)
├── minNbrColors (Property)
├── pattern (Property)
├── priority (Property)
├── speed (Property)
├── colors_supported (Property)
├── defaultColors_supported (Property)
├── defaultIntensityLimited_supported (Property)
├── defaultSpeed_supported (Property)
├── defaultThreshold_supported (Property)
├── intensityLimited_supported (Property)
├── maxNbrColors_supported (Property)
├── minNbrColors_supported (Property)
├── speed_supported (Property)
├── start (Action)
├── tasks (Entity Collection)
├── beamShape (Property)
├── colors (Property)
├── durationLeft (Property)
├── intensity (Property)
├── pattern (Property)
├── priority (Property)
├── profile (Property)
├── speed (Property)
├── taskId (Property)
├── threshold (Property)
├── beamShape_supported (Property)
├── colors_supported (Property)
├── durationLeft_supported (Property)
├── profile_supported (Property)
├── speed_supported (Property)
├── threshold_supported (Property)
├── stop (Action)
├── maintenanceMode (Entity)
├── running (Property)
├── supported (Property)
├── start (Action)
├── stop (Action)
├── profiles (Entity Collection)
├── description (Property)
├── profile (Property)
├── resumeOnStartup (Property)
├── description_supported (Property)
├── start (Action)
├── stop (Action)
├── functions (Entity Collection)
├── beamShapeOverride (Property)
├── colors (Property)
├── duration (Property)
├── function (Property)
├── functionClass (Property)
├── intensity (Property)
├── pattern (Property)
├── patternAvailable (Property)
├── priority (Property)
├── speed (Property)
├── threshold (Property)
├── beamShapeOverride_supported (Property)
├── colors_supported (Property)
├── duration_supported (Property)
├── speed_supported (Property)
├── threshold_supported (Property)

Entities

siren-and-light.v2

  • Description: Siren and Light Root Entity
  • Type: Singleton
  • Operations
    • Get
  • Attributes
    • Dynamic Support: No
Properties

This entity has no properties.

Actions
stop
  • Description: Send a request to stop all tasks for all functions
  • Request Datatype: EmptyJson
  • Response Datatype: EmptyJson
  • Trigger Permissions: admin, operator
  • Attributes
    • Dynamic Support: No

siren-and-light.v2.functions

  • Description: The collection of siren and light functions
  • Type: Collection (Key Property: function)
  • Operations
    • Get
  • Attributes
    • Dynamic Support: No
Properties
calibrationStatus
  • Description: Whether the function has been calibrated
  • Datatype: CalibrationStatusString
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
function
  • Description: The name of the function
  • Datatype: NameString
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
functionClass
  • Description: The class of the function
  • Datatype: FunctionClass
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
healthCheckSupported
  • Description: Whether the function supports health check
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
powerMode
  • Description: The power mode used by the function
  • Datatype: PowerModeString
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
scheduledStartSupported
  • Description: Whether the function supports scheduled start
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
scheduledStartToleranceMs
  • Description: The maximum allowed deviation for the scheduled start timestamp, in milliseconds
  • Datatype: IntegerMinimum1
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
calibrationStatus_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
scheduledStartToleranceMs_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
beamShape_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
Actions Properties
runHealthCheck
  • Description: Send a request to run health check
  • Request Datatype: EmptyJson
  • Response Datatype: RunHealthCheckResponse
  • Trigger Permissions: admin, operator
  • Attributes
    • Dynamic Support: No
stop
  • Description: Send a request to stop all running tasks on the function
  • Request Datatype: EmptyJson
  • Response Datatype: EmptyJson
  • Trigger Permissions: admin, operator
  • Attributes
    • Dynamic Support: No

siren-and-light.v2.functions.beamShape

  • Description: The default and supported beam shapes
  • Type: Singleton
  • Operations
    • Get
  • Attributes
    • Dynamic Support: Yes
Properties
default
  • Description: The default beam shape
  • Datatype: NameString
  • Operations
    • Get (Permissions: admin, operator)
    • Set (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
Actions

This entity has no actions.

siren-and-light.v2.functions.beamShape.beamShapes

  • Description: The supported beam shapes
  • Type: Collection (Key Property: beamShape)
  • Operations
    • Get
  • Attributes
    • Dynamic Support: No
Properties
beamShape
  • Description: The name of the beam shape
  • Datatype: NameString
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
Actions ##### Properties

This entity has no actions.

siren-and-light.v2.functions.patterns

  • Description: The supported patterns
  • Type: Collection (Key Property: pattern)
  • Operations
    • Get
  • Attributes
    • Dynamic Support: No
Properties
audioVisualizer
  • Description: Whether the pattern is synchronized with audio
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
colors
  • Description: The possible colors
  • Datatype: ColorsArray
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
defaultColors
  • Description: The default colors
  • Datatype: ColorsArray
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
defaultIntensity
  • Description: The default intensity on full power
  • Datatype: Integer0To5
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
defaultIntensityLimited
  • Description: The default intensity on limited power
  • Datatype: Integer0To5
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
defaultPriority
  • Description: The default priority
  • Datatype: Integer1To10
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
defaultSpeed
  • Description: The default speed
  • Datatype: Integer1To5
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
defaultThreshold
  • Description: The default threshold of audio visualizer
  • Datatype: Integer0To100
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
intensity
  • Description: The possible intensities on full power
  • Datatype: IntegerArray
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
intensityLimited
  • Description: The possible intensities on limited power
  • Datatype: IntegerArray
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
maxNbrColors
  • Description: The maximum number of colors allowed
  • Datatype: integer
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
minNbrColors
  • Description: The minimum number of colors required
  • Datatype: integer
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
pattern
  • Description: The name of the pattern
  • Datatype: NameString
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
priority
  • Description: The possible priorities
  • Datatype: IntegerArray
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
speed
  • Description: The possible speeds
  • Datatype: IntegerArray
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
colors_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
defaultColors_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
defaultIntensityLimited_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
defaultSpeed_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
defaultThreshold_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
intensityLimited_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
maxNbrColors_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
minNbrColors_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
speed_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
Actions
start

siren-and-light.v2.functions.tasks

  • Description: Active tasks
  • Type: Collection (Key Property: taskId)
  • Operations
    • Get
  • Attributes
    • Dynamic Support: No
Properties
beamShape
  • Description: The beam shape of the pattern
  • Datatype: NameString
  • Operations
    • Get (Permissions: admin, operator)
    • Set (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
colors
  • Description: A list of colors used in the pattern
  • Datatype: ColorsArray
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
durationLeft
  • Description: The number of seconds left
  • Datatype: IntegerMinimum0
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
intensity
  • Description: The intensity level
  • Datatype: Integer0To5
  • Operations
    • Get (Permissions: admin, operator)
    • Set (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
pattern
  • Description: The name of the pattern
  • Datatype: NameString
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
priority
  • Description: The priority level
  • Datatype: Integer1To13
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
profile
  • Description: The name of the profile
  • Datatype: NameString
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
speed
  • Description: The speed of the pattern
  • Datatype: Integer1To5
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
taskId
  • Description: The ID of the task
  • Datatype: TaskId
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
threshold
  • Description: The threshold value to trigger the audio visualizer
  • Datatype: Integer0To100
  • Operations
    • Get (Permissions: admin, operator)
    • Set (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
beamShape_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
colors_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
durationLeft_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
profile_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
speed_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
threshold_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
Actions
stop
  • Description: Send a request to stop the task
  • Request Datatype: EmptyJson
  • Response Datatype: EmptyJson
  • Trigger Permissions: admin, operator
  • Attributes
    • Dynamic Support: No

siren-and-light.v2.maintenanceMode

  • Description: Maintenance mode
  • Type: Singleton
  • Operations
    • Get
  • Attributes
    • Dynamic Support: No
Properties
running
  • Description: Whether maintenance mode is currently running
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
supported
  • Description: Whether maintenance mode is supported
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
Actions
start
  • Description: Start maintenance mode
  • Request Datatype: StartMaintenanceModeRequest
  • Response Datatype: EmptyJson
  • Trigger Permissions: admin, operator
  • Attributes
    • Dynamic Support: No
stop
  • Description: Stop maintenance mode
  • Request Datatype: EmptyJson
  • Response Datatype: EmptyJson
  • Trigger Permissions: admin, operator
  • Attributes
    • Dynamic Support: No

siren-and-light.v2.profiles

  • Description: The collection of siren and light profiles
  • Type: Collection (Key Property: profile)
  • Operations
    • Get
    • Add (Permissions: admin, operator)
      • Required properties: profile
      • Optional properties: description, resumeOnStartup
    • Remove (Permissions: admin, operator)
  • Attributes
    • Dynamic Support: No
Properties
description
  • Description: Description of the profile
  • Datatype: DescriptionString
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
profile
  • Description: The name of the profile
  • Datatype: NameString
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
resumeOnStartup
  • Description: Whether the profile should resume after restart
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
description_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
Actions
start
  • Description: Send a request to start a Siren and Light profile
  • Request Datatype: StartProfileRequest
  • Response Datatype: StartProfileResponse
  • Trigger Permissions: admin, operator
  • Attributes
    • Dynamic Support: No
stop
  • Description: Send a request to stop a Siren and Light profile
  • Request Datatype: EmptyJson
  • Response Datatype: EmptyJson
  • Trigger Permissions: admin, operator
  • Attributes
    • Dynamic Support: No

siren-and-light.v2.profiles.functions

  • Description: Functions in profile
  • Type: Collection (Key Property: function)
  • Operations
    • Get
    • Add (Permissions: admin, operator)
      • Required properties: function, pattern
      • Optional properties: intensity, speed, colors, duration, priority, threshold, beamShapeOverride
    • Remove (Permissions: admin, operator)
  • Attributes
    • Dynamic Support: No
Properties
beamShapeOverride
  • Description: Override beam shape for this function
  • Datatype: NameString
  • Operations
    • Get (Permissions: admin, operator)
    • Set (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
colors
  • Description: A list of colors used in the pattern
  • Datatype: ColorsArray
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
duration
  • Description: The duration the function stays active
  • Datatype: Duration
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
function
  • Description: The name of the function
  • Datatype: NameString
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
functionClass
  • Description: The class of function
  • Datatype: FunctionClass
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
intensity
  • Description: The intensity level
  • Datatype: Integer0To5
  • Operations
    • Get (Permissions: admin, operator)
    • Set (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
pattern
  • Description: The name of the pattern
  • Datatype: NameString
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
patternAvailable
  • Description: Whether the pattern is currently available
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
priority
  • Description: The priority level
  • Datatype: Integer1To13
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
speed
  • Description: The speed of the pattern
  • Datatype: Integer1To5
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
threshold
  • Description: The threshold value to trigger the audio visualizer
  • Datatype: Integer0To100
  • Operations
    • Get (Permissions: admin, operator)
    • Set (Permissions: admin, operator)
  • Attributes
    • Nullable: Yes
    • Dynamic Support: Yes / Dynamic Enum: No / Dynamic Range: No
beamShapeOverride_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
colors_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
duration_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
speed_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
threshold_supported
  • Description:
  • Datatype: boolean
  • Operations
    • Get (Permissions: admin, operator)
  • Attributes
    • Nullable: No
    • Dynamic Support: No / Dynamic Enum: No / Dynamic Range: No
Actions

This entity has no actions.

Data Types

CalibrationStatusString

  • Description: The calibration status
  • Type: string
  • Enum Values: "CALIBRATED", "UNCALIBRATED"

ColorsArray

  • Description: A list of colors used in the pattern
  • Type: array
  • Element type: string
  • Null Value: No

DescriptionString

  • Description: The description of a profile
  • Type: string
  • Minimum Length: 1
  • Maximum Length: 250
  • Pattern: ^(?! )[\p{L}\p{N} .:*,;/_\-+{}!#$%()='\x22?@\[\]^]+(?<! )$

Duration

  • Description: Duration input
  • Type: complex
  • Fields
    • unit
      • Description: The unit of duration that can be 'seconds', 'repetitions', and 'continuous
      • Type: DurationUnit
      • Nullable: No / Gettable: Yes
    • value
      • Description: Duration value in seconds or number of pattern repetitions
      • Type: integer
      • Nullable: No / Gettable: Yes

If a duration object is supplied, to e.g. siren-and-light.v2.functions/light/patterns/{name}/start, both unit and value must be set. If a duration object is not supplied, the duration is set to CONTINUOUS.

DurationUnit

  • Description: The unit of duration
  • Type: string
  • Enum Values: "SECONDS", "REPETITIONS", "CONTINUOUS"

EmptyJson

  • Description: Empty response object
  • Type: complex

FunctionClass

  • Description: The class of the function
  • Type: string
  • Enum Values: "SIREN", "LIGHT"

FunctionTaskIdMap

  • Description: Map of function and task ID
  • Type: complex
  • Fields
    • function
      • Description: The name of the function
      • Type: NameString
      • Nullable: No / Gettable: Yes
    • taskId
      • Description: The ID of the task
      • Type: TaskId
      • Nullable: No / Gettable: Yes

FunctionTaskList

  • Description: List of function and task ID maps
  • Type: array
  • Element type: FunctionTaskIdMap
  • Null Value: No

Integer0To100

  • Description: Limited integer
  • Type: integer
  • Minimum Value: 0
  • Maximum Value: 100

Integer0To5

  • Description: Limited integer
  • Type: integer
  • Minimum Value: 0
  • Maximum Value: 5

Integer1To10

  • Description: Limited integer
  • Type: integer
  • Minimum Value: 1
  • Maximum Value: 10

Integer1To13

  • Description: Limited integer
  • Type: integer
  • Minimum Value: 1
  • Maximum Value: 13

Integer1To5

  • Description: Limited integer
  • Type: integer
  • Minimum Value: 1
  • Maximum Value: 5

IntegerArray

  • Description: Integer values
  • Type: array
  • Element type: integer
  • Null Value: No

IntegerMinimum0

  • Description: Limited integer
  • Type: integer
  • Minimum Value: 0

IntegerMinimum1

  • Description: Limited integer
  • Type: integer
  • Minimum Value: 1

NameString

  • Description: The name of a profile, function, pattern or beam shape
  • Type: string
  • Minimum Length: 1
  • Maximum Length: 50
  • Pattern: ^(?! )[a-zA-Z0-9 .:*,;/_\-+{}!#$%()='\x22?@\[\]^]+(?<! )$

PowerModeString

  • Description: The power mode
  • Type: string
  • Enum Values: "FULL", "LIMITED", "LIMITED_LEVEL_2"

RunHealthCheckResponse

  • Description: The response from health check
  • Type: complex
  • Fields
    • isHealthy
      • Description: Health check result, passed or failed
      • Type: boolean
      • Nullable: No / Gettable: Yes

StartMaintenanceModeRequest

  • Description: The request to start maintenance mode
  • Type: complex
  • Fields
    • time
      • Description: The number of seconds that maintenance mode is active
      • Type: IntegerMinimum1
      • Nullable: Yes / Gettable: Yes

StartPatternRequest

  • Description: The request to start pattern
  • Type: complex
  • Fields
    • beamShapeOverride
      • Description: Override beam shape for the pattern
      • Type: NameString
      • Nullable: Yes / Gettable: Yes
    • colors
      • Description: A list of colors used in the pattern
      • Type: ColorsArray
      • Nullable: Yes / Gettable: Yes
    • duration
      • Description: The duration the function stays active
      • Type: Duration
      • Nullable: Yes / Gettable: Yes
    • intensity
      • Description: The intensity level
      • Type: Integer0To5
      • Nullable: Yes / Gettable: Yes
    • priority
      • Description: The priority level
      • Type: Integer1To10
      • Nullable: Yes / Gettable: Yes
    • speed
      • Description: The speed of the pattern
      • Type: Integer1To5
      • Nullable: Yes / Gettable: Yes
    • startAt
      • Description: Optional timestamp for scheduled start; only valid if the function supports scheduled start and must be within scheduledStartToleranceMs
      • Type: Timestamp
      • Nullable: Yes / Gettable: Yes
    • threshold
      • Description: The threshold value to trigger the audio visualizer
      • Type: Integer0To100
      • Nullable: Yes / Gettable: Yes

StartPatternResponse

  • Description: The response from start pattern
  • Type: complex
  • Fields
    • taskId
      • Description: Id of started task
      • Type: TaskId
      • Nullable: No / Gettable: Yes

StartProfileRequest

  • Description: Request structure for starting a Siren and Light profile
  • Type: complex
  • Fields
    • startAt
      • Description: Optional timestamp for scheduled start; only valid if the function supports scheduled start and must be within scheduledStartToleranceMs
      • Type: Timestamp
      • Nullable: Yes / Gettable: Yes

StartProfileResponse

  • Description: The response from start profile
  • Type: complex
  • Fields
    • tasks
      • Description: List of started tasks
      • Type: FunctionTaskList
      • Nullable: No / Gettable: Yes

TaskId

  • Description: The ID of the task
  • Type: string
  • Minimum Length: 1
  • Maximum Length: 10

Timestamp

  • Description: A timestamp in ISO 8601 format
  • Type: string
  • Format: date-time