{
    "metamodel":
    {
        "component":
        {
            "name": "com.vmware.vcenter.lcm",
            "documentation": "",
            "metadata":
            {
                "authn": {"value": "com.vmware.vapi.idl.model.metadata.AuthenticationMetadata@21e0a62c"}
            }

            ,
            "packages":
            [
                {
                    "name": "com.vmware.cis",
                    "documentation": "The {@name com.vmware.cis} {@term package} provides VMware common infrastructure {@term services}.",
                    "metadata":
                    {
                        "Component": {"versions": ["1.0", "1.1", "1.2"]}
                    }

                    ,
                    "enumerations":
                    [
                    ]

                    ,
                    "structures":
                    [
                    ]

                    ,
                    "services":
                    [
                        {
                            "name": "com.vmware.cis.session",
                            "documentation": "The {@name Session} {@term service} allows API clients to manage session tokens including creating, deleting and obtaining information about sessions. <p> <ul> <li>The {@link #create} {@term operation} creates session token in exchange for another authentication token.</li> <li>The {@link #delete} {@term operation} invalidates a session token.</li> <li>The {@link #get} retrieves information about a session token.</li> </ul> <p> The call to the {@link #create} {@term operation} is part of the overall authentication process for API clients. For example, the sequence of steps for establishing a session with SAML token is: <ul> <li>Connect to lookup service.</li> <li>Discover the secure token service (STS) endpoint URL.</li> <li>Connect to the secure token service to obtain a SAML token.</li> <li>Authenticate to the lookup service using the obtained SAML token.</li> <li>Discover the API endpoint URL from lookup service.</li> <li>Call the {@link #create} {@term operation}. The {@link #create} call must include the SAML token.</li> </ul> <p> See the programming guide and samples for additional information about establishing API sessions. <p> <b>Execution Context and Security Context</b> <p> To use session based authentication a client should supply the session token obtained through the {@link #create} {@term operation}. The client should add the session token in the security context when using SDK classes. Clients using the REST API should supply the session token as a HTTP header. <p> <b>Session Lifetime</b> <p> A session begins with call to the {@link #create} {@term operation} to exchange a SAML token for a API session token. A session ends under the following circumstances: <ul> <li>Call to the {@link #delete} {@term operation}.</li> <li>The session expires. Session expiration may be caused by one of the following situations: <ul> <li>Client inactivity - For a particular session identified by client requests that specify the associated session ID, the lapsed time since the last request exceeds the maximum interval between requests.</li> <li>Unconditional or absolute session expiration time: At the beginning of the session, the session logic uses the SAML token and the system configuration to calculate absolute expiration time.</li> </ul> </li> </ul> <p> When a session ends, the authentication logic will reject any subsequent client requests that specify that session. Any operations in progress will continue to completion. <p> <b>Error Handling</b> <p> The {@link Session} returns the following {@term errors}: <ul> <li>{@link Unauthenticated} {@term error} for any {@term errors} related to the request.</li> <li>{@link ServiceUnavailable} {@term error} for all {@term errors} caused by internal service failure.</li> </ul>",
                            "metadata":
                            {
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "structures":
                            [
                                {
                                    "name": "com.vmware.cis.session.info",
                                    "type": "Structure",
                                    "documentation": "Represents data associated with an API session.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "user",
                                            "documentation": "Fully qualified name of the end user that created the session, for example Administrator@vsphere.local. A typical use case for this information is in Graphical User Interfaces (GUI) or logging systems to visualize the identity of the current user.",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "created_time",
                                            "documentation": "Time when the session was created.",
                                            "type": {"category": "primitive", "primitive_type": "date_time"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "last_accessed_time",
                                            "documentation": "Last time this session was used by passing the session key for invoking an API.",
                                            "type": {"category": "primitive", "primitive_type": "date_time"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                            ]

                            ,
                            "operations":
                            [
                                 {
                                    "name": "create",
                                    "documentation": "Creates a session with the API. This is the equivalent of login. This {@term operation} exchanges user credentials supplied in the security context for a session identifier that is to be used for authenticating subsequent calls. To authenticate subsequent calls clients are expected to include the session key.",
                                    "params":
                                    [
                                    ],
                                    "result":
                                    {
                                        "documentation": "Newly created session identifier to be used for authenticating further requests.",
                                        "type": {"category": "primitive", "primitive_type": "secret"},
                                        "metadata":
                                        {
                                        }

                                    },
                                    "errors":
                                    [
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.unauthenticated",
                                            "documentation": "if the session creation fails due to request specific issues. Due to the security nature of the API the details of the error are not disclosed. <p> Please check the following preconditions if using a SAML token to authenticate: <ul> <li>the supplied token is delegate-able.</li> <li>the time of client and server system are synchronized.</li> <li>the token supplied is valid.</li> <li>if bearer tokens are used check that system configuration allows the API endpoint to accept such tokens.</li> </ul>"
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.service_unavailable",
                                            "documentation": "if session creation fails due to server specific issues, for example connection to a back end component is failing. Due to the security nature of this API further details will not be disclosed in the {@term error}. Please refer to component health information, administrative logs and product specific documentation for possible causes."
                                        }
                                    ],
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                 {
                                    "name": "delete",
                                    "documentation": "Terminates the validity of a session token. This is the equivalent of log out. <p> A session identifier is expected as part of the request. <p>",
                                    "params":
                                    [
                                    ],
                                    "result":
                                    {
                                        "documentation": "",
                                        "type": {"category": "primitive", "primitive_type": "void"},
                                        "metadata":
                                        {
                                        }

                                    },
                                    "errors":
                                    [
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.unauthenticated",
                                            "documentation": "if the session id is missing from the request or the corresponding session object cannot be found."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.service_unavailable",
                                            "documentation": "if session deletion fails due to server specific issues, for example connection to a back end component is failing. Due to the security nature of this API further details will not be disclosed in the {@term error}. Please refer to component health information, administrative logs and product specific documentation for possible causes."
                                        }
                                    ],
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                 {
                                    "name": "get",
                                    "documentation": "Returns information about the current session. This {@term operation} expects a valid session identifier to be supplied. <p> A side effect of invoking this {@term operation} may be a change to the session's last accessed time to the current time if this is supported by the session implementation. Invoking any other {@term operation} in the API will also update the session's last accessed time. <p> This API is meant to serve the needs of various front end projects that may want to display the name of the user. Examples of this include various web based user interfaces and logging facilities.",
                                    "params":
                                    [
                                    ],
                                    "result":
                                    {
                                        "documentation": "Information about the session.",
                                        "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.cis.session.info"},
                                        "metadata":
                                        {
                                        }

                                    },
                                    "errors":
                                    [
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.unauthenticated",
                                            "documentation": "if the session id is missing from the request or the corresponding session object cannot be found."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.service_unavailable",
                                            "documentation": "if session retrieval fails due to server specific issues e.g. connection to back end component is failing. Due to the security nature of this API further details will not be disclosed in the error. Please refer to component health information, administrative logs and product specific documentation for possible causes."
                                        }
                                    ],
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.cis.tasks",
                            "documentation": "The {@name Tasks} {@term service} provides {@term operations} for managing the task related to a long running operation.",
                            "metadata":
                            {
                                "Released": {"version": "1.2"}
                                ,
                                "Feature": {"value": "TASK_SERVICE"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                                {
                                    "name": "RESOURCE_TYPE",
                                    "documentation": "Resource type for task.",
                                    "type": {"category": "Primitive", "type": "String"},
                                    "value": "com.vmware.cis.task"
                                }
                            ]

                            ,
                            "structures":
                            [
                                {
                                    "name": "com.vmware.cis.tasks.get_spec",
                                    "type": "Structure",
                                    "documentation": "The {@name GetSpec} {@term structure} describes what data should be included when retrieving information about a task.",
                                    "metadata":
                                    {
                                        "Includable": {"value": "true"}
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "return_all",
                                            "documentation": "If true, all data, including operation-specific data, will be returned, otherwise only the data described in {@link Info} will be returned.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "exclude_result",
                                            "documentation": "If true, the result will not be included in the task information, otherwise it will be included.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.cis.tasks.filter_spec",
                                    "type": "Structure",
                                    "documentation": "The {@name FilterSpec} {@term structure} contains {@term fields} used to filter the results when listing tasks (see {@link #list}).  If multiple {@term fields} are specified, only tasks matching all of the {@term fields} match the filter.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "tasks",
                                            "documentation": "Identifiers of tasks that can match the filter.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "Set" ,"element_type": {"category": "primitive", "primitive_type": "ID"}}},
                                            "metadata":
                                            {
                                                "Resource": {"value": "com.vmware.cis.task"}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "services",
                                            "documentation": "Identifiers of services. Tasks created by operations in these services match the filter (see {@link CommonInfo#service}).",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "Set" ,"element_type": {"category": "primitive", "primitive_type": "ID"}}},
                                            "metadata":
                                            {
                                                "Resource": {"value": "com.vmware.vapi.service"}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "status",
                                            "documentation": "Status that a task must have to match the filter (see {@link CommonInfo#status}).",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "Set" ,"element_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.cis.task.status"}}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "targets",
                                            "documentation": "Identifiers of the targets the operation for the associated task created or was performed on (see {@link CommonInfo#target}).",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "List" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vapi.std.dynamic_ID"}}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "users",
                                            "documentation": "Users who must have initiated the operation for the associated task to match the filter (see {@link CommonInfo#user}).",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "Set" ,"element_type": {"category": "primitive", "primitive_type": "string"}}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                            ]

                            ,
                            "operations":
                            [
                                 {
                                    "name": "get",
                                    "documentation": "Returns information about a task.",
                                    "params":
                                    [
                                        {
                                            "name": "task",
                                            "documentation": "Task identifier.",
                                            "type": {"category": "primitive", "primitive_type": "ID"},
                                            "metadata":
                                            {
                                                "PathVariable": {"value": "task"}
                                                ,
                                                "Resource": {"value": "com.vmware.cis.task"}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "spec",
                                            "documentation": "Specification on what to get for a task.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.cis.tasks.get_spec"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "Information about the specified task.",
                                        "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.cis.task.info"},
                                        "metadata":
                                        {
                                        }

                                    },
                                    "errors":
                                    [
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.error",
                                            "documentation": "if the system reports an error while responding to the request."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.not_found",
                                            "documentation": "if the task is not found."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.resource_inaccessible",
                                            "documentation": "if the task's state cannot be accessed."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.service_unavailable",
                                            "documentation": "if the system is unable to communicate with a service to complete the request."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.unauthenticated",
                                            "documentation": "if the user can not be authenticated."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.unauthorized",
                                            "documentation": "if the user doesn't have the required privileges."
                                        }
                                    ],
                                    "metadata":
                                    {
                                        "RequestMapping": {"value": "/cis/tasks/{task}", "method": "GET"}
                                    }

                                }
                                ,
                                 {
                                    "name": "list",
                                    "documentation": "Returns information about at most 1000 visible (subject to permission checks) tasks matching the {@link FilterSpec}. All tasks must be in the same provider.",
                                    "params":
                                    [
                                        {
                                            "name": "filter_spec",
                                            "documentation": "Specification of matching tasks.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.cis.tasks.filter_spec"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "result_spec",
                                            "documentation": "Specification of what to return for a task.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.cis.tasks.get_spec"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "Map of task identifier to information about the task.",
                                        "type": {"category": "generic", "generic_type": "Map" ,"map_key_type": {"category": "primitive", "primitive_type": "ID"}, "map_value_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.cis.task.info"}},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.invalid_argument",
                                            "documentation": "if any of the specified parameters are invalid."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.resource_inaccessible",
                                            "documentation": "if a task's state cannot be accessed or over 1000 tasks matching the {@link FilterSpec}."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.service_unavailable",
                                            "documentation": "if the system is unable to communicate with a service to complete the request."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.unauthenticated",
                                            "documentation": "if the user can not be authenticated."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.unauthorized",
                                            "documentation": "if the user doesn't have the required privileges."
                                        }
                                    ],
                                    "metadata":
                                    {
                                        "RequestMapping": {"value": "/cis/tasks", "method": "GET"}
                                    }

                                }
                                ,
                                 {
                                    "name": "cancel",
                                    "documentation": "Cancel a running operation associated with the task. This is the best effort attempt. Operation may not be cancelled anymore once it reaches certain stage.",
                                    "params":
                                    [
                                        {
                                            "name": "task",
                                            "documentation": "Task identifier.",
                                            "type": {"category": "primitive", "primitive_type": "ID"},
                                            "metadata":
                                            {
                                                "PathVariable": {"value": "task"}
                                                ,
                                                "Resource": {"value": "com.vmware.cis.task"}
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "",
                                        "type": {"category": "primitive", "primitive_type": "void"},
                                        "metadata":
                                        {
                                        }

                                    },
                                    "errors":
                                    [
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.error",
                                            "documentation": "if the system reports an error while responding to the request."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.not_allowed_in_current_state",
                                            "documentation": "if the task is already canceled or completed."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.not_found",
                                            "documentation": "if the task is not found."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.resource_inaccessible",
                                            "documentation": "if the task's state cannot be accessed."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.service_unavailable",
                                            "documentation": "if the system is unable to communicate with a service to complete the request."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.unauthenticated",
                                            "documentation": "if the user can not be authenticated."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.unauthorized",
                                            "documentation": "if the user doesn't have the required privileges."
                                        }
                                        ,
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.unsupported",
                                            "documentation": "if the task is not cancelable."
                                        }
                                    ],
                                    "metadata":
                                    {
                                        "RequestMapping": {"value": "/cis/tasks/{task}", "params": "action=cancel", "method": "POST"}
                                    }

                                }
                            ]
                        }
                    ]
                }
                ,
                {
                    "name": "com.vmware.cis.task",
                    "documentation": "The {@name com.vmware.cis.task} {@term package} provides {@term enumerated types} and {@term structures} used for managing tasks.",
                    "metadata":
                    {
                    }

                    ,
                    "enumerations":
                    [
                        {
                            "name": "com.vmware.cis.task.status",
                            "documentation": "The {@name Status} {@term enumerated type} defines the status values that can be reported for an operation.",
                            "metadata":
                            {
                                "Feature": {"value": "TASK_STRUCTURES"}
                                ,
                                "Released": {"version": "1.1"}
                                ,
                                "Export": {"value": "true"}
                            }
                    ,
                            "values":
                            [
                                {
                                    "name": "PENDING",
                                    "documentation": "The operation is in pending state.",
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "RUNNING",
                                    "documentation": "The operation is in progress.",
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "BLOCKED",
                                    "documentation": "The operation is blocked.",
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "SUCCEEDED",
                                    "documentation": "The operation completed successfully.",
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "FAILED",
                                    "documentation": "The operation failed.",
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                    ]

                    ,
                    "structures":
                    [
                        {
                            "name": "com.vmware.cis.task.progress",
                            "type": "Structure",
                            "documentation": "The {@name Progress} {@term structure} contains information describe the progress of an operation.",
                            "metadata":
                            {
                                "Feature": {"value": "TASK_STRUCTURES"}
                                ,
                                "Released": {"version": "1.1"}
                                ,
                                "Export": {"value": "true"}
                                ,
                                "Includable": {"value": "true"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "total",
                                    "documentation": "Total amount of the work for the operation.",
                                    "type": {"category": "primitive", "primitive_type": "long"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "completed",
                                    "documentation": "The amount of work completed for the operation. The value can only be incremented.",
                                    "type": {"category": "primitive", "primitive_type": "long"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "message",
                                    "documentation": "Message about the work progress.",
                                    "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vapi.std.localizable_message"},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.cis.task.common_info",
                            "type": "Structure",
                            "documentation": "The {@name CommonInfo} {@term structure} contains information common to all tasks.",
                            "metadata":
                            {
                                "Feature": {"value": "TASK_STRUCTURES"}
                                ,
                                "Released": {"version": "1.1"}
                                ,
                                "Export": {"value": "true"}
                                ,
                                "Includable": {"value": "true"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "description",
                                    "documentation": "Description of the operation associated with the task.",
                                    "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vapi.std.localizable_message"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "service",
                                    "documentation": "Identifier of the service containing the operation.",
                                    "type": {"category": "primitive", "primitive_type": "ID"},
                                    "metadata":
                                    {
                                        "Resource": {"value": "com.vmware.vapi.service"}
                                    }

                                }
                                ,
                                {
                                    "name": "operation",
                                    "documentation": "Identifier of the operation associated with the task.",
                                    "type": {"category": "primitive", "primitive_type": "ID"},
                                    "metadata":
                                    {
                                        "Resource": {"value": "com.vmware.vapi.operation"}
                                    }

                                }
                                ,
                                {
                                    "name": "parent",
                                    "documentation": "Parent of the current task.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "ID"}},
                                    "metadata":
                                    {
                                        "Resource": {"value": "com.vmware.cis.task"}
                                    }

                                }
                                ,
                                {
                                    "name": "target",
                                    "documentation": "Identifier of the target created by the operation or an existing one the operation performed on.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vapi.std.dynamic_ID"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "status",
                                    "documentation": "Status of the operation associated with the task.",
                                    "type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.cis.task.status"},
                                    "metadata":
                                    {
                                        "UnionTag": {"value": "true"}
                                    }

                                }
                                ,
                                {
                                    "name": "cancelable",
                                    "documentation": "Flag to indicate whether or not the operation can be cancelled. The value may change as the operation progresses.",
                                    "type": {"category": "primitive", "primitive_type": "boolean"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "error",
                                    "documentation": "Description of the error if the operation status is \"FAILED\".",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "exception"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "status", "value": ["FAILED"]}
                                    }

                                }
                                ,
                                {
                                    "name": "start_time",
                                    "documentation": "Time when the operation is started.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "date_time"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "status", "value": ["RUNNING", "BLOCKED", "SUCCEEDED", "FAILED"]}
                                    }

                                }
                                ,
                                {
                                    "name": "end_time",
                                    "documentation": "Time when the operation is completed.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "date_time"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "status", "value": ["SUCCEEDED", "FAILED"]}
                                    }

                                }
                                ,
                                {
                                    "name": "user",
                                    "documentation": "Name of the user who performed the operation.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.cis.task.info",
                            "type": "Structure",
                            "documentation": "The {@name Info} {@term structure} contains information about a task.",
                            "metadata":
                            {
                                "Feature": {"value": "TASK_STRUCTURES"}
                                ,
                                "Released": {"version": "1.1"}
                                ,
                                "Export": {"value": "true"}
                                ,
                                "Include": {"value": "com.vmware.cis.task.common_info"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "progress",
                                    "documentation": "Progress of the operation.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.cis.task.progress"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "status", "value": ["RUNNING", "BLOCKED", "SUCCEEDED", "FAILED"]}
                                    }

                                }
                                ,
                                {
                                    "name": "result",
                                    "documentation": "Result of the operation. If an operation reports partial results before it completes, this {@term field} could be {@term set} before the {@link CommonInfo#status} has the value {@link Status#SUCCEEDED}. The value could change as the operation progresses.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "opaque"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "status", "value": ["RUNNING", "BLOCKED", "SUCCEEDED", "FAILED"]}
                                    }

                                }
                                ,
                                {
                                    "name": "description",
                                    "documentation": "Description of the operation associated with the task.",
                                    "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vapi.std.localizable_message"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "service",
                                    "documentation": "Identifier of the service containing the operation.",
                                    "type": {"category": "primitive", "primitive_type": "ID"},
                                    "metadata":
                                    {
                                        "Resource": {"value": "com.vmware.vapi.service"}
                                    }

                                }
                                ,
                                {
                                    "name": "operation",
                                    "documentation": "Identifier of the operation associated with the task.",
                                    "type": {"category": "primitive", "primitive_type": "ID"},
                                    "metadata":
                                    {
                                        "Resource": {"value": "com.vmware.vapi.operation"}
                                    }

                                }
                                ,
                                {
                                    "name": "parent",
                                    "documentation": "Parent of the current task.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "ID"}},
                                    "metadata":
                                    {
                                        "Resource": {"value": "com.vmware.cis.task"}
                                    }

                                }
                                ,
                                {
                                    "name": "target",
                                    "documentation": "Identifier of the target created by the operation or an existing one the operation performed on.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vapi.std.dynamic_ID"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "status",
                                    "documentation": "Status of the operation associated with the task.",
                                    "type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.cis.task.status"},
                                    "metadata":
                                    {
                                        "UnionTag": {"value": "true"}
                                    }

                                }
                                ,
                                {
                                    "name": "cancelable",
                                    "documentation": "Flag to indicate whether or not the operation can be cancelled. The value may change as the operation progresses.",
                                    "type": {"category": "primitive", "primitive_type": "boolean"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "error",
                                    "documentation": "Description of the error if the operation status is \"FAILED\".",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "exception"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "status", "value": ["FAILED"]}
                                    }

                                }
                                ,
                                {
                                    "name": "start_time",
                                    "documentation": "Time when the operation is started.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "date_time"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "status", "value": ["RUNNING", "BLOCKED", "SUCCEEDED", "FAILED"]}
                                    }

                                }
                                ,
                                {
                                    "name": "end_time",
                                    "documentation": "Time when the operation is completed.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "date_time"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "status", "value": ["SUCCEEDED", "FAILED"]}
                                    }

                                }
                                ,
                                {
                                    "name": "user",
                                    "documentation": "Name of the user who performed the operation.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                    ]

                    ,
                    "services":
                    [
                    ]
                }
                ,
                {
                    "name": "com.vmware.vcenter.lcm",
                    "documentation": "",
                    "metadata":
                    {
                        "Component": {"versions": ["6.7u1"]}
                    }

                    ,
                    "enumerations":
                    [
                        {
                            "name": "com.vmware.vcenter.lcm.appliance_size",
                            "documentation": "The size of appliance to be deployed.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }
                    ,
                            "values":
                            [
                                {
                                    "name": "TINY",
                                    "documentation": "Appliance size of 'tiny', Default vCPUs: 2, Memory: 8GB, VM: 100, Hosts: 10",
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "SMALL",
                                    "documentation": "Appliance size of 'small', Default vCPUs: 4, Memory: 16GB, VM: 1000, Hosts: 100",
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "MEDIUM",
                                    "documentation": "Appliance size of 'medium', Default vCPUs: 8, Memory: 24GB, VM: 4000, Hosts: 400",
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "LARGE",
                                    "documentation": "Appliance size of 'large', Default vCPUs: 16, Memory: 32GB, VM: 10000, Hosts: 1000",
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "XLARGE",
                                    "documentation": "Appliance size of 'extra large', Default vCPUs: 24, Memory: 48GB, VM: 35000, Hosts: 2000",
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.appliance_type",
                            "documentation": "The type of appliance to be deployed.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }
                    ,
                            "values":
                            [
                                {
                                    "name": "VCSA_EXTERNAL",
                                    "documentation": "Management node.",
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "VCSA_EMBEDDED",
                                    "documentation": "Embedded node.",
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "PSC",
                                    "documentation": "Infrastructure node.",
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "VMC",
                                    "documentation": "VMC node.",
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.storage_size",
                            "documentation": "The storage size of the appliance to be deployed.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }
                    ,
                            "values":
                            [
                                {
                                    "name": "LARGE",
                                    "documentation": "Large storage",
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "XLARGE",
                                    "documentation": "Extra large storage",
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "REGULAR",
                                    "documentation": "Regular storage",
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                    ]

                    ,
                    "structures":
                    [
                        {
                            "name": "com.vmware.vcenter.lcm.ceip_only_sso",
                            "type": "Structure",
                            "documentation": "The SSO definition that only contains CEIP setting.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "ceip_enabled",
                                    "documentation": "This key describes the enabling option for the VMware's Customer Experience Improvement Program (CEIP). By default we have {@name #ceipEnabled}: true, which indicates that you are joining CEIP. If you prefer not to participate in the VMware's CEIP for this product, you must disable CEIP by setting {@name #ceipEnabled}: false. You may join or leave VMware's CEIP for this product at any time.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.connection",
                            "type": "Structure",
                            "documentation": "Connection information for source/destination location.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "hostname",
                                    "documentation": "The IP address or DNS resolvable name of the ESX/VC host. If a DNS resolvable name is provided, it must be resolvable from the machine that is running the installer.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "username",
                                    "documentation": "A username with administrative privileges on the ESX/VC host.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "password",
                                    "documentation": "The password of the 'username' on the ESX/VC host.",
                                    "type": {"category": "primitive", "primitive_type": "secret"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "https_port",
                                    "documentation": "The port number for the ESX/VC.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "long"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "ssl_verify",
                                    "documentation": "A flag to indicate whether the ssl verification is required.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "ssl_thumbprint",
                                    "documentation": "Thumbprint for SSL verification.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.deployment_info",
                            "type": "Structure",
                            "documentation": "Information about the appliance deployed.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "appliance_name",
                                    "documentation": "The name of the appliance.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "appliance_fqdn",
                                    "documentation": "The FQDN of the appliance.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "appliance_ips",
                                    "documentation": "The ip addresses of the appliance.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "List" ,"element_type": {"category": "primitive", "primitive_type": "string"}}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.deployment_option",
                            "type": "Structure",
                            "documentation": "Container to control deployment.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                                {
                                    "name": "com.vmware.vcenter.lcm.deployment_option.skip_options",
                                    "documentation": "Skippable tasks.",
                                    "metadata":
                                    {
                                    }
                            ,
                                    "values":
                                    [
                                        {
                                            "name": "SKIP_SSO_CHECK",
                                            "documentation": "Skips the sso check. This should only be used when performing precheck for install/upgrade of management node before infrastructure node is deployed.",
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "skip_options",
                                    "documentation": "The options control if a task should be skipped.",
                                    "type": {"category": "generic", "generic_type": "Map" ,"map_key_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.deployment_option.skip_options"}, "map_value_type": {"category": "primitive", "primitive_type": "boolean"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.destination_location",
                            "type": "Structure",
                            "documentation": "Configuration of destination location.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "esx",
                                    "documentation": "This section describes the ESX host on which to deploy the appliance. Required if you are deploying the appliance directly on an ESX host.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.esx"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "vcenter",
                                    "documentation": "This subsection describes the vCenter on which to deploy the appliance.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.vc"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.embedded_replicated_vcsa",
                            "type": "Structure",
                            "documentation": "Configuration of the replicated Single Sign-On for Embedded type deployment.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "sso_admin_password",
                                    "documentation": "Administrator password of the existing Single Sign-On to be replicated.",
                                    "type": {"category": "primitive", "primitive_type": "secret"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "sso_domain_name",
                                    "documentation": "Domain name for the remote appliance which is being replicated. For example, 'vsphere.local'",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "partner_hostname",
                                    "documentation": "The IP address or DNS resolvable name for the remote appliance.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "ssl_verify",
                                    "documentation": "A flag to indicate whether the ssl verification is required.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "ssl_thumbprint",
                                    "documentation": "SHA1 thumbprint of the server SSL certificate which will be used for verification.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "https_port",
                                    "documentation": "The HTTPS port of the external PSC appliance.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "long"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.embedded_standalone_vcsa",
                            "type": "Structure",
                            "documentation": "Configuration of the standalone Single Sign-On for Embedded type deployment.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "sso_admin_password",
                                    "documentation": "Password must conform to the following requirements: 1. At least 8 characters. 2. No more than 20 characters. 3. At least 1 uppercase character. 4. At least 1 lowercase character. 5. At least 1 number. 6. At least 1 special character (e.g., '!', '(', '@', etc.). 7. Only visible A-Z, a-z, 0-9 and punctuation (spaces are not allowed)",
                                    "type": {"category": "primitive", "primitive_type": "secret"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "sso_domain_name",
                                    "documentation": "The Single Sign-On domain name to be used to configure this vCenter Server Appliance. For example, 'vsphere.local'",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.esx",
                            "type": "Structure",
                            "documentation": "Configuration of ESX.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "connection",
                                    "documentation": "The configuration to connect to an ESX/VC.",
                                    "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "inventory",
                                    "documentation": "The configuration of ESX inventory.",
                                    "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.esx_inventory"},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.esx_inventory",
                            "type": "Structure",
                            "documentation": "Configuration of ESX's inventory.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "datastore_name",
                                    "documentation": "The datastore on which to store the files of the appliance. This value has to be either a specific datastore name, or a specific datastore in a datastore cluster. The datastore must be accessible from the ESX host and must have at least 25 GB of free space. Otherwise, the new appliance might not power on.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "network_name",
                                    "documentation": "The network of the ESX host to which the new appliance should connect. Omit this parameter if the ESX host has one network.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "resource_pool_path",
                                    "documentation": "The path to the resource pool on the ESX host in which the appliance will be deployed.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.existing_migration_assistant",
                            "type": "Structure",
                            "documentation": "Configuration of the migration assistant that is already running on the source Windows VC.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                                ,
                                "Export": {"value": "true"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "ssl_thumbprint",
                                    "documentation": "The SSL thumbprint of Migration Assistant.  The SSL thumbprint can be retrieved from the Migration Assistant console and log file.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "https_port",
                                    "documentation": "Migration Assistant port number shown in the Migration Assistant console and log file. The default port is 9123.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "long"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.external_tool",
                            "type": "Structure",
                            "documentation": "Configuration of the external tools used.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "name",
                                    "documentation": "The name of the external tool",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "hostname",
                                    "documentation": "The host name of the external tool.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "location",
                                    "documentation": "The location of the external tool.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.external_vcsa",
                            "type": "Structure",
                            "documentation": "Configuration of the Single Sign-On for Management type deployment.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "sso_admin_password",
                                    "documentation": "Administrator password of the external PSC to register with.",
                                    "type": {"category": "primitive", "primitive_type": "secret"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "sso_domain_name",
                                    "documentation": "Domain name of the external PSC. For example, 'vsphere.local'",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "psc_hostname",
                                    "documentation": "The IP address or DNS resolvable name of the remote PSC to which this configuring vCenter Server will be registered.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "ssl_verify",
                                    "documentation": "A flag to indicate whether the SSL verification is required",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "ssl_thumbprint",
                                    "documentation": "SHA1 thumbprint of the server SSL certificate which will be used for verification.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "https_port",
                                    "documentation": "The HTTPS port of the external PSC appliance.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "long"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.guest_credential",
                            "type": "Structure",
                            "documentation": "Configuration of the guest credential.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "os_username",
                                    "documentation": "Administrator username for the source Windows operating system.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "os_password",
                                    "documentation": "Administrator user password for the source Windows operating system.",
                                    "type": {"category": "primitive", "primitive_type": "secret"},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.history",
                            "type": "Structure",
                            "documentation": "Configuration of the data to be exported during upgrade/migrate.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                                {
                                    "name": "com.vmware.vcenter.lcm.history.data_set_type",
                                    "documentation": "The type of data to be upgraded/migrated.",
                                    "metadata":
                                    {
                                    }
                            ,
                                    "values":
                                    [
                                        {
                                            "name": "EVENTS_TASKS",
                                            "documentation": "event data and task data.",
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "NONE",
                                            "documentation": "core only.",
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ALL",
                                            "documentation": "core, event and task data.",
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "defer_import",
                                    "documentation": "A flag to indicate whether the import of historical data should be deferred until after upgrade/migrate.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "data_set",
                                    "documentation": "The type of data to be upgraded/migrated.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.history.data_set_type"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.migration_assistant",
                            "type": "Structure",
                            "documentation": "Configuration of the migration assistant to be uploaded and started on source Windows VC.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "source_location",
                                    "documentation": "The configuration to connect to an ESX/VC.",
                                    "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "settings",
                                    "documentation": "Spec to automatically launch the Migration Assistant.",
                                    "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.migration_assistant_setting"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "guest_credentials",
                                    "documentation": "Credentials for the Windows system on which the vCenter server is running.",
                                    "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.guest_credential"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "migration_assistant_installer_location",
                                    "documentation": "Installer location of the migration assistant to be uploaded.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "migration_assistant_installer_location_ssl_verify",
                                    "documentation": "A flag to indicate whether to verify ssl connection.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "migration_assistant_installer_location_ssl_thumbprint",
                                    "documentation": "SSL thumbprint of the source appliance.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.migration_assistant_setting",
                            "type": "Structure",
                            "documentation": "Configuration of the setting of migration assistant to be uploaded and started on source Windows VC.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "migrated_ip",
                                    "documentation": "The IP address of the network adapter that will be migrated. Only required if the Windows vCenter Server has multiple network adapters, making its system name resolve to multiple IP addresses.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "https_port",
                                    "documentation": "Migration Assistant port number shown in the Migration Assistant console. The default port is 9123",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "long"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "export_dir",
                                    "documentation": "Directory to export source configuration and data. Optional.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "service_account_password",
                                    "documentation": "The password of the vCenter Server service account. Required only if the vCenter Server service is running under a non LocalSystem account.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "secret"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.network",
                            "type": "Structure",
                            "documentation": "Network configuration of the appliance to be deployed.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                                ,
                                "Include": {"value": "com.vmware.vcenter.lcm.temporary_network"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "hostname",
                                    "documentation": "Primary network identity. Can be either an IP address or a fully qualified domain name(FQDN).",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "mode", "value": ["STATIC"]}
                                    }

                                }
                                ,
                                {
                                    "name": "ip_family",
                                    "documentation": "Network IP address family.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.temporary_network.ip_type"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "mode",
                                    "documentation": "Network mode.",
                                    "type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.temporary_network.network_mode"},
                                    "metadata":
                                    {
                                        "UnionTag": {"value": "true"}
                                    }

                                }
                                ,
                                {
                                    "name": "ip",
                                    "documentation": "Network IP address. Required for static mode only.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "mode", "value": ["STATIC"]}
                                    }

                                }
                                ,
                                {
                                    "name": "dns_servers",
                                    "documentation": "A comma-separated list of IP addresses of DNS servers. A JSON array such as [\"1.2.3.4\", \"127.0.0.1\"]. Required for static mode only. DNS servers must be reachable from the machine that runs CLI installer",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "List" ,"element_type": {"category": "primitive", "primitive_type": "string"}}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "mode", "value": ["STATIC"]}
                                    }

                                }
                                ,
                                {
                                    "name": "prefix",
                                    "documentation": "Network prefix length. Required for static mode only. Remove if the mode is \"dhcp\". This is the number of bits set in the subnet mask; for instance, if the subnet mask is 255.255.255.0, there are 24 bits in the binary version of the subnet mask, so the prefix length is 24. If used, the values must be in the inclusive range of 0 to 32 for IPv4 and 0 to 128 for IPv6. Required for static mode only.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "long"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "mode", "value": ["STATIC"]}
                                    }

                                }
                                ,
                                {
                                    "name": "gateway",
                                    "documentation": "Gateway of the network. Required for static mode only.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "mode", "value": ["STATIC"]}
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.notification",
                            "type": "Structure",
                            "documentation": "Notification messages of a single task.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "id",
                                    "documentation": "The identifier of the message.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "time",
                                    "documentation": "The time the notification was raised/found.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "date_time"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "message",
                                    "documentation": "The notification message.",
                                    "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vapi.std.localizable_message"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "resolution",
                                    "documentation": "The resolution message, if any.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vapi.std.localizable_message"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.psc_replicated",
                            "type": "Structure",
                            "documentation": "Configuration of the replicated Single Sign-On for PSC type deployment.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "sso_admin_password",
                                    "documentation": "Administrator password of the PSC to be replicated.",
                                    "type": {"category": "primitive", "primitive_type": "secret"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "sso_domain_name",
                                    "documentation": "Domain name of the remote PSC. For example, 'vsphere.local'",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "partner_hostname",
                                    "documentation": "The IP address or DNS resolvable name of the remote PSC.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "ssl_verify",
                                    "documentation": "A flag to indicate whether the SSL verification is required.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "ssl_thumbprint",
                                    "documentation": "SHA1 thumbprint of the server SSL certificate which will be used for verification.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "https_port",
                                    "documentation": "The HTTPS port of the remote PSC.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "long"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "sso_site_name",
                                    "documentation": "Site name of the newly deployed PSC.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.psc_standalone",
                            "type": "Structure",
                            "documentation": "Configuration of the standalone Single Sign-On for Embedded type deployment.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "sso_admin_password",
                                    "documentation": "Password must conform to the following requirements: 1. At least 8 characters. 2. No more than 20 characters. 3. At least 1 uppercase character. 4. At least 1 lowercase character. 5. At least 1 number. 6. At least 1 special character (e.g., '!', '(', '@', etc.). 7. Only visible A-Z, a-z, 0-9 and punctuation (spaces are not allowed)",
                                    "type": {"category": "primitive", "primitive_type": "secret"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "sso_domain_name",
                                    "documentation": "Domain name of the newly deployed PSC. For example, 'vsphere.local'",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "sso_site_name",
                                    "documentation": "Site name of the PSC.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.result",
                            "type": "Structure",
                            "documentation": "Container of info, warning and error messages associated with a single task.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "info",
                                    "documentation": "Info notification messages reported.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "List" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.notification"}}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "warnings",
                                    "documentation": "Warning notification messages reported.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "List" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.notification"}}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "errors",
                                    "documentation": "Error notification messages reported.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "List" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.notification"}}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.source_vc_windows",
                            "type": "Structure",
                            "documentation": "Configuration of the source Windows VC.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "hostname",
                                    "documentation": "The IP address or FQDN of the source Windows vCenter server to migrate. If an FQDN is provided, it must be resolvable from the machine that is running the installer.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "username",
                                    "documentation": "Single Sign-On administrator user on the source Windows vCenter server. For example, administrator@vsphere.local. Important: The user must be administrator@your_domain_name.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "password",
                                    "documentation": "The password of the Single Sign-On administrator on the source Windows vCenter server.",
                                    "type": {"category": "primitive", "primitive_type": "secret"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "ssl_verify",
                                    "documentation": "",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "ssl_thumbprint",
                                    "documentation": "",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.source_vum",
                            "type": "Structure",
                            "documentation": "Configuration of the source VUM.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "hostname",
                                    "documentation": "IP address or fully qualified domain name (FQDN) of the vSphere Update Manager host. If an FQDN is provided, it has to be resolvable from the machine that is running the installer.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "os_username",
                                    "documentation": "Administrator username for the source vSphere Update Manager Windows operating system.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "os_password",
                                    "documentation": "Administrator user password for the source vSphere Update Manager Windows operating system.",
                                    "type": {"category": "primitive", "primitive_type": "secret"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "export_dir",
                                    "documentation": "Directory to export source configuration and data.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "port",
                                    "documentation": "The port of the source vum.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "long"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "start_migration_assistant",
                                    "documentation": "Configuration of migration assistant to be deployed to the vSphere Upgrade Manager.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.source_vum_migration_assistant"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "existing_migration_assistant",
                                    "documentation": "Configuration of migration assistant that are already running on the vSphere Upgrade Manager.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.existing_migration_assistant"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.source_vum_migration_assistant",
                            "type": "Structure",
                            "documentation": "Configuration of migration assistant to be deployed to the vSphere Upgrade Manager.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "installer_location",
                                    "documentation": "Location of the installer of migration assistant to be uploaded to the source vSphere Update Manager.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "installer_location_ssl_verify",
                                    "documentation": "A flag to indicate whether to verify ssl connection of the location of the installer of migration assistant.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "installer_location_ssl_thumbprint",
                                    "documentation": "SSL thumbprint of the location of the installer of migration assistant.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.ssh",
                            "type": "Structure",
                            "documentation": "Setting to enable SSH on the deployed appliance.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "enabled",
                                    "documentation": "Whether to enable SSH.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.sub_task_info",
                            "type": "Structure",
                            "documentation": "Container that contains the status information about a single task.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                                ,
                                "Include": {"value": "com.vmware.cis.task.common_info"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "progress",
                                    "documentation": "The progress info of this deployment task.",
                                    "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.cis.task.progress"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "last_updated_time",
                                    "documentation": "The time that the last update is registered.",
                                    "type": {"category": "primitive", "primitive_type": "date_time"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "result",
                                    "documentation": "Result of the task.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.result"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "external_tools",
                                    "documentation": "External tools used for the deployment.",
                                    "type": {"category": "generic", "generic_type": "List" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.external_tool"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "description",
                                    "documentation": "Description of the operation associated with the task.",
                                    "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vapi.std.localizable_message"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "service",
                                    "documentation": "Identifier of the service containing the operation.",
                                    "type": {"category": "primitive", "primitive_type": "ID"},
                                    "metadata":
                                    {
                                        "Resource": {"value": "com.vmware.vapi.service"}
                                    }

                                }
                                ,
                                {
                                    "name": "operation",
                                    "documentation": "Identifier of the operation associated with the task.",
                                    "type": {"category": "primitive", "primitive_type": "ID"},
                                    "metadata":
                                    {
                                        "Resource": {"value": "com.vmware.vapi.operation"}
                                    }

                                }
                                ,
                                {
                                    "name": "parent",
                                    "documentation": "Parent of the current task.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "ID"}},
                                    "metadata":
                                    {
                                        "Resource": {"value": "com.vmware.cis.task"}
                                    }

                                }
                                ,
                                {
                                    "name": "target",
                                    "documentation": "Identifier of the target created by the operation or an existing one the operation performed on.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vapi.std.dynamic_ID"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "status",
                                    "documentation": "Status of the operation associated with the task.",
                                    "type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.cis.task.status"},
                                    "metadata":
                                    {
                                        "UnionTag": {"value": "true"}
                                    }

                                }
                                ,
                                {
                                    "name": "cancelable",
                                    "documentation": "Flag to indicate whether or not the operation can be cancelled. The value may change as the operation progresses.",
                                    "type": {"category": "primitive", "primitive_type": "boolean"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "error",
                                    "documentation": "Description of the error if the operation status is \"FAILED\".",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "exception"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "status", "value": ["FAILED"]}
                                    }

                                }
                                ,
                                {
                                    "name": "start_time",
                                    "documentation": "Time when the operation is started.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "date_time"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "status", "value": ["RUNNING", "BLOCKED", "SUCCEEDED", "FAILED"]}
                                    }

                                }
                                ,
                                {
                                    "name": "end_time",
                                    "documentation": "Time when the operation is completed.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "date_time"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "status", "value": ["SUCCEEDED", "FAILED"]}
                                    }

                                }
                                ,
                                {
                                    "name": "user",
                                    "documentation": "Name of the user who performed the operation.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.task_info",
                            "type": "Structure",
                            "documentation": "The container that contains the status information of a deployment.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                                ,
                                "Include": {"value": "com.vmware.cis.task.common_info"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "metadata_file",
                                    "documentation": "The path of the metadata file.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "state",
                                    "documentation": "The state of appliance being deployed.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "progress",
                                    "documentation": "The total progress of the deployment operation.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.cis.task.progress"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "status", "value": ["RUNNING", "FAILED", "SUCCEEDED", "BLOCKED"]}
                                    }

                                }
                                ,
                                {
                                    "name": "last_updated_time",
                                    "documentation": "The time that the last update is registered.",
                                    "type": {"category": "primitive", "primitive_type": "date_time"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "subtask_order",
                                    "documentation": "The ordered list of subtasks for this deployment operation.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "List" ,"element_type": {"category": "generic", "generic_type": "List" ,"element_type": {"category": "primitive", "primitive_type": "string"}}}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "subtasks",
                                    "documentation": "The map of the deployment subtasks and their status information.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "Map" ,"map_key_type": {"category": "primitive", "primitive_type": "string"}, "map_value_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.sub_task_info"}}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "appliance_info",
                                    "documentation": "Information about the appliance deployed.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.deployment_info"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "result",
                                    "documentation": "The result of validation or recommendation requests.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "opaque"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "additional_info",
                                    "documentation": "Additional information that a response may contain.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "description",
                                    "documentation": "Description of the operation associated with the task.",
                                    "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vapi.std.localizable_message"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "service",
                                    "documentation": "Identifier of the service containing the operation.",
                                    "type": {"category": "primitive", "primitive_type": "ID"},
                                    "metadata":
                                    {
                                        "Resource": {"value": "com.vmware.vapi.service"}
                                    }

                                }
                                ,
                                {
                                    "name": "operation",
                                    "documentation": "Identifier of the operation associated with the task.",
                                    "type": {"category": "primitive", "primitive_type": "ID"},
                                    "metadata":
                                    {
                                        "Resource": {"value": "com.vmware.vapi.operation"}
                                    }

                                }
                                ,
                                {
                                    "name": "parent",
                                    "documentation": "Parent of the current task.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "ID"}},
                                    "metadata":
                                    {
                                        "Resource": {"value": "com.vmware.cis.task"}
                                    }

                                }
                                ,
                                {
                                    "name": "target",
                                    "documentation": "Identifier of the target created by the operation or an existing one the operation performed on.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vapi.std.dynamic_ID"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "status",
                                    "documentation": "Status of the operation associated with the task.",
                                    "type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.cis.task.status"},
                                    "metadata":
                                    {
                                        "UnionTag": {"value": "true"}
                                    }

                                }
                                ,
                                {
                                    "name": "cancelable",
                                    "documentation": "Flag to indicate whether or not the operation can be cancelled. The value may change as the operation progresses.",
                                    "type": {"category": "primitive", "primitive_type": "boolean"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "error",
                                    "documentation": "Description of the error if the operation status is \"FAILED\".",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "exception"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "status", "value": ["FAILED"]}
                                    }

                                }
                                ,
                                {
                                    "name": "start_time",
                                    "documentation": "Time when the operation is started.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "date_time"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "status", "value": ["RUNNING", "BLOCKED", "SUCCEEDED", "FAILED"]}
                                    }

                                }
                                ,
                                {
                                    "name": "end_time",
                                    "documentation": "Time when the operation is completed.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "date_time"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "status", "value": ["SUCCEEDED", "FAILED"]}
                                    }

                                }
                                ,
                                {
                                    "name": "user",
                                    "documentation": "Name of the user who performed the operation.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.temporary_network",
                            "type": "Structure",
                            "documentation": "Configuration of the temporary network which is used during upgrade/migrate.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                                ,
                                "Includable": {"value": "true"}
                            }

                            ,
                            "enumerations":
                            [
                                {
                                    "name": "com.vmware.vcenter.lcm.temporary_network.ip_type",
                                    "documentation": "Network IP address family.",
                                    "metadata":
                                    {
                                    }
                            ,
                                    "values":
                                    [
                                        {
                                            "name": "IPV4",
                                            "documentation": "IPv4 Type of IP address.",
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "IPV6",
                                            "documentation": "IPv6 Type of IP address.",
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.temporary_network.network_mode",
                                    "documentation": "Network mode.",
                                    "metadata":
                                    {
                                    }
                            ,
                                    "values":
                                    [
                                        {
                                            "name": "DHCP",
                                            "documentation": "DHCP mode.",
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "STATIC",
                                            "documentation": "Static IP mode.",
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "ip_family",
                                    "documentation": "Network IP address family.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.temporary_network.ip_type"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "mode",
                                    "documentation": "Network mode.",
                                    "type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.temporary_network.network_mode"},
                                    "metadata":
                                    {
                                        "UnionTag": {"value": "true"}
                                    }

                                }
                                ,
                                {
                                    "name": "ip",
                                    "documentation": "Network IP address. Required for static mode only.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "mode", "value": ["STATIC"]}
                                    }

                                }
                                ,
                                {
                                    "name": "dns_servers",
                                    "documentation": "A comma-separated list of IP addresses of DNS servers. A JSON array such as [\"1.2.3.4\", \"127.0.0.1\"]. Required for static mode only. DNS servers must be reachable from the machine that runs CLI installer",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "List" ,"element_type": {"category": "primitive", "primitive_type": "string"}}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "mode", "value": ["STATIC"]}
                                    }

                                }
                                ,
                                {
                                    "name": "prefix",
                                    "documentation": "Network prefix length. Required for static mode only. Remove if the mode is \"dhcp\". This is the number of bits set in the subnet mask; for instance, if the subnet mask is 255.255.255.0, there are 24 bits in the binary version of the subnet mask, so the prefix length is 24. If used, the values must be in the inclusive range of 0 to 32 for IPv4 and 0 to 128 for IPv6. Required for static mode only.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "long"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "mode", "value": ["STATIC"]}
                                    }

                                }
                                ,
                                {
                                    "name": "gateway",
                                    "documentation": "Gateway of the network. Required for static mode only.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                        "UnionCase": {"tag": "mode", "value": ["STATIC"]}
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.time",
                            "type": "Structure",
                            "documentation": "NTP setting of the appliance to be deployed.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "ntp_servers",
                                    "documentation": "To configure NTP time synchronization for the appliance, set the value to a comma - separated list of host names or IP addresses of Network Time Protocol(NTP) servers. If \"ntp_servers\" is not provided, the appliance clock will be synced to the ESX. For example: [\"time.nist.gov\"].",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "List" ,"element_type": {"category": "primitive", "primitive_type": "string"}}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.upgrade_destination_appliance_service",
                            "type": "Structure",
                            "documentation": "Configurable services of destination appliance for upgrade/migrate operation.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "ssh",
                                    "documentation": "Whether to enable SSH on the vCenter Appliance.",
                                    "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.ssh"},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.upgrade_source_appliance",
                            "type": "Structure",
                            "documentation": "Configuration of the source appliance to be upgraded/migrated.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "hostname",
                                    "documentation": "The IP address or fully qualified domain name (FQDN) of the vCenter Server instance. If an FQDN is provided, it has to be resolvable from the machine that is running the installer.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "sso_admin_username",
                                    "documentation": "vCenter Single Sign-On administrator user name of the source appliance.",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "sso_admin_password",
                                    "documentation": "vCenter Single Sign-On administrator password of the source appliance.",
                                    "type": {"category": "primitive", "primitive_type": "secret"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "root_password",
                                    "documentation": "Password of the operating system root user of the appliance.",
                                    "type": {"category": "primitive", "primitive_type": "secret"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "https_port",
                                    "documentation": "The HTTPS port number to connect to the source appliance.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "long"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "ssl_verify",
                                    "documentation": "",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "ssl_thumbprint",
                                    "documentation": "",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "export_dir",
                                    "documentation": "Export directory of the source appliance.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.vc",
                            "type": "Structure",
                            "documentation": "Configuration of the VC that hosts/will host an appliance.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "connection",
                                    "documentation": "The configuration to connect to an ESX/VC.",
                                    "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "inventory",
                                    "documentation": "All names are case-sensitive. you can install the appliance to one of the following destinations: 1. A resource pool in a cluster, use 'cluster_path'. 2. A specific ESX host in a cluster, use 'host_path'. 3. A resource pool in a specific ESX host being managed by the current vCenter, use 'resource_pool_path'. You must always provide the 'network_name' key. To install a new appliance to a specific ESX host in a cluster, provide the 'host_path' key, and the 'datastore_name', e.g. 'host_path': '/MyDataCenter/host/MyCluster/10.20.30.40', 'datastore_name': 'Your Datastore'. To install a new appliance to a specific resource pool, provide the 'resource_pool_path', and the 'datastore_name', e.g. 'resource_pool_path': '/Your Datacenter Folder/Your Datacenter/host/Your Cluster/Resources/Your Resource Pool', 'datastore_name': 'Your Datastore'. To place a new appliance to a virtual machine Folder, provide the 'vm_folder_path', e.g. 'vm_folder_path': 'VM Folder 0/VM Folder1'.",
                                    "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.vc_inventory"},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.vc_inventory",
                            "type": "Structure",
                            "documentation": "Inventory information about a VCenter.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "fields":
                            [

                                {
                                    "name": "vm_folder_path",
                                    "documentation": "Path of the VM folder. VM folder must be visible by the Data Center of the compute resourceFormat:{vm_folder1}/{vm_folder2}e.g.:'VM Folder 0/VM Folder1'.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "resource_pool_path",
                                    "documentation": "Full path to resource pool. Format: /{datacenter folder}/{datacenter name}/host/{host name}/{cluster_name}/Resources/{resource pool}. e.g: Your Datacenter Folder/Your Datacenter/host/Your Cluster/Resources/Your Resource Pool",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "cluster_path",
                                    "documentation": "Full path to the cluster. Format: /{datacenter folder}/{datacenter name}/host/{cluster_name}. e.g: /Your Datacenter Folder/Your Datacenter/host/Your Cluster",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "host_path",
                                    "documentation": "",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "datastore_name",
                                    "documentation": "The datastore on which to store the files of the appliance. This value has to be either a specific datastore name, or a specific datastore in a datastore cluster. The datastore must be accessible from the ESX host and must have at least 25 GB of free space. Otherwise, the new appliance might not power on.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "datastore_cluster_name",
                                    "documentation": "The datastore cluster on which to store the files of the appliance.",
                                    "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                    "metadata":
                                    {
                                    }

                                }
                                ,
                                {
                                    "name": "network_name",
                                    "documentation": "Name of the network. e.g. VM Network",
                                    "type": {"category": "primitive", "primitive_type": "string"},
                                    "metadata":
                                    {
                                    }

                                }
                            ]
                        }
                    ]

                    ,
                    "services":
                    [
                        {
                            "name": "com.vmware.vcenter.lcm.install",
                            "documentation": "The service to install Embedded VCSA, PSC, Management VCSA, VMC gateway.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "structures":
                            [
                                {
                                    "name": "com.vmware.vcenter.lcm.install.psc",
                                    "type": "Structure",
                                    "documentation": "Spec used to configure a Platform Services Controller. This section describes how the Platform Services Controller appliance should be configured.  If unset, either {@name #vcsaEmbedded} or {@name #vcsaExternal} must be provided.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "standalone",
                                            "documentation": "Spec used to configure a standalone Platform Services Controller. This section describes how the standalone PSC should be configured.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.psc_standalone"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "replicated",
                                            "documentation": "Spec used to configure a replicated Platform Services Controller. This section describes how the replicated PSC should be configured.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.psc_replicated"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ceip_enabled",
                                            "documentation": "This key describes the enabling option for the VMware's Customer Experience Improvement Program (CEIP). By default we have {@name #ceipEnabled}: true, which indicates that you are joining CEIP. If you prefer not to participate in the VMware's CEIP for this product, you must disable CEIP by setting {@name #ceipEnabled}: false. You may join or leave VMware's CEIP for this product at any time.",
                                            "type": {"category": "primitive", "primitive_type": "boolean"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.install.vcsa_embedded",
                                    "type": "Structure",
                                    "documentation": "Spec used to configure an embedded vCenter Server. This field describes how the embedded vCenter Server appliance should be configured.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "standalone",
                                            "documentation": "Spec used to configure a standalone embedded vCenter Server. This field describes how the standalone vCenter Server appliance should be configured.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.embedded_standalone_vcsa"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "replicated",
                                            "documentation": "Spec used to configure a replicated embedded vCenter Server. This field describes how the replicated vCenter Server appliance should be configured.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.embedded_replicated_vcsa"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ceip_enabled",
                                            "documentation": "This key describes the enabling option for the VMware's Customer Experience Improvement Program (CEIP). By default we have {@name #ceipEnabled}: true, which indicates that you are joining CEIP. If you prefer not to participate in the VMware's CEIP for this product, you must disable CEIP by setting {@name #ceipEnabled}: false. You may join or leave VMware's CEIP for this product at any time.",
                                            "type": {"category": "primitive", "primitive_type": "boolean"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.install.reverse_proxy",
                                    "type": "Structure",
                                    "documentation": "Port numbers on which the vCenter Server Appliance communicates with the other vSphere components.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "http_port",
                                            "documentation": "Reverse proxy http port.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "long"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "https_port",
                                            "documentation": "Reverse proxy https port.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "long"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.install.destination_appliance_service",
                                    "type": "Structure",
                                    "documentation": "The configuration of vCenter services.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "rhttpproxy",
                                            "documentation": "Port numbers on which the vCenter Server Appliance communicates with the other vSphere components.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.install.reverse_proxy"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ssh",
                                            "documentation": "Whether to enable SSH on the vCenter Appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.ssh"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.install.destination_appliance",
                                    "type": "Structure",
                                    "documentation": "Spec to describe the new appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "appliance_name",
                                            "documentation": "The name of the appliance to deploy.",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "appliance_type",
                                            "documentation": "The type of appliance to deploy.",
                                            "type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.appliance_type"},
                                            "metadata":
                                            {
                                                "UnionTag": {"value": "true"}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "appliance_size",
                                            "documentation": "A size descriptor based on the number of virtual machines which will be managed by the new vCenter appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.appliance_size"}},
                                            "metadata":
                                            {
                                                "UnionCase": {"tag": "appliance_type", "value": ["VCSA_EMBEDDED", "VCSA_EXTERNAL"]}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "appliance_disk_size",
                                            "documentation": "The disk size of the new vCenter appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.storage_size"}},
                                            "metadata":
                                            {
                                                "UnionCase": {"tag": "appliance_type", "value": ["VCSA_EMBEDDED", "VCSA_EXTERNAL"]}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "root_password",
                                            "documentation": "Password must conform to the following requirements: 1. At least 8 characters. 2. No more than 20 characters. 3. At least 1 uppercase character. 4. At least 1 lowercase character. 5. At least 1 number. 6. At least 1 special character (e.g., '!', '(', '@', etc.). 7. Only visible A-Z, a-z, 0-9 and punctuation (spaces are not allowed)",
                                            "type": {"category": "primitive", "primitive_type": "secret"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "thin_disk_mode",
                                            "documentation": "Whether to deploy the appliance with thin mode virtual disks.",
                                            "type": {"category": "primitive", "primitive_type": "boolean"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location",
                                            "documentation": "The location of the OVA file.",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location_ssl_verify",
                                            "documentation": "A flag to indicate whether the ssl verification is required.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location_ssl_thumbprint",
                                            "documentation": "SSL thumbprint of ssl verification. If provided, ssl_verify can be omitted or set to true. If omitted, ssl_verify must be false. If omitted and ssl_verify is true, an error will occur.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ovftool_location",
                                            "documentation": "The location of the OVF Tool.",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ovftool_location_ssl_verify",
                                            "documentation": "Flag to indicate whether or not to verify the SSL thumbprint of OVF Tool location.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ovftool_location_ssl_thumbprint",
                                            "documentation": "SSL thumbprint of OVF Tool location to be verified.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "services",
                                            "documentation": "The configuration of vCenter services.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.install.destination_appliance_service"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "network",
                                            "documentation": "The network settings of the appliance to be deployed.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.network"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "time",
                                            "documentation": "Configuration of the vCSA time synchronization.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.time"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ovftool_arguments",
                                            "documentation": "The OVF Tool arguments to be included.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "Map" ,"map_key_type": {"category": "primitive", "primitive_type": "string"}, "map_value_type": {"category": "primitive", "primitive_type": "string"}}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "vcsa_embedded",
                                            "documentation": "Spec used to configure an embedded vCenter Server. This field describes how the embedded vCenter Server appliance should be configured.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.install.vcsa_embedded"}},
                                            "metadata":
                                            {
                                                "UnionCase": {"tag": "appliance_type", "value": ["VCSA_EMBEDDED"]}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "psc",
                                            "documentation": "Spec used to configure a Platform Services Controller. This section describes how the Platform Services Controller appliance should be configured.  If unset, either {@name #vcsaEmbedded} or {@name #vcsaExternal} must be provided.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.install.psc"}},
                                            "metadata":
                                            {
                                                "UnionCase": {"tag": "appliance_type", "value": ["PSC"]}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "vcsa_external",
                                            "documentation": "Spec used to configure a vCenter Server registered with an external PSC. If unset, either vcsa_embedded or psc must be provided.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.external_vcsa"}},
                                            "metadata":
                                            {
                                                "UnionCase": {"tag": "appliance_type", "value": ["VCSA_EXTERNAL"]}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "vmc",
                                            "documentation": "Spec used to configure a vCenter Server registered with an external PSC. If unset, either vcsa_embedded or psc must be provided.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.external_vcsa"}},
                                            "metadata":
                                            {
                                                "UnionCase": {"tag": "appliance_type", "value": ["VMC"]}
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.install.spec",
                                    "type": "Structure",
                                    "documentation": "",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_location",
                                            "documentation": "This subsection describes the ESX or VC on which to deploy the appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.destination_location"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "destination_appliance",
                                            "documentation": "Spec to describe the new appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.install.destination_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                            ]

                            ,
                            "operations":
                            [
                                 {
                                    "name": "check$task",
                                    "documentation": "Performs a precheck for the given specification. The result of this operation can be queried by calling the cis/tasks/{task-id} with the task-id in the response of this call.",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The specification of the deployment.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.install.spec"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "options",
                                            "documentation": "The deployment precheck options.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.deployment_option"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.invalid_argument",
                                            "documentation": "If the given spec and/or option contains error."
                                        }
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/install?action=check", "method": "POST"}
                                    }

                                }
                                ,
                                 {
                                    "name": "start$task",
                                    "documentation": "Deploys the appliance for the given specification. The result of this operation can be queried by calling the cis/tasks/{task-id} with the task-id in the response of this call.",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The specification of the deployment.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.install.spec"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.invalid_argument",
                                            "documentation": "If the given specification contains error."
                                        }
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/install?action=start", "method": "POST"}
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.log",
                            "documentation": "The service that provides logs associated with a task of a given task ID.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "structures":
                            [
                            ]

                            ,
                            "operations":
                            [
                                 {
                                    "name": "get",
                                    "documentation": "Retrieves the zipped files that contains operation log, serialized task flow, record of all configuration, and a current status of the operation.",
                                    "params":
                                    [
                                        {
                                            "name": "task_id",
                                            "documentation": "The {@link ID} of the operation. must exist in the server. If for any reason the server reboots during an operation, all {@link ID}s previously stored is lost.",
                                            "type": {"category": "primitive", "primitive_type": "ID"},
                                            "metadata":
                                            {
                                                "PathVariable": {"value": "taskId"}
                                                ,
                                                "Resource": {"value": "com.vmware.cis.task"}
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "A zipped file that contains the files mentioned above.",
                                        "type": {"category": "primitive", "primitive_type": "URI"},
                                        "metadata":
                                        {
                                        }

                                    },
                                    "errors":
                                    [
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.invalid_argument",
                                            "documentation": "If the given ID does not exist in the server. There might be a cause of task ID does not exist including, error in taskID, or log files been purged by system or manually."
                                        }
                                    ],
                                    "metadata":
                                    {
                                        "RequestMapping": {"value": "/vcenter/lcm/logs/{taskId}", "method": "GET"}
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.migrate",
                            "documentation": "The service to migrate a windows VC to Embedded VCSA, PSC, and Management VCSA.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "structures":
                            [
                                {
                                    "name": "com.vmware.vcenter.lcm.migrate.migrate_destination_appliance",
                                    "type": "Structure",
                                    "documentation": "Spec to describe the new appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "appliance_name",
                                            "documentation": "The name of the appliance to deploy.",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "appliance_type",
                                            "documentation": "The type of appliance to deploy.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.appliance_type"}},
                                            "metadata":
                                            {
                                                "UnionTag": {"value": "true"}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "appliance_size",
                                            "documentation": "A size descriptor based on the number of virtual machines which will be managed by the new vCenter appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.appliance_size"}},
                                            "metadata":
                                            {
                                                "UnionCase": {"tag": "appliance_type", "value": ["VCSA_EMBEDDED", "VCSA_EXTERNAL"]}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "appliance_disk_size",
                                            "documentation": "The disk size of the new vCenter appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.storage_size"}},
                                            "metadata":
                                            {
                                                "UnionCase": {"tag": "appliance_type", "value": ["VCSA_EMBEDDED", "VCSA_EXTERNAL"]}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "root_password",
                                            "documentation": "Password must conform to the following requirements: 1. At least 8 characters. 2. No more than 20 characters. 3. At least 1 uppercase character. 4. At least 1 lowercase character. 5. At least 1 number. 6. At least 1 special character (e.g., '!', '(', '@', etc.). 7. Only visible A-Z, a-z, 0-9 and punctuation (spaces are not allowed)",
                                            "type": {"category": "primitive", "primitive_type": "secret"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "thin_disk_mode",
                                            "documentation": "Whether to deploy the appliance with thin mode virtual disks.",
                                            "type": {"category": "primitive", "primitive_type": "boolean"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location",
                                            "documentation": "The location of the OVA file.",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location_ssl_verify",
                                            "documentation": "A flag to indicate whether the ssl verification is required.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location_ssl_thumbprint",
                                            "documentation": "SSL thumbprint of ssl verification. If provided, ssl_verify can be omitted or set to true. If omitted, ssl_verify must be false. If omitted and ssl_verify is true, an error will occur.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ovftool_location",
                                            "documentation": "The location of the OVF Tool.",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ovftool_location_ssl_verify",
                                            "documentation": "Flag to indicate whether or not to verify the SSL thumbprint of OVF Tool location.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ovftool_location_ssl_thumbprint",
                                            "documentation": "SSL thumbprint of OVF Tool location to be verified.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "active_directory_domain",
                                            "documentation": "The name of the Active Directory domain to which the source Windows installation is joined. If the source Windows installation is not joined to an Active Directory domain, omit this parameter.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "active_directory_username",
                                            "documentation": "Administrator user name of the Active Directory domain to which the source Windows installation is joined. The format can be either 'username' or 'username@domain'",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "active_directory_password",
                                            "documentation": "Password for the active directory user.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "secret"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "services",
                                            "documentation": "Spec to configure vCenter server services.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.upgrade_destination_appliance_service"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "temporary_network",
                                            "documentation": "The network settings of the appliance to be deployed.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.temporary_network"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "history",
                                            "documentation": "History data to be included in the upgrade and migrate",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.history"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ovftool_arguments",
                                            "documentation": "The OVF Tool arguments to be included.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "Map" ,"map_key_type": {"category": "primitive", "primitive_type": "string"}, "map_value_type": {"category": "primitive", "primitive_type": "string"}}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "vcsa_embedded",
                                            "documentation": "Spec used to configure an embedded vCenter Server. This field describes how the embedded vCenter Server appliance should be configured.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.ceip_only_sso"}},
                                            "metadata":
                                            {
                                                "UnionCase": {"tag": "appliance_type", "value": ["VCSA_EMBEDDED"]}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "psc",
                                            "documentation": "Spec used to configure a Platform Services Controller. This section describes how the Platform Services Controller appliance should be configured.  If unset, either {@name #vcsaEmbedded} or {@name #vcsaExternal} must be provided.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.ceip_only_sso"}},
                                            "metadata":
                                            {
                                                "UnionCase": {"tag": "appliance_type", "value": ["PSC"]}
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.migrate.spec",
                                    "type": "Structure",
                                    "documentation": "Spec to describe the configuration parameters that are required for migrating a Windows vCenter Server.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_location",
                                            "documentation": "This subsection describes the ESX or VC on which to deploy the appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.destination_location"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "destination_appliance",
                                            "documentation": "Spec to describe the new appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.migrate.migrate_destination_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vc_windows",
                                            "documentation": "Spec to describe the existing Windows vCenter server to migrate.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.source_vc_windows"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "existing_migration_assistant",
                                            "documentation": "Spec to describe the attributes of a running Migration Assistant on the Windows vCenter server.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.existing_migration_assistant"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "start_migration_assistant",
                                            "documentation": "Spec to automate the invocation of Migration Assistant. Automatic invocation works only if the source Windows installation is running as a virtual machine.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.migration_assistant"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vum_location",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vum",
                                            "documentation": "This section describes the source vSphere Update Manager (VUM) which you want to upgrade.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.source_vum"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                            ]

                            ,
                            "operations":
                            [
                                 {
                                    "name": "check$task",
                                    "documentation": "Performs a precheck for the given specification. The result of this operation can be queried by calling the cis/tasks/{task-id} with the task-id in the response of this call.",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The specification of the deployment.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.migrate.spec"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "options",
                                            "documentation": "The deployment precheck options.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.deployment_option"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.invalid_argument",
                                            "documentation": "If the given spec and/or option contains error."
                                        }
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/migration?action=check", "method": "POST"}
                                    }

                                }
                                ,
                                 {
                                    "name": "start$task",
                                    "documentation": "Deploys the appliance for the given specification. The result of this operation can be queried by calling the cis/tasks/{task-id} with the task-id in the response of this call.",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The specification of the deployment.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.migrate.spec"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.invalid_argument",
                                            "documentation": "If the given specification contains error."
                                        }
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/migration?action=start", "method": "POST"}
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.recommendation",
                            "documentation": "The service that provide recommendation.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "structures":
                            [
                                {
                                    "name": "com.vmware.vcenter.lcm.recommendation.deployment_size_destination_appliance",
                                    "type": "Structure",
                                    "documentation": "Spec to describe the new appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "ova_location",
                                            "documentation": "The location of the ova file.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location_ssl_verify",
                                            "documentation": "A flag to indicate whether the ssl verification is required.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location_ssl_thumbprint",
                                            "documentation": "SSL thumbprint of ssl verification. If provided, ssl_verify can be omitted or set to true. If omitted, ssl_verify must be false. If omitted and ssl_verify is true, an error will occur.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.recommendation.migrate_deployment_size_request",
                                    "type": "Structure",
                                    "documentation": "The request for recommending migrate deployment size.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_appliance",
                                            "documentation": "Spec to describe the new appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.recommendation.deployment_size_destination_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vc_windows",
                                            "documentation": "Spec to describe the existing Windows vCenter server to migrate.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.source_vc_windows"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "existing_migration_assistant",
                                            "documentation": "Spec to describe the attributes of a running Migration Assistant on the Windows vCenter server.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.existing_migration_assistant"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "start_migration_assistant",
                                            "documentation": "Spec to automate the invocation of Migration Assistant. Automatic invocation works only if the source Windows installation is running as a virtual machine.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.migration_assistant"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vum_location",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vum",
                                            "documentation": "This section describes the source vSphere Update Manager (VUM) which you want to upgrade.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.source_vum"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.recommendation.upgrade_deployment_size_request",
                                    "type": "Structure",
                                    "documentation": "The request for recommending upgrade deployment size.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_appliance",
                                            "documentation": "Spec to describe the new appliance",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.recommendation.deployment_size_destination_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_location",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_appliance",
                                            "documentation": "Spec to describe the existing appliance to upgrade.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.upgrade_source_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vum",
                                            "documentation": "This section describes the source vSphere Update Manager (VUM) which you want to upgrade.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.source_vum"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vum_location",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.recommendation.datastore_request",
                                    "type": "Structure",
                                    "documentation": "The request for recommending datastore.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_location",
                                            "documentation": "This subsection describes the ESX or VC on which to deploy the appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.recommendation.datastore_destination_location"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "destination_appliance",
                                            "documentation": "Spec to describe the new appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.recommendation.datastore_destination_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.recommendation.datastore_destination_appliance",
                                    "type": "Structure",
                                    "documentation": "The configuration of destination appliance to recommend datastore.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "appliance_size",
                                            "documentation": "A size descriptor based on the number of virtual machines which will be managed by the new vCenter appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.appliance_size"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "appliance_disk_size",
                                            "documentation": "The disk size of the new vCenter appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.storage_size"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location",
                                            "documentation": "The location of the ova file.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location_ssl_verify",
                                            "documentation": "A flag to indicate whether the ssl verification is required.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location_ssl_thumbprint",
                                            "documentation": "SSL thumbprint of ssl verification. If provided, ssl_verify can be omitted or set to true. If omitted, ssl_verify must be false. If omitted and ssl_verify is true, an error will occur.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.recommendation.datastore_destination_location",
                                    "type": "Structure",
                                    "documentation": "This subsection describes the ESX or VC on which to deploy the appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "esx",
                                            "documentation": "This section describes the ESX host on which to deploy the appliance. Required if you are deploying the appliance directly on an ESX host.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.recommendation.datastore_esx"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "vcenter",
                                            "documentation": "This subsection describes the vCenter on which to deploy the appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.recommendation.datastore_vc"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.recommendation.datastore_esx",
                                    "type": "Structure",
                                    "documentation": "This section describes the ESX host on which to deploy the appliance. Required if you are deploying the appliance directly on an ESX host.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "connection",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.recommendation.datastore_vc",
                                    "type": "Structure",
                                    "documentation": "This subsection describes the vCenter on which to deploy the appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "connection",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "inventory",
                                            "documentation": "All names are case-sensitive. you can install the appliance to one of the following destinations: 1. A resource pool in a cluster, use 'cluster_path'. 2. A specific ESX host in a cluster, use 'host_path'. 3. A resource pool in a specific ESX host being managed by the current vCenter, use 'resource_pool_path'. You must always provide the 'network_name' key. To install a new appliance to a specific ESX host in a cluster, provide the 'host_path' key, and the 'datastore_name', e.g. 'host_path': '/MyDataCenter/host/MyCluster/10.20.30.40', 'datastore_name': 'Your Datastore'. To install a new appliance to a specific resource pool, provide the 'resource_pool_path', and the 'datastore_name', e.g. 'resource_pool_path': '/Your Datacenter Folder/Your Datacenter/host/Your Cluster/Resources/Your Resource Pool', 'datastore_name': 'Your Datastore'. To place a new appliance to a virtual machine Folder, provide the 'vm_folder_path', e.g. 'vm_folder_path': 'VM Folder 0/VM Folder1'.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.recommendation.datastore_vc_inventory"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.recommendation.datastore_vc_inventory",
                                    "type": "Structure",
                                    "documentation": "All names are case-sensitive. you can install the appliance to one of the following destinations: 1. A resource pool in a cluster, use 'cluster_path'. 2. A specific ESX host in a cluster, use 'host_path'. 3. A resource pool in a specific ESX host being managed by the current vCenter, use 'resource_pool_path'. You must always provide the 'network_name' key. To install a new appliance to a specific ESX host in a cluster, provide the 'host_path' key, and the 'datastore_name', e.g. 'host_path': '/MyDataCenter/host/MyCluster/10.20.30.40', 'datastore_name': 'Your Datastore'. To install a new appliance to a specific resource pool, provide the 'resource_pool_path', and the 'datastore_name', e.g. 'resource_pool_path': '/Your Datacenter Folder/Your Datacenter/host/Your Cluster/Resources/Your Resource Pool', 'datastore_name': 'Your Datastore'. To place a new appliance to a virtual machine Folder, provide the 'vm_folder_path', e.g. 'vm_folder_path': 'VM Folder 0/VM Folder1'.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "host_path",
                                            "documentation": "Full path to an ESX host. Format: /{datacenter folder}/{datacenter name}/host/{host name}. e.g: /Your Datacenter Folder/Your Datacenter/host/Your Host",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.recommendation.datastore_info",
                                    "type": "Structure",
                                    "documentation": "Datastore space information. Space information are in GB unit.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "freespace",
                                            "documentation": "The amount of space that the datastore currently has.",
                                            "type": {"category": "primitive", "primitive_type": "double"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "freespace_after_placement",
                                            "documentation": "The amount of space that the datastore will have after deployment.",
                                            "type": {"category": "primitive", "primitive_type": "double"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "required_space",
                                            "documentation": "The amount of space that the deployment will occupy.",
                                            "type": {"category": "primitive", "primitive_type": "double"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                            ]

                            ,
                            "operations":
                            [
                                 {
                                    "name": "scan_migrate_deployment_size$task",
                                    "documentation": "Recommend deployment sizes based on the configuration given in the specification.",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The specification that contains information needed to recommend deloyment size.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.recommendation.migrate_deployment_size_request"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "A task-id associated with this task.",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/recommendation?action=scan-migrate-deployment-size", "method": "POST"}
                                    }

                                }
                                ,
                                 {
                                    "name": "scan_datastore$task",
                                    "documentation": "Recommend a datastore for the appliance to be deployed in.",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The specification contains the information needed to recommend datastore",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.recommendation.datastore_request"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "A task-id associated with this task.",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/recommendation?action=scan-datastore", "method": "POST"}
                                    }

                                }
                                ,
                                 {
                                    "name": "scan_upgrade_deployment_size$task",
                                    "documentation": "Recommend deployment sizes based on the configuration given in the specification.",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The specification that contains information needed to recommend deloyment size.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.recommendation.upgrade_deployment_size_request"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "A task-id associated with this task.",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/recommendation?action=scan-upgrade-deployment-size", "method": "POST"}
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.upgrade",
                            "documentation": "The service to upgrade an existing appliance to Embedded VCSA, PSC, and Management VCSA.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "structures":
                            [
                                {
                                    "name": "com.vmware.vcenter.lcm.upgrade.upgrade_destination_appliance",
                                    "type": "Structure",
                                    "documentation": "Spec to describe the new appliance",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "appliance_name",
                                            "documentation": "The name of the appliance to deploy.",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "appliance_type",
                                            "documentation": "The type of appliance to deploy.",
                                            "type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.appliance_type"},
                                            "metadata":
                                            {
                                                "UnionTag": {"value": "true"}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "appliance_size",
                                            "documentation": "A size descriptor based on the number of virtual machines which will be managed by the new vCenter appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.appliance_size"}},
                                            "metadata":
                                            {
                                                "UnionCase": {"tag": "appliance_type", "value": ["VCSA_EMBEDDED", "VCSA_EXTERNAL"]}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "appliance_disk_size",
                                            "documentation": "The disk size of the new vCenter appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.storage_size"}},
                                            "metadata":
                                            {
                                                "UnionCase": {"tag": "appliance_type", "value": ["VCSA_EMBEDDED", "VCSA_EXTERNAL"]}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "thin_disk_mode",
                                            "documentation": "Whether to deploy the appliance with thin mode virtual disks.",
                                            "type": {"category": "primitive", "primitive_type": "boolean"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location",
                                            "documentation": "The location of the OVA file.",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location_ssl_verify",
                                            "documentation": "A flag to indicate whether the ssl verification is required.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location_ssl_thumbprint",
                                            "documentation": "SSL thumbprint of ssl verification. If provided, ssl_verify can be omitted or set to true. If omitted, ssl_verify must be false. If omitted and ssl_verify is true, an error will occur.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ovftool_location",
                                            "documentation": "The location of the OVF Tool.",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ovftool_location_ssl_verify",
                                            "documentation": "Flag to indicate whether or not to verify the SSL thumbprint of OVF Tool location.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ovftool_location_ssl_thumbprint",
                                            "documentation": "SSL thumbprint of OVF Tool location to be verified.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "services",
                                            "documentation": "Spec to configure vCenter server services.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.upgrade_destination_appliance_service"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "temporary_network",
                                            "documentation": "The network settings of the appliance to be deployed.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.temporary_network"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "history",
                                            "documentation": "History data to be included in the upgrade and migrate",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.history"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ovftool_arguments",
                                            "documentation": "The OVF Tool arguments to be included.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "generic", "generic_type": "Map" ,"map_key_type": {"category": "primitive", "primitive_type": "string"}, "map_value_type": {"category": "primitive", "primitive_type": "string"}}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "vcsa_embedded",
                                            "documentation": "Spec used to configure an embedded vCenter Server. This field describes how the embedded vCenter Server appliance should be configured.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.ceip_only_sso"}},
                                            "metadata":
                                            {
                                                "UnionCase": {"tag": "appliance_type", "value": ["VCSA_EMBEDDED"]}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "psc",
                                            "documentation": "Spec used to configure a Platform Services Controller. This section describes how the Platform Services Controller appliance should be configured.  If unset, either {@name #vcsaEmbedded} or {@name #vcsaExternal} must be provided.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.ceip_only_sso"}},
                                            "metadata":
                                            {
                                                "UnionCase": {"tag": "appliance_type", "value": ["PSC"]}
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.upgrade.spec",
                                    "type": "Structure",
                                    "documentation": "Spec to describe the configuration parameters that are required for upgrade of a vCenter Server Appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_location",
                                            "documentation": "This subsection describes the ESX or VC on which to deploy the appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.destination_location"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "destination_appliance",
                                            "documentation": "Spec to describe the new appliance",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.upgrade.upgrade_destination_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_location",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_appliance",
                                            "documentation": "Spec to describe the existing appliance to upgrade.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.upgrade_source_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vum",
                                            "documentation": "This section describes the source vSphere Update Manager (VUM) which you want to upgrade.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.source_vum"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vum_location",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                            ]

                            ,
                            "operations":
                            [
                                 {
                                    "name": "check$task",
                                    "documentation": "Performs a precheck for the given specification. The result of this operation can be queried by calling the cis/tasks/{task-id} with the task-id in the response of this call.",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The specification of the deployment.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.upgrade.spec"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "options",
                                            "documentation": "The deployment precheck options.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.deployment_option"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.invalid_argument",
                                            "documentation": "If the given spec and/or option contains error."
                                        }
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/upgrade?action=check", "method": "POST"}
                                    }

                                }
                                ,
                                 {
                                    "name": "start$task",
                                    "documentation": "Deploys the appliance for the given specification. The result of this operation can be queried by calling the cis/tasks/{task-id} with the task-id in the response of this call.",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The specification of the deployment.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.upgrade.spec"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                        {
                                            "user_defined_type_name": "com.vmware.vapi.std.errors.invalid_argument",
                                            "documentation": "If the given specification contains error."
                                        }
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/upgrade?action=start", "method": "POST"}
                                    }

                                }
                            ]
                        }
                        ,
                        {
                            "name": "com.vmware.vcenter.lcm.validation",
                            "documentation": "The service that provides validation of a section of full deployment specification.",
                            "metadata":
                            {
                                "Released": {"version": "6.7u1"}
                            }

                            ,
                            "enumerations":
                            [
                            ]

                            ,
                            "constants":
                            [
                            ]

                            ,
                            "structures":
                            [
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.upgrade_source_appliance_destination_appliance",
                                    "type": "Structure",
                                    "documentation": "Spec to describe the new appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "ova_location",
                                            "documentation": "The location of the ova file.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location_ssl_verify",
                                            "documentation": "A flag to indicate whether the ssl verification is required.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location_ssl_thumbprint",
                                            "documentation": "SSL thumbprint of ssl verification. If provided, ssl_verify can be omitted or set to true. If omitted, ssl_verify must be false. If omitted and ssl_verify is true, an error will occur.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.upgrade_source_appliance_request",
                                    "type": "Structure",
                                    "documentation": "The configuration to validate source appliance for upgrade.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_appliance",
                                            "documentation": "Spec to describe the new appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.upgrade_source_appliance_destination_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_appliance",
                                            "documentation": "The source appliance configuration.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.upgrade_source_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_location",
                                            "documentation": "The source location configuration.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.source_location_request",
                                    "type": "Structure",
                                    "documentation": "This subsection describes the ESX or VC on which to deploy the appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "source_location",
                                            "documentation": "The source location configuration",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.source_vum_request",
                                    "type": "Structure",
                                    "documentation": "The request that contains information needed to verify the credentials of source vSphere Update Manager and run the migration assistant.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "source_vc_windows",
                                            "documentation": "Spec to describe the existing Windows vCenter server to migrate.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.source_vum_source_vc_windows"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_appliance",
                                            "documentation": "Source appliance configuration for upgrade service.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.source_vum_upgrade_source_appliance"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vum_location",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vum",
                                            "documentation": "This section describes the source vSphere Update Manager (VUM) which you want to upgrade.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.source_vum"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.source_vum_upgrade_source_appliance",
                                    "type": "Structure",
                                    "documentation": "Source appliance configuration for upgrade service.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "sso_admin_username",
                                            "documentation": "vCenter Single Sign-On administrator user name of the source appliance.",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "sso_admin_password",
                                            "documentation": "vCenter Single Sign-On administrator password of the source appliance.",
                                            "type": {"category": "primitive", "primitive_type": "secret"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.source_vum_source_vc_windows",
                                    "type": "Structure",
                                    "documentation": "Spec to describe the existing Windows vCenter server to migrate.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "username",
                                            "documentation": "Single Sign-On administrator user on the source Windows vCenter server.  For example, administrator@vsphere.local. Important: The user must be administrator@your_domain_name.",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "password",
                                            "documentation": "The password of the Single Sign-On administrator on the source Windows vCenter server.",
                                            "type": {"category": "primitive", "primitive_type": "secret"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.os_password_request",
                                    "type": "Structure",
                                    "documentation": "The request that contains information needed to verify the given password conforms password policy.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_appliance",
                                            "documentation": "Spec to describe the new appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.os_password_destination_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.os_password_destination_appliance",
                                    "type": "Structure",
                                    "documentation": "Spec to describe the new appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "root_password",
                                            "documentation": "Password must conform to the following requirements: 1. At least 8 characters. 2. No more than 20 characters. 3. At least 1 uppercase character. 4. At least 1 lowercase character. 5. At least 1 number. 6. At least 1 special character (e.g., '!', '(', '@', etc.). 7. Only visible A-Z, a-z, 0-9 and punctuation (spaces are not allowed)",
                                            "type": {"category": "primitive", "primitive_type": "secret"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.ntp_server_request",
                                    "type": "Structure",
                                    "documentation": "A request that contains the information needed to validate the given ntp servers.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_appliance",
                                            "documentation": "Spec to describe the new appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.ntp_server_destination_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.ntp_server_destination_appliance",
                                    "type": "Structure",
                                    "documentation": "Spec to describe the new appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "time",
                                            "documentation": "Configuration of the vCSA time synchronization.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.time"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.esx_request",
                                    "type": "Structure",
                                    "documentation": "The request that contains the information to verify esx management status.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_location",
                                            "documentation": "This subsection describes the ESX or VC on which to deploy the appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.esx_destination_location"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_location",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vum_location",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.esx_destination_location",
                                    "type": "Structure",
                                    "documentation": "This subsection describes the ESX or VC on which to deploy the appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "esx",
                                            "documentation": "This section describes the ESX host on which to deploy the appliance. Required if you are deploying the appliance directly on an ESX host.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.container_without_inventory"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "vcenter",
                                            "documentation": "This subsection describes the vCenter on which to deploy the appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.container_without_inventory"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.container_without_inventory",
                                    "type": "Structure",
                                    "documentation": "This section describes the ESX host on which to deploy the appliance. Required if you are deploying the appliance directly on an ESX host.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "connection",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.network_request",
                                    "type": "Structure",
                                    "documentation": "The request that contains network information to be validated.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_appliance",
                                            "documentation": "Spec to describe the new appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.network_destination_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.network_destination_appliance",
                                    "type": "Structure",
                                    "documentation": "Spec to describe the new appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "network",
                                            "documentation": "The network settings of the appliance to be deployed.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.network"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.temporary_network_request",
                                    "type": "Structure",
                                    "documentation": "The request that contains network information to be validated.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_appliance",
                                            "documentation": "Spec to describe the new appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.temporary_network_destination_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.temporary_network_destination_appliance",
                                    "type": "Structure",
                                    "documentation": "Spec to describe the new appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "network",
                                            "documentation": "The network settings of the appliance to be deployed.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.temporary_network"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.appliance_name_request",
                                    "type": "Structure",
                                    "documentation": "Data container that contains the information needed to validate appliance name.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_location",
                                            "documentation": "This subsection describes the ESX or VC on which to deploy the appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.appliance_name_destination_location"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "destination_appliance",
                                            "documentation": "Spec to describe the new appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.appliance_name_destination_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.appliance_name_destination_appliance",
                                    "type": "Structure",
                                    "documentation": "Data container for appliance name information used in validation of appliance name request.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "appliance_name",
                                            "documentation": "The name of the appliance to deploy.",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.appliance_name_destination_location",
                                    "type": "Structure",
                                    "documentation": "",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "esx",
                                            "documentation": "This section describes the ESX host on which to deploy the appliance. Required if you are deploying the appliance directly on an ESX host.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.appliance_name_esx"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "vcenter",
                                            "documentation": "This subsection describes the vCenter on which to deploy the appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.appliance_name_vc"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.appliance_name_esx",
                                    "type": "Structure",
                                    "documentation": "This section describes the ESX host on which to deploy the appliance. Required if you are deploying the appliance directly on an ESX host.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "connection",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.appliance_name_esx_inventory",
                                    "type": "Structure",
                                    "documentation": "The configuration of ESX inventory.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "resource_pool_path",
                                            "documentation": "The path to the resource pool on the ESX host in which the appliance will be deployed.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.appliance_name_vc",
                                    "type": "Structure",
                                    "documentation": "This subsection describes the vCenter on which to deploy the appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "connection",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "inventory",
                                            "documentation": "All names are case-sensitive. you can install the appliance to one of the following destinations: 1. A resource pool in a cluster, use 'cluster_path'. 2. A specific ESX host in a cluster, use 'host_path'. 3. A resource pool in a specific ESX host being managed by the current vCenter, use 'resource_pool_path'. You must always provide the 'network_name' key. To install a new appliance to a specific ESX host in a cluster, provide the 'host_path' key, and the 'datastore_name', e.g. 'host_path': '/MyDataCenter/host/MyCluster/10.20.30.40', 'datastore_name': 'Your Datastore'. To install a new appliance to a specific resource pool, provide the 'resource_pool_path', and the 'datastore_name', e.g. 'resource_pool_path': '/Your Datacenter Folder/Your Datacenter/host/Your Cluster/Resources/Your Resource Pool', 'datastore_name': 'Your Datastore'. To place a new appliance to a virtual machine Folder, provide the 'vm_folder_path', e.g. 'vm_folder_path': 'VM Folder 0/VM Folder1'.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.appliance_name_vc_inventory"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.appliance_name_vc_inventory",
                                    "type": "Structure",
                                    "documentation": "All names are case-sensitive. you can install the appliance to one of the following destinations: 1. A resource pool in a cluster, use 'cluster_path'. 2. A specific ESX host in a cluster, use 'host_path'. 3. A resource pool in a specific ESX host being managed by the current vCenter, use 'resource_pool_path'. You must always provide the 'network_name' key. To install a new appliance to a specific ESX host in a cluster, provide the 'host_path' key, and the 'datastore_name', e.g. 'host_path': '/MyDataCenter/host/MyCluster/10.20.30.40', 'datastore_name': 'Your Datastore'. To install a new appliance to a specific resource pool, provide the 'resource_pool_path', and the 'datastore_name', e.g. 'resource_pool_path': '/Your Datacenter Folder/Your Datacenter/host/Your Cluster/Resources/Your Resource Pool', 'datastore_name': 'Your Datastore'. To place a new appliance to a virtual machine Folder, provide the 'vm_folder_path', e.g. 'vm_folder_path': 'VM Folder 0/VM Folder1'.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "vm_folder_path",
                                            "documentation": "",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "resource_pool_path",
                                            "documentation": "Full path to resource pool. Format: /{datacenter folder}/{datacenter name}/host/{host name}/{cluster_name}/Resources/{resource pool}. e.g: /Your Datacenter Folder/Your Datacenter/host/Your Cluster/Resources/Your Resource Pool",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "cluster_path",
                                            "documentation": "Full path to the cluster. Format: /{datacenter folder}/{datacenter name}/host/{cluster_name}. e.g: /Your Datacenter Folder/Your Datacenter/host/Your Cluster",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "host_path",
                                            "documentation": "Full path to an ESX host. Format: /{datacenter folder}/{datacenter name}/host/{host name}. e.g: /Your Datacenter Folder/Your Datacenter/host/Your Host",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.destination_location_request",
                                    "type": "Structure",
                                    "documentation": "This subsection describes the ESX or VC on which to deploy the appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_location",
                                            "documentation": "The destination location configuration.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.validation_destination_location"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.validation_destination_location",
                                    "type": "Structure",
                                    "documentation": "This subsection describes the ESX or VC on which to deploy the appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "esx",
                                            "documentation": "This section describes the ESX host on which to deploy the appliance. Required if you are deploying the appliance directly on an ESX host.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.destination_location_esx"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "vcenter",
                                            "documentation": "This subsection describes the vCenter on which to deploy the appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.destination_location_vc"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.destination_location_esx",
                                    "type": "Structure",
                                    "documentation": "This section describes the ESX host on which to deploy the appliance. Required if you are deploying the appliance directly on an ESX host.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "connection",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.destination_location_vc",
                                    "type": "Structure",
                                    "documentation": "This subsection describes the vCenter on which to deploy the appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "connection",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "inventory",
                                            "documentation": "All names are case-sensitive. you can install the appliance to one of the following destinations: 1. A resource pool in a cluster, use 'cluster_path'. 2. A specific ESX host in a cluster, use 'host_path'. 3. A resource pool in a specific ESX host being managed by the current vCenter, use 'resource_pool_path'. You must always provide the 'network_name' key. To install a new appliance to a specific ESX host in a cluster, provide the 'host_path' key, and the 'datastore_name', e.g. 'host_path': '/MyDataCenter/host/MyCluster/10.20.30.40', 'datastore_name': 'Your Datastore'. To install a new appliance to a specific resource pool, provide the 'resource_pool_path', and the 'datastore_name', e.g. 'resource_pool_path': '/Your Datacenter Folder/Your Datacenter/host/Your Cluster/Resources/Your Resource Pool', 'datastore_name': 'Your Datastore'. To place a new appliance to a virtual machine Folder, provide the 'vm_folder_path', e.g. 'vm_folder_path': 'VM Folder 0/VM Folder1'.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.vc_inventory"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.host_config_request",
                                    "type": "Structure",
                                    "documentation": "Data container that contains the information needed to validate appliance name.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_location",
                                            "documentation": "This subsection describes the ESX or VC on which to deploy the appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.host_config_destination_location"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "destination_appliance",
                                            "documentation": "Spec to describe the new appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.host_config_destination_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.host_config_destination_appliance",
                                    "type": "Structure",
                                    "documentation": "Data container for appliance name information used in validation of appliance name request.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "appliance_name",
                                            "documentation": "The name of the appliance to deploy.",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "appliance_type",
                                            "documentation": "The type of appliance to deploy.",
                                            "type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.appliance_type"},
                                            "metadata":
                                            {
                                                "UnionTag": {"value": "true"}
                                            }

                                        }
                                        ,
                                        {
                                            "name": "appliance_size",
                                            "documentation": "A size descriptor based on the number of virtual machines which will be managed by the new vCenter appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.appliance_size"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "appliance_disk_size",
                                            "documentation": "The disk size of the new vCenter appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Enumeration" ,"user_defined_type_name": "com.vmware.vcenter.lcm.storage_size"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "thin_disk_mode",
                                            "documentation": "Whether to deploy the appliance with thin mode virtual disks.",
                                            "type": {"category": "primitive", "primitive_type": "boolean"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location",
                                            "documentation": "The location of the ova file.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location_ssl_verify",
                                            "documentation": "A flag to indicate whether the ssl verification is required.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "boolean"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "ova_location_ssl_thumbprint",
                                            "documentation": "SSL thumbprint of ssl verification. If provided, ssl_verify can be omitted or set to true. If omitted, ssl_verify must be false. If omitted and ssl_verify is true, an error will occur.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.host_config_destination_location",
                                    "type": "Structure",
                                    "documentation": "This subsection describes the ESX or VC on which to deploy the appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "esx",
                                            "documentation": "This section describes the ESX host on which to deploy the appliance. Required if you are deploying the appliance directly on an ESX host.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.host_config_esx"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "vcenter",
                                            "documentation": "This subsection describes the vCenter on which to deploy the appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.host_config_vc"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.host_config_esx",
                                    "type": "Structure",
                                    "documentation": "This section describes the ESX host on which to deploy the appliance. Required if you are deploying the appliance directly on an ESX host.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "connection",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "inventory",
                                            "documentation": "The configuration of ESX inventory.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.host_config_esx_inventory"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.host_config_esx_inventory",
                                    "type": "Structure",
                                    "documentation": "The configuration of ESX inventory.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "datastore_name",
                                            "documentation": "The datastore on which to store the files of the appliance. This value has to be either a specific datastore name, or a specific datastore in a datastore cluster. The datastore must be accessible from the ESX host and must have at least 25 GB of free space. Otherwise, the new appliance might not power on.",
                                            "type": {"category": "primitive", "primitive_type": "string"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "resource_pool_path",
                                            "documentation": "The path to the resource pool on the ESX host in which the appliance will be deployed.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.host_config_vc",
                                    "type": "Structure",
                                    "documentation": "This subsection describes the vCenter on which to deploy the appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "connection",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "inventory",
                                            "documentation": "All names are case-sensitive. you can install the appliance to one of the following destinations: 1. A resource pool in a cluster, use 'cluster_path'. 2. A specific ESX host in a cluster, use 'host_path'. 3. A resource pool in a specific ESX host being managed by the current vCenter, use 'resource_pool_path'. You must always provide the 'network_name' key. To install a new appliance to a specific ESX host in a cluster, provide the 'host_path' key, and the 'datastore_name', e.g. 'host_path': '/MyDataCenter/host/MyCluster/10.20.30.40', 'datastore_name': 'Your Datastore'. To install a new appliance to a specific resource pool, provide the 'resource_pool_path', and the 'datastore_name', e.g. 'resource_pool_path': '/Your Datacenter Folder/Your Datacenter/host/Your Cluster/Resources/Your Resource Pool', 'datastore_name': 'Your Datastore'. To place a new appliance to a virtual machine Folder, provide the 'vm_folder_path', e.g. 'vm_folder_path': 'VM Folder 0/VM Folder1'.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.host_config_vc_inventory"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.host_config_vc_inventory",
                                    "type": "Structure",
                                    "documentation": "All names are case-sensitive. you can install the appliance to one of the following destinations: 1. A resource pool in a cluster, use 'cluster_path'. 2. A specific ESX host in a cluster, use 'host_path'. 3. A resource pool in a specific ESX host being managed by the current vCenter, use 'resource_pool_path'. You must always provide the 'network_name' key. To install a new appliance to a specific ESX host in a cluster, provide the 'host_path' key, and the 'datastore_name', e.g. 'host_path': '/MyDataCenter/host/MyCluster/10.20.30.40', 'datastore_name': 'Your Datastore'. To install a new appliance to a specific resource pool, provide the 'resource_pool_path', and the 'datastore_name', e.g. 'resource_pool_path': '/Your Datacenter Folder/Your Datacenter/host/Your Cluster/Resources/Your Resource Pool', 'datastore_name': 'Your Datastore'. To place a new appliance to a virtual machine Folder, provide the 'vm_folder_path', e.g. 'vm_folder_path': 'VM Folder 0/VM Folder1'.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "vm_folder_path",
                                            "documentation": "Path of the VM folder. VM folder must be visible by the Data Center of the compute resourceFormat:{vm_folder1}/{vm_folder2}e.g.:'VM Folder 0/VM Folder1'.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "resource_pool_path",
                                            "documentation": "Full path to resource pool. Format: /{datacenter folder}/{datacenter name}/host/{host name}/{cluster_name}/Resources/{resource pool}. e.g: /Your Datacenter Folder/Your Datacenter/host/Your Cluster/Resources/Your Resource Pool",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "cluster_path",
                                            "documentation": "Full path to the cluster. Format: /{datacenter folder}/{datacenter name}/host/{cluster_name}. e.g: /Your Datacenter Folder/Your Datacenter/host/Your Cluster",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "host_path",
                                            "documentation": "",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "datastore_name",
                                            "documentation": "The datastore on which to store the files of the appliance. This value has to be either a specific datastore name, or a specific datastore in a datastore cluster. The datastore must be accessible from the ESX host and must have at least 25 GB of free space. Otherwise, the new appliance might not power on.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "datastore_cluster_name",
                                            "documentation": "The datastore cluster on which to store the files of the appliance.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "primitive", "primitive_type": "string"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.migrate_source_appliance_request",
                                    "type": "Structure",
                                    "documentation": "This subsection describes the ESX or VC on which to deploy the appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_appliance",
                                            "documentation": "Spec to describe the new appliance.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.recommendation.deployment_size_destination_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vc_windows",
                                            "documentation": "Spec to describe the existing Windows vCenter server to migrate.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.source_vc_windows"},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "existing_migration_assistant",
                                            "documentation": "Spec to describe the attributes of a running Migration Assistant on the Windows vCenter server.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.existing_migration_assistant"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "start_migration_assistant",
                                            "documentation": "Spec to automate the invocation of Migration Assistant. Automatic invocation works only if the source Windows installation is running as a virtual machine.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.migration_assistant"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vum_location",
                                            "documentation": "The configuration to connect to an ESX/VC.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.connection"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "source_vum",
                                            "documentation": "This section describes the source vSphere Update Manager (VUM) which you want to upgrade.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.source_vum"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.sso_configuration_request",
                                    "type": "Structure",
                                    "documentation": "The request that contains information needed to verify the Single Sign-On configuration.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "destination_appliance",
                                            "documentation": "Destination appliance configuration needed to validate Single Sign-On.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.sso_configuration_destination_appliance"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.sso_configuration_destination_appliance",
                                    "type": "Structure",
                                    "documentation": "Spec to describe the new appliance.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "vcsa_embedded",
                                            "documentation": "Configuration of Single Sign-On for deploying Embedded.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.sso_configuration_vcsa_embedded"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "psc",
                                            "documentation": "Configuration of Single Sign-On for deploying PSC.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.sso_configuration_psc"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "vcsa_external",
                                            "documentation": "Configuration of Single Sign-On for deploying management node.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.external_vcsa"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.sso_configuration_vcsa_embedded",
                                    "type": "Structure",
                                    "documentation": "Spec used to configure an embedded vCenter Server. This field describes how the embedded vCenter Server appliance should be configured.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "standalone",
                                            "documentation": "Spec used to configure a standalone embedded vCenter Server. This field describes how the standalone vCenter Server appliance should be configured.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.embedded_standalone_vcsa"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "replicated",
                                            "documentation": "Spec used to configure a replicated embedded vCenter Server. This field describes how the replicated vCenter Server appliance should be configured.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.embedded_replicated_vcsa"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                                ,
                                {
                                    "name": "com.vmware.vcenter.lcm.validation.sso_configuration_psc",
                                    "type": "Structure",
                                    "documentation": "Spec used to configure a Platform Services Controller. This section describes how the Platform Services Controller appliance should be configured.  If unset, either {@name #vcsaEmbedded} or {@name #vcsaExternal} must be provided.",
                                    "metadata":
                                    {
                                    }

                                    ,
                                    "enumerations":
                                    [
                                    ]

                                    ,
                                    "constants":
                                    [
                                    ]

                                    ,
                                    "fields":
                                    [

                                        {
                                            "name": "standalone",
                                            "documentation": "Spec used to configure a standalone Platform Services Controller. This section describes how the standalone PSC should be configured.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.psc_standalone"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                        ,
                                        {
                                            "name": "replicated",
                                            "documentation": "Spec used to configure a replicated Platform Services Controller. This section describes how the replicated PSC should be configured.",
                                            "type": {"category": "generic", "generic_type": "Optional" ,"element_type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.psc_replicated"}},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ]
                                }
                            ]

                            ,
                            "operations":
                            [
                                 {
                                    "name": "check_appliance_name$task",
                                    "documentation": "Validate the name of the appliance to be deployed. <ol> <li>1. Return False if the there is already an appliance that has the same name as given in the spec exist in the path.</li> </ol>",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The configuration needed to validate the name of the appliance to be deployed.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.appliance_name_request"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "False if the name of the appliance already exists. True otherwise.",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/validation?action=check-appliance-name", "method": "POST"}
                                    }

                                }
                                ,
                                 {
                                    "name": "check_os_password$task",
                                    "documentation": "Validate if the given password conforms password policy. <ol> <li>1. Return False if the password in the spec violates password policy</li> </ol>",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The configuration needed to validate the given password against password policy.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.os_password_request"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "True if the password conforms password policy. False otherwise.",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/validation?action=check-os-password", "method": "POST"}
                                    }

                                }
                                ,
                                 {
                                    "name": "check_network$task",
                                    "documentation": "Check to see if the given network configuration is valid. <ol> <li>1. Return False if the given network will cause conflict.</li> <li>2. Always return True if network mode is set to DHCP.</li> </ol>",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The configuration needed to validate network.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.network_request"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "True if the network configuration is valid. False otherwise.",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/validation?action=check-network", "method": "POST"}
                                    }

                                }
                                ,
                                 {
                                    "name": "check_host_config$task",
                                    "documentation": "Validate the host configuration. <ol> <li>1. Return False if the provided appliance type, appliance size, and disk size combination is not valid.</li> <li>2. Return False if the provided deployment path does not have sufficient memory allocated.</li> <li>3. Return False if the provided deployment path does not have sufficient cpu allocated.</li> <li>3. Return False if the provided deployment path does not have sufficient datastore space.</li> </ol>",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The configuration needed to validate host configuration.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.host_config_request"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "True if the host configuration is valid, False otherwise.",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/validation?action=check-host-config", "method": "POST"}
                                    }

                                }
                                ,
                                 {
                                    "name": "check_destination_location$task",
                                    "documentation": "Validate the ESX of the appliance to be deployed.",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The configuration needed to validate the ESX of the appliance to be deployed.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.destination_location_request"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "True if the ESX of the appliance to be deployed is valid. False otherwise.",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/validation?action=check-destination-location", "method": "POST"}
                                    }

                                }
                                ,
                                 {
                                    "name": "check_temporary_network$task",
                                    "documentation": "Check to see if the given network configuration is valid. <ol> <li>1. Return False if the given network will cause conflict.</li> <li>2. Always return True if network mode is set to DHCP.</li> </ol>",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The configuration needed to validate network.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.temporary_network_request"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "True if the network configuration is valid. False otherwise.",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/validation?action=check-temporary-network", "method": "POST"}
                                    }

                                }
                                ,
                                 {
                                    "name": "check_source_vum$task",
                                    "documentation": "Validate the source VUM configuration.",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The configuration needed to validate the source VUM.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.source_vum_request"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "True if the given source VUM configuration is valid. False otherwise.",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/validation?action=check-source-vum", "method": "POST"}
                                    }

                                }
                                ,
                                 {
                                    "name": "check_upgrade_source_appliance$task",
                                    "documentation": "Validate the source appliance to be upgraded. <ol> <li>1. Return False if the provided source appliance credentials are incorrect</li> <li>2. Return False if the provided source location credentials are incorrect.</li> <li>3. Return False if upgrade runner precheck results in error.</li> <li>4. Return False if export directory provided is invalid.</li> </ol>",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The configuration of the source appliance to be upgraded.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.upgrade_source_appliance_request"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "True if the given source appliance configuration is valid. False otherwise.",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/validation?action=check-upgrade-source-appliance", "method": "POST"}
                                    }

                                }
                                ,
                                 {
                                    "name": "check_migrate_source_appliance$task",
                                    "documentation": "Validate the source appliance to be migrated. <ol> <li>1. Return False if the provided source windows vc credentials are incorrect</li> <li>2. Return False if migration assistant precheck results in error.</li> </ol>",
                                    "params":
                                    [
                                        {
                                            "name": "spec",
                                            "documentation": "The configuration of the source appliance to be migrated.",
                                            "type": {"category": "user_defined", "user_defined_type": "Structure" ,"user_defined_type_name": "com.vmware.vcenter.lcm.validation.migrate_source_appliance_request"},
                                            "metadata":
                                            {
                                            }

                                        }
                                    ],
                                    "result":
                                    {
                                        "documentation": "True if the given source appliance configuration is valid. False otherwise.",
                                        "type": {"category": "primitive", "primitive_type": "ID"},
                                        "metadata":
                                        {
                                            "Resource": {"value": "com.vmware.cis.task"}
                                        }

                                    },
                                    "errors":
                                    [
                                    ],
                                    "metadata":
                                    {
                                        "TaskOnly": {"value": "com.vmware.vcenter.lcm.task_info"}
                                        ,
                                        "RequestMapping": {"value": "/vcenter/lcm/validation?action=check-migrate-source-appliance", "method": "POST"}
                                    }

                                }
                            ]
                        }
                    ]
                }
            ]
        }
    }
}
