REST API Quick start guide

Below is the list of REST commands that you can send to a MovieRecorder. Here is an example of request that you can use in a simple browser :

http://localhost:8080/sources

This will return a dictionary with the list of sources available for a MovieRecorder, which should look like this:

{
{
"is_recording" : true,
"is_paused" : false,
"is_enabled" : true,
"display_name" : "Io4K - 0 - 1",
"description" : "Io4K - 0 - 1 (1080i 59.94)",
"unique_id" : "4XT00292 - 0",
"device_name" : "Io4K - 0 - 1"
},
{
"is_recording" : false,
"is_paused" : false,
"is_enabled" : false,
"display_name" : "Io4K - 0 - 2",
"description" : "Io4K - 0 - 2 (1080i 59.94)",
"unique_id" : "4XT00292 - 1",
"device_name" : "Io4K - 0 - 2"
},
{
"is_recording" : false,
"is_paused" : false,
"is_enabled" : false,
"display_name" : "Io4K - 0 - 3",
"description" : "Io4K - 0 - 3 (1080i 59.94)",
"unique_id" : "4XT00292 - 2",
"device_name" : "Io4K - 0 - 3"
},
{
"is_recording" : false,
"is_paused" : false,
"is_enabled" : false,
"display_name" : "Io4K - 0 - 4",
"description" : "Io4K - 0 - 4 (1080i 59.94)",
"unique_id" : "4XT00292 - 3",
"device_name" : "Io4K - 0 - 4"
}
}

Unique id or index ?

Each source can be addressed using either its unique_id, or its index. The unique_id is the safest way to talk to a source as it will not change and remain unique. The index is the position of that source in the list of sources presented in the MovieRecorder interface. It can change depending on the other sources that are enabled and their name.


Basic GET request

To return the list of sources available on that MovieRecorder :

GET /sources

To return the list of destinations available on that MovieRecorder :

GET /destinations

Basic Controls

To start the recording of a source :

GET /sources/{unique_id or index}/record

To pause the recording of a source :

GET /sources/{unique_id or index}/pause

To resume the recording of a source :

GET /sources/{unique_id or index}/resume

To stop the recording of a source :

GET /sources/{unique_id or index}/stop

Other Requests

To return the source and its settings :

GET /sources/{unique_id or index}

Other Requests

To return information about the source feed: last received timecode (string), if it is recording (bool), last warning (string), vuMeterLevels (array of values from 0 to 1.0) :

GET /sources/{unique_id or index}/info

To return a list of unique ids of the enabled destinations of a source :

GET /sources/{unique_id or index}/destinations

To pass an array of destination unique ids that a source should record to :

PUT /sources/{unique_id or index}/destinations

To return the recording name of a source :

GET /sources/{unique_id or index}/recording_name

To pass a string identified by the key recording_name to replace the recording name of a source :

PUT /sources/{unique_id or index}/recording_name

To return the recording information (is_recording, is_paused, recorded_file_paths) of a source :

GET /sources/{unique_id or index}/recording

To return a JPEG thumbnail of the last received image! of a source :

GET /sources/{unique_id or index}/thumbnail

For more information

If you need more info or support about MovieRecorder, you can find it on our support desk.