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 |