RMS Cloud API (2.1.0)
Download OpenAPI specification:Download
Response samples
- 200
- 403
{- "devices": [
- {
- "deviceId": "string",
- "deviceName": "string",
- "modelName": "string",
- "serial": "string",
- "braviaId": "string",
- "softwareVersion": "string",
- "osVersion": "string",
- "displayResolution": {
- "width": 0,
- "height": 0
}, - "networkInterfaces": [
- {
- "type": "WIRELESS",
- "macAddress": "string",
- "ipv4Address": "string",
- "ipv6Address": "string"
}
], - "redda": {
- "targetRegion": true,
- "enforced": true
}
}
]
}Get device information
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Responses
Response samples
- 200
- 403
- 404
{- "deviceId": "string",
- "deviceName": "string",
- "modelName": "string",
- "serial": "string",
- "braviaId": "string",
- "softwareVersion": "string",
- "osVersion": "string",
- "displayResolution": {
- "width": 0,
- "height": 0
}, - "networkInterfaces": [
- {
- "type": "WIRELESS",
- "macAddress": "string",
- "ipv4Address": "string",
- "ipv6Address": "string"
}
], - "redda": {
- "targetRegion": true,
- "enforced": true
}
}Get installed apks list.
- The attributes available via this API are specific to APKs, as defined by Android.
- For details on each attribute, please refer to the Android Developer documentation.
- To determine if an APK or Activity can be launched:
- APK is launchable when:
- Its enabledState is COMPONENT_ENABLED_STATE_ENABLED or COMPONENT_ENABLED_STATE_DISABLED_UNTIL_USED
- Its enabledState is COMPONENT_ENABLED_STATE_DEFAULT and enabled is true
- Activity is launchable when the parent APK is launchable AND:
- Its exported is true AND its enabledState is COMPONENT_ENABLED_STATE_ENABLED or COMPONENT_ENABLED_STATE_DISABLED_UNTIL_USED
- Its exported is true AND its enabledState is COMPONENT_ENABLED_STATE_DEFAULT and enabled is true
- APK is launchable when:
- APKs in the "Hide" state are not included in the list returned by this API.
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Responses
Response samples
- 200
- 403
- 404
- 503
{- "apks": [
- {
- "packageName": "string",
- "versionCode": "string",
- "versionName": "string",
- "appName": "string",
- "permissions": [
- {
- "permission": "string",
- "status": "GRANTED"
}
], - "activities": [
- {
- "activityName": "string",
- "isLeanbackLauncher": true,
- "isLauncher": true,
- "enabledState": "COMPONENT_ENABLED_STATE_DEFAULT",
- "enabled": true,
- "exported": true
}
], - "enabledState": "COMPONENT_ENABLED_STATE_DEFAULT",
- "enabled": true
}
]
}Take a screenshot.
An Accept header is required in the request header, and "image/jpeg" shall be set as first media type. e.g.) Accept: image/jpeg'
Note:If TV software version is 6.7612 or higher, specifying “video” will capture the video plane for HDMI. Please refer to the design guidelines in details.
Authorizations:
path Parameters
| deviceId required | string Device ID. |
query Parameters
| plane | string Added in: v1.1.0
Added in: v1.3.0
|
Responses
Response samples
- 400
- 403
- 404
- 500
- 503
{- "errorCode": "INVALID_ARGUMENT"
}Get volume.
Returns the current volume.
Note:
- For devices with 5-digit software versions (e.g., 6.8000):
- Returns the current audio output volume.
- For devices with 10-digit software versions (e.g., 114.101.260.1):
- Returns the volume of the built-in speakers (SPEAKER).
- To get volumes for all audio outputs, use
/devices/{deviceId}/volumes.
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Responses
Response samples
- 200
- 403
- 404
- 503
{- "volume": 100
}Get volumes for all audio outputs.
Returns volume information for all audio outputs.
Note:
- This API is only available for devices with 10-digit software versions (e.g., 114.101.260.1).
- Devices with 5-digit software versions (e.g., 6.8000) do not support this API.
- Use
/devices/{deviceId}/volumeinstead.
- Use
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Responses
Response samples
- 200
- 400
- 403
- 404
- 503
{- "volumes": [
- {
- "target": "SPEAKER",
- "volume": 100
}
]
}Get storages status.
Added in: v1.1.0
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Responses
Response samples
- 200
- 403
- 404
- 503
{- "storages": {
- "internal": {
- "free": 0,
- "total": 0
}, - "external": [
- {
- "label": "string",
- "free": 0,
- "total": 0
}
]
}
}Launch APK
Added in: v1.1.0
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Request Body schema: application/jsonrequired
| packageName required | string package name. |
| activityName | string activity name. required if "data" option is specified. |
| data | string data (URI). |
Responses
Request samples
- Payload
{- "packageName": "string",
- "activityName": "string",
- "data": "string"
}Response samples
- 400
- 403
- 404
{- "errorCode": "INVALID_ARGUMENT",
- "errorMessage": "packageName and/or activityName are invalid."
}Install APK
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Request Body schema: application/jsonrequired
| assetId required | string Asset ID |
| grantPermissions | string Enum: "AUTO" "OFF" Added in: v1.4.0
|
Responses
Request samples
- Payload
{- "assetId": "string",
- "grantPermissions": "AUTO"
}Response samples
- 400
- 403
- 404
- 503
{- "errorCode": "INVALID_ARGUMENT",
- "errorMessage": "Asset ID not found."
}Uninstall APK
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Request Body schema: application/jsonrequired
| packageName required | string package name. |
Responses
Request samples
- Payload
{- "packageName": "string"
}Response samples
- 400
- 403
- 404
{- "errorCode": "INVALID_ARGUMENT",
- "errorMessage": "Request body is invalid."
}Set external storage permission to the apk.
Note:This API can't set the external storage permission for the pre-installed packages.
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Request Body schema: application/jsonrequired
| action required | string Enum: "GRANT_PERMISSION" "DENY_PERMISSION" "DEFAULT_PERMISSION" action (GRANT_PERMISSION/DENY_PERMISSION/DEFAULT_PERMISSION) |
| packageName required | string package name. |
| permission required | string permission
|
Responses
Request samples
- Payload
{- "action": "GRANT_PERMISSION",
- "packageName": "string",
- "permission": "string"
}Response samples
- 400
- 403
- 404
{- "errorCode": "INVALID_ARGUMENT",
- "errorMessage": "packageName and/or permission are invalid."
}Set mute (On / Off)
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Request Body schema: application/jsonrequired
| mute required | string Enum: "ON" "OFF" ON / OFF |
Responses
Request samples
- Payload
{- "mute": "ON"
}Response samples
- 400
- 403
- 404
{- "errorCode": "INVALID_ARGUMENT",
- "errorMessage": "Invalid mute value."
}Set pro mode (NORMAL / PRO_SETTINGS / PRO)
Added in: v1.1.0
Note:
- For devices with 5-digit software versions (e.g., 6.8000):
- All modes (NORMAL, PRO_SETTINGS, PRO) are supported.
- For devices with 10-digit software versions (e.g., 114.101.260.1):
- Setting mode to PRO_SETTINGS is not supported and returns INVALID_ARGUMENT.
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Request Body schema: application/jsonrequired
| mode required | string Enum: "NORMAL" "PRO_SETTINGS" "PRO" (NORMAL / PRO_SETTINGS / PRO) mode |
Responses
Request samples
- Payload
{- "mode": "NORMAL"
}Response samples
- 400
- 403
- 404
- 503
{- "errorCode": "INVALID_ARGUMENT",
- "errorMessage": "Invalid mode value."
}Get all request information.
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Responses
Response samples
- 200
- 403
- 404
{- "requests": [
- {
- "requestId": "string",
- "status": {
- "code": "WAITING",
- "progress": 0,
- "errorCode": "API_KEY_NOT_FOUND",
- "errorMessage": "string"
}, - "result": {
- "schemaVersion": "string",
- "specVersion": 0,
- "settings": {
- "settingItemId1": {
- "value": 0
}, - "settingItemId2": {
- "value": "string"
}, - "settingItemId3": {
- "value": true
}
}, - "errors": [
- {
- "id": "string",
- "code": "ID_NOT_FOUND",
- "message": "string"
}
]
}, - "createdAt": "string",
- "updatedAt": "string"
}
]
}Get request information.
Authorizations:
path Parameters
| deviceId required | string Device ID. |
| requestId required | string ID given for each request. |
Responses
Response samples
- 200
- 403
- 404
{- "requestId": "string",
- "status": {
- "code": "WAITING",
- "progress": 0,
- "errorCode": "API_KEY_NOT_FOUND",
- "errorMessage": "string"
}, - "result": {
- "schemaVersion": "string",
- "specVersion": 0,
- "settings": {
- "settingItemId1": {
- "value": 0
}, - "settingItemId2": {
- "value": "string"
}, - "settingItemId3": {
- "value": true
}
}, - "errors": [
- {
- "id": "string",
- "code": "ID_NOT_FOUND",
- "message": "string"
}
]
}, - "createdAt": "string",
- "updatedAt": "string"
}Set Screen On/Off
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Request Body schema: application/jsonrequired
| screen required | string Enum: "ON" "OFF" Screen state (ON / OFF) |
Responses
Request samples
- Payload
{- "screen": "ON"
}Response samples
- 400
- 403
- 404
{- "errorCode": "INVALID_ARGUMENT",
- "errorMessage": "Invalid screen value."
}Set screen rotate.
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Request Body schema: application/jsonrequired
| rotation required | number Screen rotation (0, 90) |
Responses
Request samples
- Payload
{- "rotation": 0
}Response samples
- 400
- 403
- 404
{- "errorCode": "INVALID_ARGUMENT",
- "errorMessage": "Invalid rotation value."
}Change the external input selection.
Note:
- For devices with 5-digit software versions (e.g., 6.8000):
- All inputs (HDMI1, HDMI2, HDMI3, HDMI4, AV) are supported.
- For devices with 10-digit software versions (e.g., 114.101.260.1):
- Setting input to AV is not supported and returns INVALID_ARGUMENT.
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Request Body schema: application/jsonrequired
| port required | string Enum: "HDMI1" "HDMI2" "HDMI3" "HDMI4" "AV" external input name (HDMI1 / HDMI2 / HDMI3 / HDMI4 / AV) |
Responses
Request samples
- Payload
{- "port": "HDMI1"
}Response samples
- 400
- 403
- 404
{- "errorCode": "INVALID_ARGUMENT",
- "errorMessage": "Invalid port value."
}Export the device settings.
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Request Body schema: application/jsonrequired
required | object |
Responses
Request samples
- Payload
{- "exportSettingIds": {
- "schemaVersion": "string",
- "specVersion": 0,
- "ids": [
- "string"
]
}
}Response samples
- 400
- 403
- 404
{- "errorCode": "INVALID_ARGUMENT"
}Import settings to the device.
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Request Body schema: application/jsonrequired
required | object (Settings) |
Responses
Request samples
- Payload
{- "importSettings": {
- "schemaVersion": "string",
- "specVersion": 0,
- "settings": {
- "settingItemId1": {
- "value": 0
}, - "settingItemId2": {
- "value": "string"
}, - "settingItemId3": {
- "value": true
}
}, - "errors": [
- {
- "id": "string",
- "code": "ID_NOT_FOUND",
- "message": "string"
}
]
}
}Response samples
- 400
- 403
- 404
{- "errorCode": "INVALID_ARGUMENT"
}Update the device system software.
The RMS Agent (Display Control Agent) will be updated to the latest version automatically at the system software update. Available system software versions can be obtained by using the GET /system-softwares.
Note:
- For devices with 5-digit software versions (e.g., 6.8000):
- Set the version field in the request body to a 5-digit version (e.g., 6.8112).
- For devices with 10-digit software versions (e.g., 114.101.260.1):
- Set the version field in the request body to a 10-digit version (e.g., 114.101.340.1).
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Request Body schema: application/jsonrequired
| version required | string software version (e.g. 6.7612). |
Responses
Request samples
- Payload
{- "version": "6.7612"
}Response samples
- 400
- 403
- 404
- 503
{- "errorCode": "INVALID_ARGUMENT",
- "errorMessage": "Version of device software not found."
}Set audio volume.
Added in: v1.1.0
Sets the audio volume.
Note:
- For devices with 5-digit software versions (e.g., 6.8000):
- Sets the current audio output volume.
- For devices with 10-digit software versions (e.g., 114.101.260.1):
- Sets the volume of the built-in speakers (SPEAKER).
- To set volumes for multiple audio outputs, use
/devices/{deviceId}/volumes/requests.
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Request Body schema: application/jsonrequired
| volume required | integer [ 0 .. 100 ] volume (0 - 100) |
Responses
Request samples
- Payload
{- "volume": 50
}Response samples
- 400
- 403
- 404
{- "errorCode": "INVALID_ARGUMENT",
- "errorMessage": "Invalid volume value."
}Set audio volumes for multiple outputs.
Added in: v2.0.0
Sets audio volumes for multiple outputs.
Note:
- This API is only available for devices with 10-digit software versions (e.g., 114.101.260.1 or later).
- For devices with 5-digit software versions, use
/devices/{deviceId}/volume/requestsinstead.
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Request Body schema: application/jsonrequired
required | Array of objects (VolumeInfo) non-empty Volume settings for audio outputs.
|
Responses
Request samples
- Payload
{- "volumes": [
- {
- "target": "SPEAKER",
- "volume": 50
}
]
}Response samples
- 400
- 403
- 404
{- "errorCode": "INVALID_ARGUMENT",
- "errorMessage": "Invalid volume value."
}Send remote control code.
Authorizations:
path Parameters
| deviceId required | string Device ID. |
Request Body schema: application/jsonrequired
| code required | string Enum: "KEY_LEFT" "KEY_UP" "KEY_RIGHT" "KEY_DOWN" "KEY_ENTER" "KEY_BACK_SPACE" "KEY_BLUE" "KEY_RED" "KEY_GREEN" "KEY_YELLOW" "KEY_0" "KEY_1" "KEY_2" "KEY_3" "KEY_4" "KEY_5" "KEY_6" "KEY_7" "KEY_8" "KEY_9" "KEY_PLAY" "KEY_PAUSE" "KEY_STOP" "KEY_TRACK_NEXT" "KEY_TRACK_PREV" "KEY_FAST_FWD" "KEY_REWIND" "KEY_SUBTITLE" "KEY_INFO" "KEY_HOME" "KEY_CH_UP" "KEY_CH_DOWN" "KEY_AUDIO_CHANGE" "KEY_TV_INPUT_HDMI_1" "KEY_TV_INPUT_HDMI_2" "KEY_TV_INPUT_HDMI_3" "KEY_TV_INPUT_HDMI_4" "KEY_HELP" "KEY_SYNC_MENU" "KEY_POWER" "KEY_INPUT_CHANGE" "KEY_MUTE" "KEY_VOLUME_UP" "KEY_VOLUME_DOWN" "KEY_DOT" "KEY_OPTIONS" Remote control code.
|
Responses
Request samples
- Payload
{- "code": "KEY_LEFT"
}Response samples
- 200
- 400
- 403
- 404
- 503
{- "code": "COMPLETED"
}Associate the device with the access key.
Authorizations:
path Parameters
| accessKey required | string Access Key. |
Request Body schema: application/jsonrequired
| deviceId required | string Device ID. |
Responses
Request samples
- Payload
{- "deviceId": "string"
}Response samples
- 400
- 403
- 404
- 409
{- "errorCode": "INVALID_ARGUMENT",
- "errorMessage": "Invalid deviceId value."
}Get supported system software versions.
Added in: v1.5.0
Authorizations:
query Parameters
| modelName required | string Model Name (e.g. FW-85BZ40L). |
Responses
Response samples
- 200
- 400
- 403
{- "systemSoftwares": [
- {
- "modelName": "FW-85BZ40L",
- "versions": [
- {
- "version": "6.8000"
}, - {
- "version": "6.7612"
}, - {
- "version": "6.7000"
}
]
}
]
}