REST API - get

vcenter vm guest filesystem transfers: get

Initiates an operation to transfer a file from the guest.

Obtains a URL to the file inside the guest to be transferred to the client.
If the power state of the Virtual Machine is changed when the file transfer is in progress, or the Virtual Machine is migrated, then the transfer operation is aborted.

In order to ensure a secure connection to the host when transferring a file using HTTPS, the X.509 certificate for the host must be used to authenticate the remote end of the connection. The certificate of the host that the virtual machine is running on can be retrieved using the following fields: XXX insert link to certificate in Host config XXX

. Warning: This operation is part of a new feature in development. It may be changed at any time and may not have all supported functionality implemented.

Request:

HTTP request

GET https://{server}/api/vcenter/vm/{vm}/guest/filesystem
{
    "path""string",
    "credentials"{
        "password""secret string",
        "user_name""string",
        "saml_token""secret string",
        "type""USERNAME_PASSWORD",
        "interactive_session"true
    }
}

Path Parameters

Name Type Description
Required
vm string Virtual Machine to perform the operation on.

Body Parameters:

Name Type Description
bold = required
-.credentials credentials The guest authentication credentials.
-.credentials.interactive_session boolean If set, the operation will interact with the logged-in desktop session in the guest. This requires that the logged-on user matches the user specified by the vcenter.vm.guest.credentials. This is currently only supported for USERNAME_PASSWORD. Warning: This attribute is part of a new feature in development. It may be changed at any time and may not have all supported functionality implemented.

-.credentials.type string The guest credentials type. Warning: This attribute is part of a new feature in development. It may be changed at any time and may not have all supported functionality implemented.

Types of guest credentials. Warning: This enumeration is part of a new feature in development. It may be changed at any time and may not have all supported functionality implemented. Value is one of:
USERNAME_PASSWORD: USERNAME_PASSWORD credentials contains the information necessary to authenticate within a guest using a username and password. This method of authentication is stateless.

To use USERNAME_PASSWORD, populate userName and password with the appropriate login information.

Once populated, you can use USERNAME_PASSWORD in any guest operations function call.

. Warning: This constant is part of a new feature in development. It may be changed at any time and may not have all supported functionality implemented.
SAML_BEARER_TOKEN: SAML_BEARER_TOKEN contains the information necessary to authenticate within a guest using a SAML token. SAML Bearer token credentials relies on a guest alias that associates a guest account with the subject and certificate encoded in a SAML Bearer token obtained from the VMware SSO Server. Warning: This constant is part of a new feature in development. It may be changed at any time and may not have all supported functionality implemented.
-.credentials.user_name string For SAML_BEARER_TOKEN, this is the guest user to be associated with the credentials. For USERNAME_PASSWORD this is the guest username. Warning: This attribute is part of a new feature in development. It may be changed at any time and may not have all supported functionality implemented.

Optional. It is only relevant when type has value [USERNAME_PASSWORD, SAML_BEARER_TOKEN]. If no user is specified for SAML_BEARER_TOKEN, a guest dependent mapping will decide what guest user account is applied.

-.credentials.password secret password. Warning: This attribute is part of a new feature in development. It may be changed at any time and may not have all supported functionality implemented.

Optional. It is only relevant when type has value USERNAME_PASSWORD. This field is optional and it is only relevant when the value of type is USERNAME_PASSWORD.

-.credentials.saml_token secret SAML Bearer Token. Warning: This attribute is part of a new feature in development. It may be changed at any time and may not have all supported functionality implemented.

Optional. It is only relevant when type has value SAML_BEARER_TOKEN. This field is optional and it is only relevant when the value of type is SAML_BEARER_TOKEN.

-.path string The complete path to the file inside the guest that has to be transferred to the client. It cannot be a path to a directory or a symbolic link.

Response:

HTTP Status Code: 200

Response Body Structure:

"http://myurl.com"

Headers:

None

Type:

Name Type Description
bold = required
- URI The URL to which the user has to send HTTP GET request. Multiple GET requests cannot be sent to the URL simultaneously. The URL will become invalid once a successful GET request is sent. The host part of the URL is returned as * if the hostname to be used is the name of the server to which the call was made. For example, if the call is made to esx-svr-1.domain1.com, and the file is available for download from
https://esx-svr-1.domain1.com/guestFile?id=1&token=1234
, the URL returned may be {@literal aHR0cHM6Ly8mIzQyOy9ndWVzdEZpbGU/aWQ9MSZ0b2tlbj0xMjM0}. The client replaces the asterisk with the server name on which it invoked the call.
The URL is valid only for 10 minutes from the time it is generated. The URL becomes invalid whenever the virtual machine is powered off, suspended or unregistered. The URL will become invalid once a successful GET request is sent.

Errors:

HTTP Status Code Type Description
400 invalid_argument if path is not a file. XXX standard enhanced error link XXX
400 not_allowed_in_current_state if the virtual machine is not running.
404 not_found if the virtual machine is not found.
500 resource_busy if the virtual machine is busy.
503 service_unavailable if the VMware Tools is not running.
401 unauthenticated if the credentials object was not valid.
403 unauthorized if path cannot be accessed.
400 unsupported if the operation is not supported by the VMware Tools in the guest OS.