The Mosart Remote Control Service (RCS) provides a REST API for controlling Viz Mosart rundowns using REST.

Getting started

To begin using the Mosart REST API

  1. Copy RemoteDispatcherServiceConfig.xml inC:\Program Files (x86)\Mosart Medialab\Mosart Server\ConfigurationFiles
    to
    C:\ProgramData\Mosart Medialab\ConfigurationFiles.

  2. Open the copied file in a text editor.

    1. Locate the <item> element with name="RestApiKey"

    2. Set the value to an arbitrary, unique string that you choose.
      All API clients must include this key to authorize their requests.
      For example:

      <?xml version="1.0" encoding="UTF-8"?>
      <RemoteServiceConfig>
      <Properties>
      ...
      <item name="RestApiKey" value="test-api-key" />
    3. Save the file.

  3. From Windows Services, restart the Mosart Remote Control Service.

  4. Make an HTTP request to http://[machine-name]:55167.
    For example:

    curl -X GET "http://localhost:55167/api/v1/command/reload" -H "accept: */*" -H "X-API-Key: test-api-key"

HTTPS

If you want to enable accessing the API via HTTPS, you need to edit the RemoteDispatcherServiceConfig.xml changing the following items:

<?xml version="1.0" encoding="UTF-8"?>
<RemoteServiceConfig>
<Properties>
...
<item name="SignalRUseHttps" value="true" />
<item name="SignalRCertificatePath" value="C:\cert\server.cer" />
<item name="SignalRCertificateKeyPath" value="C:\cert\server.key" />
<item name="SignalRCertificatePassword" value="password" />

Main/backup setup

If you want your API calls to go to the currently active Mosart Server, you can route them through Mosart Web Applications.

Install it on a separate machine and configure it to connect to both main and backup. Then you can use the endpoint http://[web-apps-machine-name]:65152 and Web Apps will act as a proxy and redirect the call to the active server.

Swagger Documentation

Mosart Server ships with an interactive documentation page that will be available after enabling the Mosart REST API.

Explore interactively: Swagger UI (local instance).

Endpoints

Assets

List Graphics

GET /api/v1/assets/graphics (since v5.13.0)

Get a list of all the overlay graphics in the rundown.

Example of the response.

[
{
"id": "100_a1e1e678-4adc-420a-bdbb-8aaa76dc6cf0_ba6f770a-1962-47ec-bdbe-54b81b3c25a6_2",
"type": "100",
"variant": "TIMECODE-DSK",
"slug": "Mosart=L|-00:00|00:29",
"storyId": "ba6f770a-1962-47ec-bdbe-54b81b3c25a6",
"status": 0,
"graphicType": "",
"handlerName": "DSK",
"description": "(DSK) - Mosart=L|-00:00|00:29",
"hasContent": true,
"in": 0,
"duration": 29,
"plannedDuration": 29,
"actualDuration": 0,
"fields": [],
"hasTemplate": null,
"emptyTemplate": null,
"templatePlaceHolders": null
},
{
"id": "100_a1e1e678-4adc-420a-bdbb-8aaa76dc6cf0_ba6f770a-1962-47ec-bdbe-54b81b3c25a6_5",
"type": "100",
"variant": "MANUAL-DSK",
"slug": "Mosart=L|M|O",
"storyId": "ba6f770a-1962-47ec-bdbe-54b81b3c25a6",
"status": 1,
"graphicType": "MANUAL",
"handlerName": "DSK",
"description": "(DSK) - Mosart=L|M|O",
"hasContent": true,
"in": 0,
"duration": 5,
"plannedDuration": 5,
"actualDuration": 0,
"fields": [],
"hasTemplate": null,
"emptyTemplate": null,
"templatePlaceHolders": null
}
]

Take/Take out Graphics

POST /api/v1/assets/graphics/{mosartItemId}/take (since v5.13.0)
POST /api/v1/assets/graphics/{mosartItemId}/take-out (since v5.13.0)

Take or take out an overlay graphics by its Mosart id.

mosartItemId: The id of the overlay graphic you want to take out. id property from /graphics.

POST /api/v1/assets/graphics/take?name={name} (since v5.13.0)
POST /api/v1/assets/graphics/take-out?name={name} (since v5.13.0)

Take or take out an overlay graphics by its name.

name: The slug of the graphic. This is the name visible in the Viz Mosart GUI. slug property from /graphics.

If there are multiple graphics with the same name, only the first one in the rundown will be picked.

Devices

Standby Device

PATCH /api/v1/devices/{type} (since v5.13.0)

Sets the standby status of the specified device type.

type: audio, audio-player, fullscreen-graphics, generic-rest, gpi, graphics, lights, loudness, robotic-camera, router, subtitling, switcher, video, video-wall, virtual-set, weather.-graphics, generic-rest, graphics, robotic-camera

Example of the request body

{
"standby": true
}

PATCH /api/v1/devices/{type}/{id} (since v5.13.0)

Sets the standby state for a single device/controller identified by one ID.

type: fullscreen-graphics, generic-rest, graphics, robotic-camera

id: The device (or controller) ID. For graphics, this can be the engine ID or the destination.

Example of the request body

{
"standby": true
}

PATCH /api/v1/devices/{type}/{controllerId}/{deviceId} (since v5.13.0)

Sets standby for a device addressed by controller and device ids.

type: robotic-camera

controllerId: The controller ID.

deviceId: The device ID.

Example of the request body

{
"standby": true
}

Media

Search media

GET /api/v1/media/search?name={clip-name} (since v5.11.0)

Searches the video servers configured in Mosart and returns a list of clips.

clip-name: The word you want to search for.

Example of the response.

[
{
"name": "File name @100%[test]&copy.mxf",
"description": "File name @100%[test]&copy.mxf",
"previewPath": "http://vmp-superdemo:21099/serve/proxy/34c8bc7b-c5a2-4c0f-ad69-50452346cb10.mp4",
"thumbnailPath": "http://vmp-superdemo:21099/serve/thumb/34c8bc7b-c5a2-4c0f-ad69-50452346cb10.jpg"
}
]

Settings

Get NRCS settings

GET /api/v1/settings/nrcs (since v5.13.0)

Get the details of how Mosart is configured to connect to the NRCS.

Example of response.

{
"ncsType": "Mos",
"mosServer": "ws://mosserver/api/v1/showmaker/mos/mymossocketncs",
"mosServerBackup": "",
"ncsId": "SHOWMAKER.MOS",
"ncsIdBackup": "",
"mosId": "MOSART.MOS.SHOWMAKER",
"useBackServer": false,
"mosCommunicationMode": "WebSocket",
"forceMosProtocolVersion": "2.8.4",
"mosLowerPort": 10540,
"mosLowerPortTimeout": 0,
"mosUpperPortTimeout": 0,
"mosHighPortTimeout": 0,
"mosServerTimeout": 0,
"mosServerTimeZone": "",
"mosSchema": "http://www.mosartmedialab.no/schema/mositem.dtd",
"defaultReadyToAir": false,
"templatesToMosObject": [
"Enabled",
"SendAllSets"
],
"storyScope": "Single",
"mosReplyWithConnectionMosId": false,
"minTimeBetweenStoryUpdate": 1000,
"itemIdGenerator": "",
"ignoreInitialSynchronization": false,
"ignoreSendItemStatusFilter": "",
"newsRoomTagKeepKeywords": [],
"itemStatusUnavailableValues": [
"NOT READY",
" ERROR"
],
"videoServerGotoDelayOnRetake": 1500,
"ftpServerName": "inews-server",
"ftpServerUserName": "inews-user",
"ftpServerPassword": "inews-password",
"ftpPort": 21,
"ftpUseActiveMode": true,
"ftpActivePortRange": "",
"ftpPreferEncryption": true,
"inewsWorkingDirectory": "SHOW",
"inewsEncoding": "UTF8",
"inewsWebServiceConnectionString": "",
"inewsUseFullStoryLocator": false
}

Update NRCS settings

PATCH /api/v1/settings/nrcs (since v5.13.0)

Change the NRCS connection in Mosart. Can we used to switch between different NRCS systems. I.e. using Showmaker for certain shows.

If the name of the setting (the key) does not exist -> that setting will be skipped, while the rest will succeed.
If the value is of the wrong type -> 400 Bad Request.

Example of body.

{
"ncsType": "Mos",
"mosServer": "ws://mosserver/api/v1/showmaker/mos/mymossocketncs",
"ncsId": "SHOWMAKER.MOS",
"mosId": "MOSART.MOS.SHOWMAKER",
}

Status

Build

GET /build (since v5.1.0)
GET /api/v1/build (since v5.4.0)

Information about the version of the Mosart Server.

Example of response.

{
"version": "5.13.0.38555 Beta",
"timestamp": "2025-10-21T07:15:10Z",
"hubVersion": 1
}

Status

GET /status (since v5.4.0)
GET /api/v1/status (since v5.4.0)

Get the status of the Mosart server.

Example of returned status

{
"state": "Active",
"timeline": "Running",
"autoTake": false,
"rehearsalMode": false,
"crossoverClient": false,
"serverDescription": "MosartServer"
}

Timeline

Timeline Information

GET /api/v1/timeline (since v5.13.0)

Get timeline information including timeline status, current story, next story, current item and next item.

Example of response.

{
"status": "Stopped",
"currentStory": {
"id": "1F52BA57",
"slug": "S1"
},
"nextStory": {
"id": "1E52BA57",
"slug": "S3"
},
"currentItem": {
"id": "0_SHOW.TESTSHOW.T-1_1F52BA57_CAMERA20_6",
"slug": "CAMERA 20"
},
"nextItem": {
"id": "0_SHOW.TESTSHOW.T-1_1E52BA57_CAMERA2_16",
"slug": "CAMERA 2"
}
}

Rundown

GET /api/v1/rundown (since v5.13.0)

Get the rundown that is currently loaded.

Example of response.

{
"id": "a1e1e678-4adc-420a-bdbb-8aaa76dc6cf0",
"name": "graphics",
"stories": [
{
"id": "ba6f770a-1962-47ec-bdbe-54b81b3c25a6",
"insertId": "NSID-1",
"storyDuration": 10,
"storyPlannedDuration": 0,
"storyBackTime": -1,
"pageNumber": "",
"slug": "Untitled",
"accessories": [
{
"id": "100_a1e1e678-4adc-420a-bdbb-8aaa76dc6cf0_ba6f770a-1962-47ec-bdbe-54b81b3c25a6_5",
"type": "100",
"variant": "MANUAL-DSK",
"slug": "Mosart=L|M|O",
"storyId": "ba6f770a-1962-47ec-bdbe-54b81b3c25a6",
"status": 1,
"graphicType": "MANUAL",
"handlerName": "DSK",
"description": "(DSK) - Mosart=L|M|O",
"hasContent": true,
"in": 0,
"duration": 5,
"plannedDuration": 5,
"actualDuration": 0,
"fields": [
{
"name": "graphics_description",
"value": "Mosart=L|M|O",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "graphics_id",
"value": "13059",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "tc_dur",
"value": "00:05",
"default": "00:00",
"fieldType": "TIMECODE",
"keyList": null,
"inputMask": "mm:ss",
"servers": null
},
{
"name": "continuecount",
"value": "-2",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "payloaduri",
"value": "/dataelements/13059/payload",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "thumbnailuri",
"value": "/dataelements/13059/thumb",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "elementuri",
"value": "/dataelements/13059",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "editoruri",
"value": "/app/pilotedge/pilotedge.html?dataelement=13059&edit=",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
}
],
"hasTemplate": null,
"emptyTemplate": null,
"templatePlaceHolders": null
}
],
"items": [
{
"subItems": [
{
"id": "100_a1e1e678-4adc-420a-bdbb-8aaa76dc6cf0_ba6f770a-1962-47ec-bdbe-54b81b3c25a6_2",
"type": "100",
"variant": "TIMECODE-DSK",
"slug": "Mosart=L|-00:00|00:29",
"storyId": "ba6f770a-1962-47ec-bdbe-54b81b3c25a6",
"status": 0,
"graphicType": "",
"handlerName": "DSK",
"description": "(DSK) - Mosart=L|-00:00|00:29",
"hasContent": true,
"in": 0,
"duration": 29,
"plannedDuration": 29,
"actualDuration": 0,
"fields": [
{
"name": "graphics_description",
"value": "Mosart=L|-00:00|00:29",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "graphics_id",
"value": "23757",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "tc_dur",
"value": "00:29",
"default": "00:00",
"fieldType": "TIMECODE",
"keyList": null,
"inputMask": "mm:ss",
"servers": null
},
{
"name": "continuecount",
"value": "0",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "payloaduri",
"value": "/dataelements/23757/payload",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "thumbnailuri",
"value": "/dataelements/23757/thumb",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "elementuri",
"value": "/dataelements/23757",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "editoruri",
"value": "/app/pilotedge/pilotedge.html?dataelement=23757&edit=",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "tc_in",
"value": "00:00",
"default": "00:00",
"fieldType": "TIMECODE",
"keyList": null,
"inputMask": "mm:ss",
"servers": null
}
],
"hasTemplate": null,
"emptyTemplate": null,
"templatePlaceHolders": null
}
],
"transition": {
"type": "Mix",
"rateOrIndex": 0
},
"bodyText": "",
"id": "0_a1e1e678-4adc-420a-bdbb-8aaa76dc6cf0_ba6f770a-1962-47ec-bdbe-54b81b3c25a6_CAMERA1_1",
"type": "0",
"variant": "1",
"slug": "CAMERA 1",
"storyId": "ba6f770a-1962-47ec-bdbe-54b81b3c25a6",
"status": 0,
"graphicType": null,
"handlerName": null,
"description": null,
"hasContent": true,
"in": 0,
"duration": 5,
"plannedDuration": 5,
"actualDuration": 0,
"fields": [
{
"name": "xpoint",
"value": "CAM1",
"default": "CAM1",
"fieldType": "LIST",
"keyList": "mixerinputs",
"inputMask": null,
"servers": null
},
{
"name": "sr_create_story_clip",
"value": "False",
"default": null,
"fieldType": null,
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "sr_publish_story_clip",
"value": "False",
"default": null,
"fieldType": null,
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "sr_story_clip_id",
"value": "",
"default": null,
"fieldType": null,
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "sr_story_clip_slug",
"value": "",
"default": null,
"fieldType": null,
"keyList": null,
"inputMask": null,
"servers": null
}
],
"hasTemplate": true,
"emptyTemplate": false,
"templatePlaceHolders": null
},
{
"subItems": [],
"transition": {
"type": "Mix",
"rateOrIndex": 0
},
"bodyText": "",
"id": "4_a1e1e678-4adc-420a-bdbb-8aaa76dc6cf0_ba6f770a-1962-47ec-bdbe-54b81b3c25a6_Mosart=F_4",
"type": "4",
"variant": "FULL",
"slug": "Mosart=F",
"storyId": "ba6f770a-1962-47ec-bdbe-54b81b3c25a6",
"status": 0,
"graphicType": null,
"handlerName": "FULL",
"description": null,
"hasContent": true,
"in": 5,
"duration": 5,
"plannedDuration": 5,
"actualDuration": 0,
"fields": [
{
"name": "scenename",
"value": null,
"default": "",
"fieldType": "TEXT",
"keyList": "",
"inputMask": null,
"servers": null
},
{
"name": "text",
"value": null,
"default": "",
"fieldType": "TEXT",
"keyList": "",
"inputMask": null,
"servers": null
},
{
"name": "graphics_description",
"value": "Mosart=F",
"default": "",
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "graphics_id",
"value": "23661",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "tc_dur",
"value": "00:05",
"default": "00:00",
"fieldType": "TIMECODE",
"keyList": null,
"inputMask": "mm:ss",
"servers": null
},
{
"name": "continuecount",
"value": "1",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "payloaduri",
"value": "/dataelements/23661/payload",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "thumbnailuri",
"value": "/dataelements/23661/thumb",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "elementuri",
"value": "/dataelements/23661",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "editoruri",
"value": "/app/pilotedge/pilotedge.html?dataelement=23661&edit=",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
}
],
"hasTemplate": true,
"emptyTemplate": false,
"templatePlaceHolders": null
}
]
},
{
"id": "ca6a3127-48a6-42e9-814b-a79ccafa8a12",
"insertId": "ba6f770a-1962-47ec-bdbe-54b81b3c25a6",
"storyDuration": 5,
"storyPlannedDuration": 0,
"storyBackTime": -1,
"pageNumber": "",
"slug": "Untitled",
"accessories": [],
"items": [
{
"subItems": [
{
"id": "100_a1e1e678-4adc-420a-bdbb-8aaa76dc6cf0_ca6a3127-48a6-42e9-814b-a79ccafa8a12_2",
"type": "100",
"variant": "DSK",
"slug": "A test/Mosart=L",
"storyId": "ca6a3127-48a6-42e9-814b-a79ccafa8a12",
"status": 0,
"graphicType": "",
"handlerName": "DSK",
"description": "(DSK) - A test/Mosart=L",
"hasContent": true,
"in": 0,
"duration": 5,
"plannedDuration": 5,
"actualDuration": 0,
"fields": [
{
"name": "graphics_description",
"value": "A test/Mosart=L",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "graphics_id",
"value": "14617",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "tc_dur",
"value": "00:05",
"default": "00:00",
"fieldType": "TIMECODE",
"keyList": null,
"inputMask": "mm:ss",
"servers": null
},
{
"name": "continuecount",
"value": "-2",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "payloaduri",
"value": "/dataelements/14617/payload",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "thumbnailuri",
"value": "/dataelements/14617/thumb",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "elementuri",
"value": "/dataelements/14617",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "editoruri",
"value": "/app/pilotedge/pilotedge.html?dataelement=14617&edit=",
"default": null,
"fieldType": "TEXT",
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "tc_in",
"value": "00:00",
"default": "00:00",
"fieldType": "TIMECODE",
"keyList": null,
"inputMask": "mm:ss",
"servers": null
}
],
"hasTemplate": null,
"emptyTemplate": null,
"templatePlaceHolders": null
}
],
"transition": {
"type": "Mix",
"rateOrIndex": 0
},
"bodyText": "",
"id": "0_a1e1e678-4adc-420a-bdbb-8aaa76dc6cf0_ca6a3127-48a6-42e9-814b-a79ccafa8a12_CAMERA1_1",
"type": "0",
"variant": "1",
"slug": "CAMERA 1",
"storyId": "ca6a3127-48a6-42e9-814b-a79ccafa8a12",
"status": 0,
"graphicType": null,
"handlerName": null,
"description": null,
"hasContent": true,
"in": 0,
"duration": 5,
"plannedDuration": 5,
"actualDuration": 0,
"fields": [
{
"name": "xpoint",
"value": "CAM1",
"default": "CAM1",
"fieldType": "LIST",
"keyList": "mixerinputs",
"inputMask": null,
"servers": null
},
{
"name": "sr_create_story_clip",
"value": "False",
"default": null,
"fieldType": null,
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "sr_publish_story_clip",
"value": "False",
"default": null,
"fieldType": null,
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "sr_story_clip_id",
"value": "",
"default": null,
"fieldType": null,
"keyList": null,
"inputMask": null,
"servers": null
},
{
"name": "sr_story_clip_slug",
"value": "",
"default": null,
"fieldType": null,
"keyList": null,
"inputMask": null,
"servers": null
}
],
"hasTemplate": true,
"emptyTemplate": false,
"templatePlaceHolders": null
}
]
}
]
}

Open Rundown

GET /api/v1/command/open-rundown?id={rundown-id} (since v5.10.0)

Load a specific rundown in Mosart.

rundowm-id: Either the name or id of the rundown. Both can be found from the response of /rundown.

Reload Rundown

GET /api/v1/command/reload (since v5.4.0)

Reload the current rundown.

Take Next

GET /api/v1/command/start-continue (since v5.4.0)

Take the next item in the rundown. Has some optional URL parameters:

option: Default, Continue, Mix, Wipe, Effect

rate: The transition rate for mix/wipe (integer)

effect: The effect number (integer)

delay: The delay in milliseconds for continue (integer)

Skip Next

GET /api/v1/command/skip-next (since v5.10.0)

Skip the next item in the rundown.

Unskip Next

GET /api/v1/command/un-skip-next (since v5.10.0)

Unskip the last skipped item in the rundown.

Skip Next Sub Item

GET /api/v1/command/skip-next-sub-item (since v5.10.0)

Skip the next sub item in the rundown.

Unskip Next Sub Item

GET /api/v1/command/un-skip-next-sub-item (since v5.10.0)

Unskip the last skipped sub item in the rundown.

Start Rundown from Top

GET /api/v1/command/start-from-top (since v5.4.0)

Restart the rundown from the first story.

Set as Next

GET /api/v1/command/set-as-next?storyid={story-id} (since v5.10.0)

Set story as next.

Enable/Disable Rehearsal Mode

GET /api/v1/command/rehearsal-mode?state={state} (since v5.4.0)

Enable/disable/toggle rehearsal mode.

state: true = enable, false = disable, no parameter = toggle.

Take a Template

GET /api/v1/command/template?type={template-type}&variant={variant}&bus={preview|program}&insert={true|false} (since v5.4.0)

Takes the template by its type and variant (name) as well as optionally, which bus (Preview or Program) and, for Preview bus, the insert option (if the template should be inserted in front of or overwrite an existing manual item). If an optional parameter is not used, the defaults are program (for bus) and false for insert.

Examples:

GET /api/v1/command/template?type=Camera&variant=CAM1
This will cut the Camera template variant CAM1 directly to Program.

GET /api/v1/command/template?type=Camera&variant=CAM1&bus=PREVIEW

This will put the Camera template variant CAM1 into Preview, replacing any manual item already in Preview.

GET /api/v1/command/template?type=Camera&variant=CAM1&bus=PREVIEW&insert=true

This will put the Camera template variant CAM1 into Preview, inserted in front of the item currently in Preview, not overwriting any manual item in Preview.

Trigger a DirectTake Template

GET /api/v1/command/directtake?number={number} (since v5.4.0)

Trigger a given DirectTake template. You must provide the number of the desired template.

Trigger Control Command

GET /api/v1/command/controlcommand/{command}?params… (since v5.10.0)

Trigger a control command in Mosart.

See also

  • section Keyboard-based Control Command Categories in the Viz Mosart User Guide (Viz Mosart User Interface > Keyboard Shortcuts > Control Command Keys) and

  • section Command Values and Parameters in the Viz Mosart Administration Guide (Show Design and Template Editor > Working with Templates > Control Commands in Templates).

Here is a list of the control commands supported by the API along with the parameters the command takes.

Control command

Parameters (case sensitive)

start_from_top

switch_rehearsal_mode

Action=TOGGLE | ACTIVATE | DEACTIVATE
If no Action parameter is passed, it will DEACTIVATE.

autotake

Action=TRUE | ACTIVATE | FALSE | DEACTIVATE | TOGGLE
If no Action parameter is passed, it will TOGGLE

play_story

Story Name=string

videowallmode

MixEffect=string

release_background

CueOnly=TRUE | FALSE

overlay_graphics

Render=string
Action=CONTINUE | TAKE_MANUAL_OUT | TAKE_ALL_OUT | TAKE_LAST_OUT | PRETAKE_NEXT | CLEAR | MACRO | TAKE_NAMED_OVERLAY
Parameter=string
Value=string

directtake

Template=number

accessories

ncs

Action=START_STATUS | STOP_STATUS
Parameter=string

rundown_ncs_resync

user_message

Message=string

overlay_to_manual

Target=SELECTED | ONAIR | PREVIEW
Handlers=string
TakeOutMethod=AUTOMATIC | MANUAL
storyid=string

gui

asrunlog_event

Action=RemotePanelFunctions
Parameter=string

switch_graphics_mirroring

Action=TOGGLE | ACTIVATE | DE-ACTIVATE

enable_graphics_mirroring

Target=BOTH | OVERLAY | FULLSCREEN
Action=TRUE | FALSE

switch_genlock_mode

Action=TOGGLE | ACTIVATE | DEACTIVATE

engine_switcher

Action=INIT | PRESET_STYLE | GOTO_PREV_PRESET
PresetName=string
Transition=CUT | TAKE

autotrans

MixEffect=PP | PROGRAM | ME1 | ME2 | ME3
Transitionrate=string

video_server_goto

ServerChannel=ONAIR | PREVIEW
frame=number

dve

Direction=FORWARD | FWD | REVERSE | REV | BACKWARD

fullscreen_graphics

Engine=string
Action=CONTINUE | MACRO
Parameter=string

audio

Action=FADE_MANUAL | FADE_OUT_KEEPS | FREEZE_AUDIO | SET_LEVEL_2_PREVIEW | SET_LEVEL_2_ONAIR | FADE_DOWN_ALL_MAINS | FADE_DOWN_SECONDARY_AUDIO | FADE_UP_LAST_MAINS | FADE_UP_SECONDARY_AUDIO
Faderate=number

light

Scene=number

sequence

Action=START | STOP | LOOP | STOPLOOP

take_server_to_program

MixEffect=PP | PROGRAM | ME1 | ME2 | ME3
Transitionrate=number

video_port

Action=PLAY_PAUSE | STOP | CUE | RECUE | SET_LOOP | PLAY_TAIL | CUE_TA=
VideoPort=string
Parameter=string

get_player_status

VideoPort: string

weather

Action=PLAY | CONTINUE | GOTO_FIRST

graphicsprofile

Name=string

studiosetup

Name=string

set_aux_crosspoint

Bus=string
CrossPoint=string

set_crosspoint

MixEffect=PP | PROGRAM | ME1 | ME2 | ME3
Bus=A | B | C | D | KEY1 | KEY2 | KEY3 | KEY4
CrossPoint=string

transition_type

TransitionType=MIX | WIPE | EFFECT | Default | Toggle | Cut | None
Value=number

record

Command=PREPARE | START | STOP | STOP_AND_DETACH | DELETE | GETSOM
ClipName=string
PortName=string
Group=string
Recorder=string
Duration=number
IgnoreClipNamePattern=TRUE | FALSE

device_property

For audio mixer device properties:
Parameter1=AUDIO
Parameter2=string
The key of the property you want to set.
Parameter3=string
The value of the property you want to set.

For camera control device properties (format depending on robotic camera system):
Anchor=string
Category=string
Speed=string

set_videoserver_salvo

Salvo=string

switch_videoserver_mirroring

reset_overunder