Skip to content

Cloud API Service

The definition of Bear Cloud API service.

Fleet Management

ListRobotIDs

  • Request Type: ListRobotIDsRequest
  • Response Type: ListRobotIDsResponse
  • Description: List all robot IDs that you have permissions for and satisfies the given filter options regardless of robot status.

Map

GetCurrentMapContent

GetLocation

  • Request Type: GetLocationRequest
  • Response Type: GetLocationResponse
  • Description: Retrieve the current location data to which the robot is connected.
    If the robot is offline, it uses the cached Location data.

GetMap

  • Request Type: GetMapRequest
  • Response Type: GetMapResponse
  • Description: Retrieve the map corresponding to a given map_id.
    If offline, it uses the cached MapData data.

GetMapAnnotation

GetMapData

SwitchMap

  • Request Type: SwitchMapRequest
  • Response Type: SwitchMapResponse
  • Description: Switch the current map to a specified map.
    The request should specify a floor level and section index to be used. Returns the map_id of the switched map.

Mission

AppendMission

ChargeRobot

  • Request Type: ChargeRobotRequest
  • Response Type: ChargeRobotResponse
  • Description: Create a mission to go charge a robot regardless of battery state.
    The call will fail if the robot is already on a different mission, which needs to be canceled before the robot can be charged.

CreateMission

SubscribeMissionStatus

UpdateMission

  • Request Type: UpdateMissionRequest
  • Response Type: UpdateMissionResponse
  • Description: Update the specified mission with the given command.
    The call will fail if the robot is not on the specified mission or cannot execute the command.

LocalizeRobot

  • Request Type: LocalizeRobotRequest
  • Response Type: LocalizeRobotResponse
  • Description: Localize the robot to a localization goal.
    If the goal is accepted, subcribe to SubscribeLocalizationStatus to get the localization status.

SetRobotPose

SubscribeLocalizationStatus

SubscribeRobotPose

Settings

GetProfile

GetRobotProfiles

GetSoundFileUploadURL

ListProfileIDs

Robot Status

SubscribeBatteryStatus

SubscribeRobotStatus

  • Request Type: SubscribeRobotStatusRequest
  • Response Type: SubscribeRobotStatusResponse
  • Description: Subscribe to connection and operation state of the robot
    Upon subscription, the server immediately sends the latest known operation status, followed by updates whenever the operation status changes.

SubscribeTrayStatuses

  • Request Type: SubscribeTrayStatusesRequest
  • Response Type: SubscribeTrayStatusesResponse
  • Description: Subscribe for high level tray status.
    This is only available for robots with trays (e.g. Servi, Plus). Upon subscription, the latest known tray status will be sent, followed by snapshot updates of all tray states when any state is updated. Weight changes are updated at a 10g granularity threshold. Robots with trays that does not have weight sensor will have an UNKNOWN load state and no weight data streamed.

Robot System

GetRobotSystemInfo

  • Request Type: GetRobotSystemInfoRequest
  • Response Type: GetRobotSystemInfoResponse
  • Description: Get the overall robot system information.
    When called, the server returns robot system information. The system info tends to be static and does not change often.

Message Types

AppendMissionRequest
Field Type Description
robot_id string
mission Mission
AppendMissionResponse
Field Type Description
mission_id string
ChargeRobotRequest
Field Type Description
robot_id string
ChargeRobotResponse
Field Type Description
mission_id string
CreateMissionRequest
Field Type Description
robot_id string
mission Mission
CreateMissionResponse
Field Type Description
mission_id string
GetCurrentMapContentRequest
Field Type Description
robot_id string
GetCurrentMapContentResponse
Field Type Description
map_content MapContent
GetLocationRequest
Field Type Description
location_id string The unique identifier of the location.
The ID is typically a string of uppercase letters and numbers.
Example: "QSVS".
GetLocationResponse
Field Type Description
location Location Information about the specified location, as represented by a
location.Location message.
This includes all relevant details about the location, including
display name, floor, and section info.
GetMapAnnotationRequest
Field Type Description
annotation_id string
GetMapAnnotationResponse
Field Type Description
annotation Annotation
GetMapDataRequest
Field Type Description
map_data_id string
GetMapDataResponse
Field Type Description
map_data MapData Information about the map data which includes all relevant details about
the map data, especially the map.
GetMapRequest
Field Type Description
map_id string
GetMapResponse
Field Type Description
map Map Contains all relevant information about the requested map,
including its metadata and configuration details.
GetProfileRequest
Field Type Description
profile_id string
GetProfileResponse
Field Type Description
profile Profile
GetRobotProfilesRequest
Field Type Description
robot_id string
GetRobotProfilesResponse
Field Type Description
profiles Profile
GetRobotSystemInfoRequest
Field Type Description
robot_id string
GetRobotSystemInfoResponse
Field Type Description
robot_system_info RobotSystemInfo robot_system_info contains ID, display name, family,
and software version of the robot.
GetSoundFileUploadURLRequest
Field Type Description
sound_id string
GetSoundFileUploadURLResponse
Field Type Description
upload_url string
ListProfileIDsRequest
Field Type Description
location_id string
ListProfileIDsResponse
Field Type Description
profile_ids string
ListRobotIDsRequest
Field Type Description
filter RobotFilter
ListRobotIDsResponse
Field Type Description
total_robots int32
robot_ids string This might not have all the robot IDs if there are too many.
It will have all the robot IDs if the number of robot_ids is the same as
total_robots.
LocalizeRobotRequest
Field Type Description
robot_id string
goal LocalizationGoal
LocalizeRobotResponse
  • (No fields defined)
SetRobotPoseRequest
Field Type Description
robot_id string
pose_with_covariance PoseWithCovariance
SetRobotPoseResponse
  • (No fields defined)
SubscribeBatteryStatusRequest
Field Type Description
selector RobotSelector
SubscribeBatteryStatusResponse
Field Type Description
metadata EventMetadata
robot_id string
battery_state BatteryState
SubscribeLocalizationStatusRequest
Field Type Description
selector RobotSelector
SubscribeLocalizationStatusResponse
Field Type Description
metadata EventMetadata
robot_id string
localization_state LocalizationState
SubscribeMissionStatusRequest
Field Type Description
robot_id string
SubscribeMissionStatusResponse
Field Type Description
metadata EventMetadata
mission_state MissionState
SubscribeRobotPoseRequest
Field Type Description
robot_id string
SubscribeRobotPoseResponse
Field Type Description
metadata EventMetadata
pose Pose
SubscribeRobotStatusRequest
Field Type Description
selector RobotSelector
SubscribeRobotStatusResponse
Field Type Description
metadata EventMetadata
robot_state RobotState Robot state is not available when robot connection shows disconnected.
SubscribeTrayStatusesRequest
Field Type Description
robot_id string
SubscribeTrayStatusesResponse
Field Type Description
metadata EventMetadata
tray_states TrayState State of enabled trays, ordered from the top-most tray on the robot to the
bottom. This state is only available for robots with trays.
SwitchMapRequest
Field Type Description
robot_id string
floor_level int32 Non-negative integer floor_level is the first key used to index the map dict.
SwitchMap will raise an exception if there is no matching map.
Floor level 0 denotes the lowest reachable floor.
section_index int32 Non-negative integer section_index is the second key used to
index the map dict.
SwitchMap will raise an exception if there is no matching map.
Section index begins at 0.
SwitchMapResponse
Field Type Description
map_id string
UpdateMissionRequest
Field Type Description
robot_id string
mission_command MissionCommand
UpdateMissionResponse
  • (No fields defined)