Scene#

Methods#

POST#

Control a scene in the project.

Action will propagate to all controllers in a project.

POST /api/scene

Payload is a JSON object with the following attributes:

Attribute

Value Type

Description

Value Example

action

string

The action to perform on the scene(s): start, start_release_others, release, toggle

"start"

num

integer

The number of the scene to perform the action on. If not present, the action will be applied to all scenes in the project; omitting this attribute is valid for release.

1

fade

number

Optional. The fade time to apply to a release action, in seconds, or the scene release that results from a toggle action. If not provided, the default release fade time will be used.

2.0

group

string or integer

Optional. Scene group name or number. If name, prepend the name with ! to apply the action to all groups except the specified group. This attribute is valid for a release action without a specified num, meaning release all scenes.

"Group 1", "!Group 2" or 3

same_group

boolean

Optional flag to target the same group as the selected timeline. This flag has no effect when group is set.

true

For example, to start scene 2, the request payload is:

{
  "action": "start",
  "num": 2
}

To start scene 2 and release others in group B in 2 seconds, the request payload is:

{
  "action": "start_release_others",
  "num": 2,
  "group": "B",
  "fade": 2.0
}

To start scene 2 and release others in the same group, the request payload is:

{
  "action": "start_release_others",
  "num": 2,
  "same_group": true
}

To release scene 2 in 3.5 seconds, the request payload would be:

{
  "action": "release",
  "num": 2,
  "fade": 3.5
}

To toggle scene 2, and release it in 2 seconds if it’s already been started, the request payload would be:

{
  "action": "toggle",
  "num": 2,
  "fade": 2.0
}

To release all scenes in 2 seconds, the request payload would be:

{
  "action": "release",
  "fade": 2.0
}

To release all scenes except those in group B in 2 seconds, the request payload would be:

{
  "action": "release",
  "group": "!B",
  "fade": 2.0
}

GET#

Returns data about the scenes in the project and their state on the controller.

GET /api/scene[?num=sceneNumbers]

num can be used to filter which scenes are returned and is expected to be either a single number or a string expressing the required scenes, e.g. "1,2,5-9".

Returns a JSON object with a single scenes attribute, which has an array value. Each item in the array is a Scene object with the following attributes:

Attribute

Value Type

Description

Value Example

num

integer

Scene number

1

name

string

Scene name

"Scene 1"

state

string

none, started

"none"

onstage

boolean

Whether the scene is affecting output of any fixtures

true