{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/UpdatePMRObject",
  "title": "UpdatePMRObject",
  "type": "object",
  "required": [
    "topic",
    "hostPin",
    "enabledAutoLock",
    "autoLockMinutes",
    "enabledNotifyHost",
    "supportCoHost",
    "coHosts"
  ],
  "properties": {
    "topic": {
      "type": "string",
      "example": "John's PMR",
      "description": "Personal Meeting Room topic to be updated."
    },
    "hostPin": {
      "type": "string",
      "example": "4325",
      "description": "Updated PIN for joining the room as host. The host PIN must be digits of a predefined length, e.g. 4 digits. It cannot contain sequential digits, such as 1234 or 4321, or repeated digits of the predefined length, such as 1111. The predefined length for host PIN can be viewed in user's `My Personal Room` page and it can only be changed by site administrator."
    },
    "enabledAutoLock": {
      "type": "boolean",
      "description": "Update for option to automatically lock the Personal Room a number of minutes after a meeting starts. When a room is locked, invitees cannot enter until the owner admits them. The period after which the meeting is locked is defined by `autoLockMinutes`."
    },
    "autoLockMinutes": {
      "type": "number",
      "description": "Updated number of minutes after which the Personal Room is locked if `enabledAutoLock` is enabled. Valid options are 0, 5, 10, 15 and 20."
    },
    "enabledNotifyHost": {
      "type": "boolean",
      "example": true,
      "description": "Update for flag to enable notifying the owner of a Personal Room when someone enters the Personal Room lobby while the owner is not in the room."
    },
    "supportCoHost": {
      "type": "boolean",
      "example": true,
      "description": "Update for flag allowing other invitees to host a meetingCoHost in the Personal Room without the owner."
    },
    "supportAnyoneAsCoHost": {
      "type": "boolean",
      "description": "Whether or not to allow any attendee with a host account on the target site to become a cohost when joining the Personal Room. The target site is user's preferred site."
    },
    "allowFirstUserToBeCoHost": {
      "type": "boolean",
      "description": "Whether or not to allow the first attendee with a host account on the target site to become a cohost when joining the Personal Room. The target site is user's preferred site."
    },
    "allowAuthenticatedDevices": {
      "type": "boolean",
      "description": "Whether or not to allow authenticated video devices in the user's organization to start or join the meeting without a prompt."
    },
    "coHosts": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "email",
          "displayName"
        ],
        "properties": {
          "email": {
            "type": "string",
            "example": "john.andersen@example.com",
            "description": "Email address for cohost. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API."
          },
          "displayName": {
            "type": "string",
            "example": "John Andersen",
            "description": "Display name for cohost. This attribute can be modified with the [Update Personal Meeting Room Options](/docs/api/v1/meeting-preferences/update-personal-meeting-room-options) API."
          }
        }
      },
      "description": "Updated array defining cohosts for the room if both `supportAnyoneAsCoHost` and `allowFirstUserToBeCoHost` are `false`"
    }
  }
}