System
API for communication with ZBOS by Zora Robotics.
Channels
zbos/alarm/trigger
PUB Call for help
Send an Alarm message, trigger alarm, call for help.
SipConfig
zbos/alarm/config/get
PUB Get alarm configs
Get an object containing all alarm configssee zbos/alarm/config/get/response/\{key} for response
zbos/alarm/config/set/event
zbos/alarm/database/get
PUB Get alarm database
Retrieves a list of all the alarms stored in the databasesee zbos/alarm/database/get/response/\{key} for response
zbos/alarm/database/get/response/\{key}
SUB Get alarm database response
The response to a database get request
Array<MonitoringResult>
Payload
Name |
Type |
Description |
Accepted values |
|
array (object) |
Any |
|
|
string |
Any |
|
|
string |
Any |
|
|
string |
Any |
|
|
string |
Any |
|
|
string |
Any |
|
|
number |
Any |
|
|
object |
Any |
zbos/status/battery/get
PUB Get battery status
see zbos/status/battery/response/\{key} for response
zbos/status/battery/event
zbos/status/battery/low/get
PUB Get the battery low level threshold
see zbos/status/battery/low/response/\{key} for response
zbos/status/battery/critical/set
zbos/status/battery/critical/get
PUB Get the battery critical level threshold
see zbos/status/battery/critical/response/\{key} for response
zbos/system/robot/identification/get
PUB Request robot identification
Use this to ask a detailed list of robot specifics like serial, features, …
zbos/system/robot/identification/event
SUB response: Robot identification
A detailed list of robot specifics
RobotIdentification
Payload
Name |
Type |
Description |
Accepted values |
|
string |
Key of the message that requested the identification |
Any |
|
string |
Any |
|
|
string |
Any |
|
|
string |
Any |
|
|
string |
Any |
|
|
object |
Any |
|
|
object |
Any |
|
|
string |
Any |
|
|
string |
Any |
|
|
string |
Any |
|
|
object |
Any |
|
|
object |
Any |
|
|
object |
Any |
|
|
object |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
object |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
object |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
array (object) |
Any |
|
|
string |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
number |
The exact physical pixels per inch of the screen in the X dimension |
Any |
|
number |
The exact physical pixels per inch of the screen in the Y dimension |
Any |
|
number |
The approximate overall pixels per inch for the display |
Any |
|
array (object) |
Any |
|
|
string |
Any |
|
|
boolean |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
string |
Use the front or back facing camera on Android, when unspecified: the front camera will be used, in case it is available |
* |
|
number |
Scale the camera preview on the horizontal axis, can be mirrored using negative values |
Any |
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
object |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
object |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
object |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
array (object) |
Any |
|
|
string |
Any |
|
|
string |
Human-readable label |
Any |
|
string |
Translation key for human-readable label |
Any |
|
integer |
Optional. How many POIs of this type must exist, default 0 |
Any |
|
integer |
Optional. How many POIs of this type are allowed to exist, default no limit |
Any |
|
array (object) |
Any |
|
|
string |
Any |
|
|
string |
Human-readable label |
Any |
|
string |
Translation key for human-readable label |
Any |
|
object |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
array (object) |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
array (object) |
Any |
|
|
string |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
array (object) |
Any |
|
|
string |
* |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
object |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
boolean |
Any |
|
|
array (object) |
Any |
|
|
string |
Any |
|
|
string |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
object |
Any |
|
|
array (string) |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
|
|
object |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
boolean |
Any |
|
|
array (string) |
Any |
Examples of payload
{
"key": "some_key",
"serial": "SH-J01-00096",
"name": "Jamesy",
"versions": {},
"features": {
"audio": {
"control_parameters": {
"pitch": {
"min": 0,
"step": 1,
"default": 50,
"max": 100
},
"speed": {
"min": 0,
"step": 1,
"default": 50,
"max": 100
},
"volume": {
"min": 0,
"step": 1,
"default": 50,
"max": 100
}
}
},
"cameras": [
{
"key": "kiosk",
"primary": true,
"rotation": 0,
"preview_scale_x": -1
}
],
"external_displays": [
{
"id": "main_display",
"video": true,
"audio": true,
"width": 1280,
"height": 800,
"xdpi": 180,
"ydpi": 160,
"dpi": 160
}
],
"can_poi": true,
"can_move": true,
"can_dance": false,
"can_speech": true,
"can_execute_speech_commands": true,
"has_storage": true,
"can_animate": false,
"can_gym": false,
"has_sensors": true,
"has_emotions": false,
"can_video_stream": true,
"can_take_picture": true,
"has_slam_image_map": true,
"has_security_mode": true,
"can_detect_motion": true,
"can_face_recognize": true,
"can_poi_interactive": true,
"has_monitoring": false,
"has_qr_scanner": false,
"can_change_ntp_server": false,
"voice_feature": {
"supports_gesticulate": false,
"supports_language": true,
"supports_pitch": true,
"supports_speed": true,
"supports_volume": true,
"supports_speech_volume": true
},
"listen_feature": {
"can_trigger_manual": true,
"can_trigger_hotword": true
},
"slam_feature": {
"can_navigate": true,
"can_extend_map": true,
"can_manage_pois": true,
"can_manage_walls": true,
"can_copy_map": true,
"has_docking_station": true,
"can_recover_location": true,
"poi_types": [
{
"type": "SOME_POI_TYPE",
"label": "A POI type",
"min": 1,
"max": 3,
"label_key": "default.poi_type_some_poi_type"
}
],
"zone_types": [
{
"type": "SOME_ZONE_TYPE",
"label": "A Zone type",
"label_key": "default.zone_type_some_zone_type"
}
]
},
"voip_feature": {
"supports_voip": true
},
"face_recognition_feature": {
"can_detect_known_faces": false,
"can_detect_number_of_faces": true
},
"time_feature": {
"can_change_time_zone": true
},
"print_feature": {
"can_print": true
},
"health_certificates_feature": {
"can_check_certificates": true
},
"animation_feature": {
"can_loop": true,
"can_interrupt": false,
"can_transition": false
},
"apps_feature": {
"has_apps": true
},
"scheduler_feature": {
"has_scheduler": true
}
},
"hardware": {
"heads": [
{
"moveable": true,
"can_reset_to_default_position": true
}
],
"parts": [
{
"name": "Leg",
"moveable": false,
"can_reset_to_default_position": false
}
]
},
"composer": {
"simple": {
"dance": {
"enabled": false,
"enabled_sources": [],
"can_block": true
},
"speech": {
"enabled": true,
"enabled_sources": [
"scheduler",
"composer",
"task_manager"
],
"can_block": true
},
"animation": {
"enabled": false,
"enabled_sources": [],
"can_block": true
},
"emotion": {
"enabled": false,
"enabled_sources": [],
"can_block": true
},
"multimedia": {
"enabled": true,
"enabled_sources": [
"scheduler",
"composer",
"task_manager"
],
"can_block": true
},
"poi": {
"enabled": true,
"enabled_sources": [
"scheduler",
"composer",
"task_manager"
],
"can_block": true
},
"mqtt": {
"enabled": true,
"enabled_sources": [
"scheduler",
"composer",
"task_manager"
],
"can_block": true
},
"input": {
"enabled": true,
"enabled_sources": [
"composer"
],
"can_block": true
},
"browser": {
"enabled": true,
"enabled_sources": [
"scheduler",
"composer",
"task_manager"
],
"can_block": true
},
"gym": {
"enabled": false,
"enabled_sources": [],
"can_block": true
},
"wait_duration": {
"enabled": true,
"enabled_sources": [
"composer"
],
"can_block": true
},
"wait_sensor": {
"enabled": true,
"enabled_sources": [
"composer"
],
"can_block": true
},
"wait_face": {
"enabled": false,
"enabled_sources": [],
"can_block": true
},
"wait_voice": {
"enabled": false,
"enabled_sources": [],
"can_block": true
},
"wait_qr_code": {
"enabled": false,
"enabled_sources": [],
"can_block": true
},
"motion_head": {
"enabled": true,
"enabled_sources": [
"scheduler",
"composer",
"task_manager"
],
"can_block": true
},
"motion_detection": {
"enabled": true,
"enabled_sources": [
"composer"
],
"can_block": true
},
"app_start": {
"enabled": true,
"enabled_sources": [
"scheduler",
"composer",
"task_manager"
],
"can_block": true
},
"change_datasource": {
"enabled": true,
"enabled_sources": [
"scheduler",
"composer",
"task_manager"
],
"can_block": true
},
"multimedia_stop": {
"enabled": true,
"enabled_sources": [
"scheduler",
"composer",
"task_manager"
],
"can_block": true
}
},
"advanced": {
"variables": {
"enabled": false,
"enabled_sources": [],
"can_block": true
},
"api": {
"enabled": false,
"enabled_sources": [],
"can_block": true
},
"loop": {
"enabled": false,
"enabled_sources": [],
"can_block": true
},
"start": {
"enabled": false,
"enabled_sources": [],
"can_block": true
},
"stop": {
"enabled": false,
"enabled_sources": [],
"can_block": true
},
"math_formula": {
"enabled": false,
"enabled_sources": [],
"can_block": true
},
"math_operations": {
"enabled": false,
"enabled_sources": [],
"can_block": true
},
"if_else": {
"enabled": false,
"enabled_sources": [],
"can_block": true
}
}
},
"robot_type": "James",
"body_id": "D2EE32C8F3EFF59FDFEAF6E21834F71C",
"network_info": {
"ip": "172.16.0.100",
"ssid": "string",
"mac_address": "02:00:00:00:00:00"
},
"supported_file_types": [
{
"type": "string",
"mime_type": "string"
}
],
"connection_features": {
"has_wifi": true,
"has_cable": false,
"has_hotspot": true,
"cable_features": {
"adapter_names": []
},
"wifi_features": {
"can_configure": false,
"adapter_names": [
"wlan0"
]
},
"hotspot_features": {
"can_activate": true,
"can_change_ssid": true,
"can_change_password": true,
"adapter_names": [
"WIFI1",
"WIFI2"
]
}
}
}
zbos/system/name/set
PUB Set robot name
Use this to change the robot name. The change will be published through zbos/system/robot/identification/event
zbos/system/version/get
PUB Get system version
see zbos/system/version/response/\{key} for response
zbos/system/serial/get
PUB Get system serial number
see zbos/system/serial/response/\{key} for response
zbos/system/ready/request
PUB Get system ready
see zbos/system/ready/response/\{key} for response
zbos/system/hotword/rotation/get
PUB Get hotword rotation
see zbos/system/hotword/rotation/response/\{key} for response
zbos/system/adblogs/get
PUB Get adb logs
see zbos/system/adblogs/response/\{key} for response
zbos/system/cloud/enable/get
PUB Get cloud broker enabled state
see zbos/system/cloud/enable/response/\{key} for response
zbos/system/license/response/\{key}
zbos/system/license/event
zbos/system/multimedia/rename
PUB Rename file
Rename a multimedia filesee zbos/system/multimedia/rename/response for response
zbos/system/multimedia/delete/request
zbos/system/multimedia/delete/response/\{key}
zbos/system/services/get
PUB Get the state of services
Get the state of the services
FilteringRequest
Payload
Name |
Type |
Description |
Accepted values |
|
string |
Any |
|
|
integer |
Any |
|
|
integer |
Any |
|
|
array (object) |
Any |
|
|
string |
Field to check on. Note that the field should be camelCase, not snake_case |
Any |
|
string |
Value to check on. For numbers you should use 'min' and 'max'. |
Any |
|
number |
Minimum value, only usable for number fields |
Any |
|
number |
Maximum value, only usable for number fields |
Any |
|
string |
Direction to sort on. Can be 'asc' or 'desc'. The default direction is 'asc' |
* |
|
string |
Operator for either the child filters, or this filter object itself. Can be 'and', 'or' or 'not'. Default is 'and'. The root operator is always 'and' |
* |
|
string |
Match type for string values. Can be 'exact', 'contains', 'starts_with', 'ends_with'. The default match_type is 'contains' |
* |
|
array (object) |
Filters on which the operator will be applied. If there are no child filters, the operator will be applied to the filter object itself. |
Any |
|
array (object) |
Filters to apply on the child fields of the field. Will only work if the field is an object, array/list or map. |
Any |
|
array (object) |
Any |
|
|
string |
Field to check on. Note that the field should be camelCase, not snake_case |
Any |
|
string |
Value to check on. For numbers you should use 'min' and 'max'. |
Any |
|
number |
Minimum value, only usable for number fields |
Any |
|
number |
Maximum value, only usable for number fields |
Any |
|
string |
Direction to sort on. Can be 'asc' or 'desc'. The default direction is 'asc' |
* |
|
string |
Operator for either the child filters, or this filter object itself. Can be 'and', 'or' or 'not'. Default is 'and'. The root operator is always 'and' |
* |
|
string |
Match type for string values. Can be 'exact', 'contains', 'starts_with', 'ends_with'. The default match_type is 'contains' |
* |
|
array (object) |
Filters on which the operator will be applied. If there are no child filters, the operator will be applied to the filter object itself. |
Any |
|
array (object) |
Filters to apply on the child fields of the field. Will only work if the field is an object, array/list or map. |
Any |
|
string |
Optional. Set the language to have all translations filled in. The language format is ISO 639-1 language code, Eg: 'en' or 'en-US' |
Any |