Timeline#
Methods#
POST#
Control a timeline in the project. Action will propagate to all controllers in a project.
POST /api/timeline
Payload is a JSON object with the following attributes:
Attribute |
Value Type |
Description |
Value Example |
---|---|---|---|
|
string |
The action to perform on the timeline(s): |
|
|
integer |
The number of the timeline to perform the action on. If not present, the action will be applied to all timelines in the project; omitting this attribute is valid for |
|
|
number |
Optional. The fade time to apply to a |
|
|
string |
Optional. Timeline group name: |
|
|
string |
Required for a |
|
|
string |
Required for a |
|
For example, to start a timeline 2, the request payload is:
{
"action": "start",
"num": 2
}
To release timeline 2 in 3.5 seconds, the request payload would be:
{
"action": "release",
"num": 2,
"fade": 3.5
}
To toggle timeline 2, and release it in 2 seconds if it’s running, the request payload would be:
{
"action": "toggle",
"num": 2,
"fade": 2.0
}
To pause timeline 4, the request payload is:
{
"action": "pause",
"num": 4
}
To resume timeline 4, the request payload is:
{
"action": "resume",
"num": 4
}
To pause all timelines, the request payload is:
{
"action": "pause"
}
To resume all timelines, the request payload is:
{
"action": "resume"
}
To release all timelines in 2 seconds, the request payload would be:
{
"action": "release",
"fade": 2.0
}
To release all timelines except those in group B in 2 seconds, the request payload would be:
{
"action": "release",
"group": "!B",
"fade": 2.0
}
To set the rate of timeline 5 to half the default rage, the request payload would be:
{
"action": "set_rate",
"num": 5,
"rate": "0.5"
}
To set the position of timeline 1 to a third of the way through, the request payload would be:
{
"action": "set_rate",
"num": 1,
"position": "1:3"
}
GET#
Returns data about the timelines in the project and their state on the controller.
GET /api/timeline[?num=timelineNumbers]
num
can be used to filter which timelines are returned and is expected to be either a single number or a string expressing the required timelines, e.g. "1,2,5-9"
.
Returns a JSON object with a single timelines
attribute, which has an array value. Each item in the array is a Timeline object with the following attributes:
Attribute |
Value Type |
Description |
Value Example |
---|---|---|---|
|
integer |
Timeline number |
|
|
string |
Timeline name |
|
|
string |
Timeline group name ( |
|
|
integer |
Timeline length, in milliseconds |
|
|
string |
|
|
|
string |
Incoming timecode format on source bus |
|
|
integer |
0 is volume band |
|
|
string |
|
|
|
boolean |
The Peak setting of the timeline, if set to an audio time source |
|
|
integer |
1/1000 of a second |
|
|
string |
|
|
|
boolean |
Whether the timeline is affecting output of any fixtures |
|
|
integer |
1/1000 of a second |
|
|
string |
|
|
|
object |
Object properties and property values correspond to custom property names and values |
|