Snapservice Sites probe

Snapservice Sites probe

Probe SSL connection to a remote vCenter and Data Protection Virtual Appliance. This API returns vCenter/Data Protection Virtual Appliance certificates.

If vCenter certificate is already not trusted, the API will return vCenter certificate with probe status as partial. User is expected to invoke probe API again with the user accepted vCenter certificate. Once the vCenter certificate accepted by the user is supplied to probe API, the API will return with probe status as completed along with Data Protection Virtual Appliance certificate. If Data Protection Virtual Appliance certificate is not trusted, user is expected to accept Data Protection appliance certificate and supply user accepted vCenter and Data Protection Virtual Appliance certificates as input to Add/Update site API.

If vCenter and Data Protection Virtual Appliance certificates are already trusted, the API will respond with probe status as completed. User can proceed with invoking Add/Update site API with no vCenter and Data Protection Virtual Appliance certificates.

This operation was added in vSphere API 9.0.0.0.

Returns an authorization error if you do not have all of the privileges described as follows:

  • Operation execution requires VsanDP.Replication.com.vmware.vsan.snapshotservice.Site.View.
Request
URI
POST
https://{host}/api/snapservice/sites?action=probe
COPY
Request Body

Spec used to probe remote vCenter and Data Protection Virtual Appliance connection.

Snapservice Sites ProbeSpec of type(s) application/json
Required

Show optional properties

{
    "vcenter_connection_spec": {}
}
{
    "vcenter_connection_spec": {
        "host": "string",
        "port": 0
    },
    "vcenter_creds": {
        "user": "string",
        "password": "string"
    },
    "vcenter_certificate": "string"
}
vcenter_connection_spec
Required

Connection specifications of the remote vCenter.

This property was added in vSphere API 9.0.0.0.

vcenter_creds
Optional

Credentials for the remote site with enough permissions.

The vCenter credentials are kept optional for future extensibility. Currently, API is expected to throw validation error if vCenter credentials are not supplied.

This property was added in vSphere API 9.0.0.0.

Must be set for current release. Field is set to optional for future use cases to support different authentication mechanisms.

string
vcenter_certificate
Optional

Certificate of the remote vCenter.

This property was added in vSphere API 9.0.0.0.

If set, remote vCenter certificate has been accepted by the user. If vCenter Certificate returned by probe API is already not trusted, it is expected to be supplied here.

Authentication
This operation uses the following authentication methods.
Responses
200

Probe result containing remote vCenter and Data Protection Virtual Appliance certificates that can be used to call add or update site.

Returns Snapservice Sites ProbeResult of type(s) application/json
{
    "status": "string",
    "vcenter_certificate": {
        "certificate": "string",
        "thumbprint": "string",
        "dns_names": [
            "string"
        ],
        "trusted": false
    },
    "va_certificate": {
        "certificate": "string",
        "thumbprint": "string",
        "dns_names": [
            "string"
        ],
        "trusted": false
    }
}
string
status
Required

Status of remote vCenter and Data Protection Virtual Appliance connection probe.

For more information see: Snapservice Sites ProbeStatus.

This property was added in vSphere API 9.0.0.0.

vcenter_certificate
Required

Certificate of the remote vCenter.

This property was added in vSphere API 9.0.0.0.

va_certificate
Optional

Certificate of the remote Data Protection Virtual Appliance.

This property was added in vSphere API 9.0.0.0.

If missing or null, probe status is partial and vCenter certificate needs to be accepted by the user.


400

Vapi Std Errors InvalidArgument If validation of the spec fails.

Vapi Std Errors Unsupported If the API is not supported.

Returns Vapi Std Errors Error of type(s) application/json
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": {
                        "id": "string",
                        "params": {
                            "params": "Vapi Std LocalizationParam Object"
                        }
                    },
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string"
}
array of object
messages
Required

Stack of one or more localizable messages for human error consumers.

The message at the top of the stack (first in the list) describes the error from the perspective of the operation the client invoked.

Each subsequent message in the stack describes the "cause" of the prior message.

object
data
Optional

Data to facilitate clients responding to the operation reporting a standard error to indicating that it was unable to complete successfully.

Operations may provide data that clients can use when responding to errors. Since the data that clients need may be specific to the context of the operation reporting the error, different operations that report the same error may provide different data in the error. The documentation for each each operation will describe what, if any, data it provides for each error it reports.

The Vapi Std Errors ArgumentLocations, Vapi Std Errors FileLocations, and Vapi Std Errors TransientIndication schemas are intended as possible values for this property. Vapi Std DynamicID may also be useful as a value for this property (although that is not its primary purpose). Some resources may provide their own specific schemas for use as the value of this property when reporting errors from their operations.

Some operations will not set this property when reporting errors.

string
error_type
Required

Discriminator field to help API consumers identify the structure type.

For more information see: Vapi Std Errors Error Type.

This property was added in vSphere API 6.7.2.

Can be missing or null for compatibility with preceding implementations.


401

If the caller is not authenticated.

Returns Vapi Std Errors Unauthenticated of type(s) application/json
This response body class contains all of the following: Vapi Std Errors Error
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": "Vapi Std NestedLocalizableMessage Object",
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string",
    "challenge": "string"
}
string
challenge
Optional

Indicates the authentication challenges applicable to the target API provider. It can be used by a client to discover the correct authentication scheme to use. The exact syntax of the value is defined by the specific provider, the protocol and authentication schemes used.

For example, a provider using REST may adhere to the WWW-Authenticate HTTP header specification, RFC7235, section 4.1. In this case an example challenge value may be: SIGN realm="27da1358-2ba4-11e9-b210-d663bd873d93",sts="http://vcenter/sso?vsphere.local", Basic realm="vCenter"

This property was added in vSphere API 7.0.0.0.

This property is optional because it was added in a newer version than its parent node.


403

If the caller is not authorized to perform the operation.

Returns Vapi Std Errors Unauthorized of type(s) application/json
This response body class contains all of the following: Vapi Std Errors Error
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": "Vapi Std NestedLocalizableMessage Object",
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string",
    "challenge": "string"
}
string
challenge
Optional

Indicates the authentication challenges applicable to the target API provider. It can be used by a client to discover the correct authentication scheme to use. The exact syntax of the value is defined by the specific provider, the protocol and authentication schemes used.

For example, a provider using REST may adhere to the WWW-Authenticate HTTP header specification, RFC7235, section 4.1. In this case an example challenge value may be: SIGN realm="27da158-2ba4-11e9-b",sts="http://vcenter/sso?vsphere.local", Basic realm="vCenter"

This property was added in vSphere API 9.1.0.0.

This property is optional because it was added in a newer version than its parent node.


500

If there is unknown internal error.

Returns Vapi Std Errors Error of type(s) application/json
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": "Vapi Std NestedLocalizableMessage Object",
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string"
}
array of object
messages
Required

Stack of one or more localizable messages for human error consumers.

The message at the top of the stack (first in the list) describes the error from the perspective of the operation the client invoked.

Each subsequent message in the stack describes the "cause" of the prior message.

object
data
Optional

Data to facilitate clients responding to the operation reporting a standard error to indicating that it was unable to complete successfully.

Operations may provide data that clients can use when responding to errors. Since the data that clients need may be specific to the context of the operation reporting the error, different operations that report the same error may provide different data in the error. The documentation for each each operation will describe what, if any, data it provides for each error it reports.

The Vapi Std Errors ArgumentLocations, Vapi Std Errors FileLocations, and Vapi Std Errors TransientIndication schemas are intended as possible values for this property. Vapi Std DynamicID may also be useful as a value for this property (although that is not its primary purpose). Some resources may provide their own specific schemas for use as the value of this property when reporting errors from their operations.

Some operations will not set this property when reporting errors.

string
error_type
Required

Discriminator field to help API consumers identify the structure type.

For more information see: Vapi Std Errors Error Type.

This property was added in vSphere API 6.7.2.

Can be missing or null for compatibility with preceding implementations.


503

if the system is unable to communicate with a service to complete the request.

Returns Vapi Std Errors ServiceUnavailable of type(s) application/json
This response body class contains all of the following: Vapi Std Errors Error
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "params": {
                "params": {
                    "s": "string",
                    "dt": "string",
                    "i": 0,
                    "d": "number",
                    "l": "Vapi Std NestedLocalizableMessage Object",
                    "format": "string",
                    "precision": 0
                }
            },
            "localized": "string"
        }
    ],
    "data": {},
    "error_type": "string"
}

Code Samples
COPY
                    curl -X POST -H 'Authorization: <value>' -H 'Content-Type: application/json' -d '{"vcenter_connection_spec":"{}"}' https://{api_host}/api/snapservice/sites?action=probe