{
  "description": "Clean one or more rooms, in the requested order. Each entry is a canonical endpoint group the robot can control through a CAN_CONTROL relationship. More than one room requires the configuration to declare supportsMultiRoomCleaning; otherwise the request is rejected with MULTI_ROOM_UNSUPPORTED.",
  "type": "object",
  "properties": {
    "groupIds": {
      "type": "array",
      "minItems": 1,
      "maxItems": 20,
      "uniqueItems": true,
      "items": {
        "type": "string",
        "minLength": 1
      },
      "description": "Endpoint group IDs of the rooms to clean, in cleaning order"
    },
    "repeat": {
      "type": "integer",
      "minimum": 1,
      "maximum": 3,
      "description": "Number of cleaning passes per room; defaults to 1"
    }
  },
  "required": [
    "groupIds"
  ],
  "additionalProperties": false
}
