{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/PutLocationVoicemailGroupObject",
  "title": "PutLocationVoicemailGroupObject",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "example": "VGName",
      "description": "Set the name of the voicemail group."
    },
    "phoneNumber": {
      "type": "string",
      "example": "+1234234324",
      "description": "Set voicemail group phone number."
    },
    "extension": {
      "type": "number",
      "example": 23455,
      "description": "Set unique voicemail group extension number."
    },
    "firstName": {
      "type": "string",
      "example": "Customer",
      "description": "Set the voicemail group caller ID first name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead."
    },
    "lastName": {
      "type": "string",
      "example": "Support",
      "description": "Set the voicemail group called ID last name. This field has been deprecated. Please use `directLineCallerIdName` and `dialByName` instead."
    },
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Set to `true` to enable the voicemail group."
    },
    "passcode": {
      "type": "number",
      "example": 1234,
      "description": "Set passcode to access voicemail group when calling."
    },
    "languageCode": {
      "type": "string",
      "example": "en_us",
      "description": "Language code for the voicemail group audio announcement."
    },
    "greeting": {
      "type": "string",
      "enum": [
        "DEFAULT",
        "CUSTOM"
      ],
      "description": "Voicemail group greeting type.\n * `DEFAULT` - Set to `DEFAULT` to play default voicemail group greeting.\n * `CUSTOM` - Set to `CUSTOM` to play previously uploaded custom voicemail group greeting.\n"
    },
    "greetingDescription": {
      "type": "string",
      "example": "short greeting.wav",
      "description": "CUSTOM greeting for previously uploaded."
    },
    "messageStorage": {
      "type": "object",
      "properties": {
        "storageType": {
          "type": "string",
          "enum": [
            "INTERNAL",
            "EXTERNAL"
          ],
          "description": "Message storage type.\n * `INTERNAL` - Set to `INTERNAL` to store messages in internal mailbox.\n * `EXTERNAL` - Set to `EXTERNAL` to send messages to the email address provided.\n"
        },
        "externalEmail": {
          "type": "string",
          "example": "user@flex2.cisco.com",
          "description": "Set external email to forward the messages."
        }
      },
      "description": "Message storage information"
    },
    "notifications": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "example": true,
          "description": "Set to `true` to enable message notification."
        },
        "destination": {
          "type": "string",
          "example": "user@flex2.cisco.com",
          "description": "Set email to SMS gateway to send notifications."
        }
      },
      "description": "Message notifications"
    },
    "faxMessage": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "example": true,
          "description": "Set to `true` to enable FAX messaging."
        },
        "phoneNumber": {
          "type": "string",
          "example": "+1234234324",
          "description": "Set valid phone number to receive FAX messages."
        },
        "extension": {
          "type": "number",
          "example": 23455,
          "description": "Set FAX messaging extension number."
        }
      },
      "description": "Fax message receive settings"
    },
    "transferToNumber": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "example": true,
          "description": "Set to `true` to enable to transfer message."
        },
        "destination": {
          "type": "string",
          "example": "+12147691003",
          "description": "Set phone number and transfer message to the provided number when '0' is dialed."
        }
      },
      "description": "Transfer message information"
    },
    "emailCopyOfMessage": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "example": true,
          "description": "Set to `true` to enable email message copy."
        },
        "emailId": {
          "type": "string",
          "example": "user@flex2.cisco.com",
          "description": "Set email to receive message copy to the email address provided."
        }
      },
      "description": "Message copy information"
    },
    "directLineCallerIdName": {
      "$ref": "#/components/schemas/DirectLineCallerIdNameObjectForPut",
      "description": "Settings for the direct line caller ID name to be shown for this voicemail group."
    },
    "dialByName": {
      "type": "string",
      "example": "Hakim Smith",
      "description": "Sets or clears the name to be used for dial by name functions. To clear the `dialByName`, the attribute must be set to null or empty string. Characters of `%`,  `+`, `\\`, `\"` and Unicode characters are not allowed."
    }
  }
}