HTTP API
You can control most of the playback functions of Ontime over HTTP protocol.
This could be handy for integration with third party software, including vMix.
State
The following endpoints allow querying Ontime for its current state
Get Ontime version
Request
Response
Get Ontime runtime state
Request
Response
The response of a poll request is a runtime data object
Data from Ontime
With the HTTP API, in addition to controlling the application, you can also retrieve its data.
There is no expected payload for these GET requests
Address | Description |
---|---|
/data/custom-fields | Get registered custom fields |
/data/db | Get currently loaded project file |
/data/http | Get HTTP integration settings |
/data/osc | Get OSC integration settings |
/data/project | Get current project data |
/data/rundown | Get current rundown |
/data/settings | Get current application settings |
/data/url-presets | Get currently defined URL Presets |
/data/view-settings | Get currently defined settings for views |
Change event
The change endpoint allows changing some of the properties of a given event (below).
The request should contain a patch of the event to be changed, along with the ID of the event to change.
You can change any field in an event using this endpoint. See below a description of expected values.
Property | Value type |
---|---|
title | string |
note | string |
cue | string (value should be kept under 8 characters) |
isPublic | boolean |
skip | boolean |
colour | string (# hex colour or named css colour) |
custom | target the specific custom field with custom:<fieldname> |
timeWarning | number (in seconds) |
timeDanger | number (in seconds) |
endAction | string (none / load-next / play-next / stop) |
timerType | string (count-down / count-up / time-to-end / clock / none) |
duration | number (in seconds) |
timeStart | number (in seconds) |
timeEnd | number (in seconds) |
Example: change title of event
Request
Response
Example: change a custom field
The custom field must exist in the project to be accepted by the API.
See more on custom fields
Request
Response
Example: change multiple fields
You can change multiple fields in a single request by using adding on more query parameters. \
Request
Response
Message
The following endpoints allow controlling the messages Ontime sends to the timer view.
The payload response is the current state of the message data.
Example: change the external message text
Request
Response
Example: secondary source in the timer view
Request
Request
Request
Response
Example: blackout timer screens
You can remotely blackout every screen that is in the timer view.
Request
Request
Response
Playback
The following endpoints allow controlling the Ontime’s playback.
The payload response is the current state of the message data
Start event
Start loaded event
Request
Response
Start event at index
Request
Response
Start event with ID
Request
Response
Start event with cue
Request
Response
Start next event
Request
Response
Start previous event
Request
Response
Pause running timer
Request
Response
Load event
Load event at index
Request
Response
Load event with ID
Request
Response
Load event with cue
Request
Response
Load next event
Request
Response
Load previous event
Request
Response
Reload current event
Request
Response
Stop playback
Request
Response
Activate Roll mode
Request
Response
User added time
Add time
Request
Response
Remove time
Request
Response
Auxiliary timer
Ontime provides an auxiliary timer which does not affect the current playback.
This can be controlled using the API as shown below
Set auxiliary timer duration
Request
Set auxiliary timer direction
Auxiliary timer can count up or count down.
Set auxiliary timer to count up
Request
Set auxiliary timer to count down
Request
Start auxiliary timer
Request
Pause auxiliary timer
Request
Stop auxiliary timer
Request
Add / remove time to auxiliary timer
Request