Page Summary
-
The
/osc/commands/executeAPI allows you to execute commands on the camera, such as adjusting settings or taking pictures. -
Input requires the command
nameand any necessaryparametersdefined in the OSC API Specification. -
Output provides the command
name,state, and may include anid,results,error, orprogressdepending on the command and its execution status. -
Possible command states include
done,inProgress, anderror, with further details provided in the output fields. -
Refer to the OSC API Specification for specific command definitions, parameters, and result formats.
The /osc/commands/execute
API executes specified commands on the camera. The output is a command object.
Input
| Name | Type | Description |
|---|---|---|
name
|
String | The command to be executed. |
parameters
|
Object | Command input parameters according to the command definitions specification. Please refer to OSC API Specification for examples. |
Output
name
state
-
done- Complete, results have been returned in this response. -
inProgress- Execution is still in progress. -
error- Failed, see error in the response.
id
inProgress
. For example, the camera.takePicture
command takes a few seconds due to the need for stitching. See the “Status” section for more details.results
done
if the command is expected to return results; for example,
“results” : {
“AAA”: “BBB”,
...
}
Please refer to OSC API Specification
for examples.error
error;
for example, “error”: {
“code”: “missingParameter”
}
progress
inProgress
; for example, “progress”: {
“completion”: 0.8
}
Error
| Error code | Description |
|---|---|
unknownCommand
|
Requested command is unknown, e.g. if a v2 client (clientVersion is set to 2, see Options ) requests a deprecated command from API level 1, the request should fail with this error code. |
disabledCommand
|
Command executed is currently disabled, e.g. `takePicture` command is disabled when camera is video mode, processPicture command is disabled when the camera doesn’t support delayProcessing. This error code was added in API level 2. |
cameraInExclusiveUse
|
Camera is already in exclusive use, new session can’t be started. This error code was deprecated in API level 2. |
missingParameter
|
One or more required parameters were not specified. |
invalidParameterName
|
One or more input parameter or option name was unrecognized or unsupported. |
invalidParameterValue
|
The parameter or option names were recognized, but one or more values is invalid; for example, the value is out of range. |
Example |
|
|---|---|
| Request (API 1) | POST /osc/commands/execute HTTP / 1.1 Host : [camera ip address] : [httpPort] Content-Type : application/json;charset=utf-8 Accept : application/json Content-Length : {CONTENT_LENGTH} X-XSRF-Protected : 1 { "name" : "camera.setOptions" , "parameters" : { "sessionId" : "12ABC3" , "options" : { "iso" : 200 , "exposureCompensation" : -2 } } } |
| Request (API 2) | POST /osc/commands/execute HTTP / 1.1 Host : [camera ip address] : [httpPort] Content-Type : application/json;charset=utf-8 Accept : application/json Content-Length : {CONTENT_LENGTH} X-XSRF-Protected : 1 { "name" : "camera.setOptions" , "parameters" : { "options" : { "iso" : 200 , "exposureCompensation" : -2 } } } |
| Response | HTTP / 1.1 200 OK Content-Type : application/json;charset=utf-8 Content-Length : {CONTENT_LENGTH} X-Content-Type-Options : nosniff { "name" : "camera.setOptions" , "state" : "done" } |
| Request (API 1) | POST /osc/commands/execute HTTP / 1.1 Host : [camera ip address] : [httpPort] Content-Type : application/json;charset=utf-8 Accept : application/json Content-Length : {CONTENT_LENGTH} X-XSRF-Protected : 1 { "name" : "camera.takePicture" , "parameters" : { "sessionId" : "12ABC3" } } |
| Request (API 2) | POST /osc/commands/execute HTTP / 1.1 Host : [camera ip address] : [httpPort] Content-Type : application/json;charset=utf-8 Accept : application/json Content-Length : {CONTENT_LENGTH} X-XSRF-Protected : 1 { "name" : "camera.takePicture" } |
| Response | HTTP / 1.1 200 OK Content-Type : application/json;charset=utf-8 Content-Length : {CONTENT_LENGTH} X-Content-Type-Options : nosniff { "name" : "camera.takePicture" , "state" : "inProgress" , "id" : "90ABCD" , "progress" : { "completion" : 0 } } |


