Onboard Site

Onboard Site
Onboard a new site to the platform.

This onboarding workflow includes initiating a connection to the site, running prechecks and onboarding the site. These actions are performed asynchronously. The state of the site can be checked by calling GET on the status_url returned in the response. Onboarding is completed when the current_state of the site is READY.

The desired_state property in the body of this request allows you control the workflow more granularly. Providing a desired_state of PREPARE will run the prechecks and then halt, preventing the site from actually being onboarded to the platform. Providing a desired_state of ONBOARD will run the prechecks, and if they pass, will start onboarding the site to the platform.

Once a site has been onboarded, use PUT /sites/{site-id} to take any needed actions, like reconnecting the site if it becomes disconnected.

Notes:

  • The credentials provided are one-time use to establish a connection. They are never stored or re-used.
Request
URI
POST
https://{api_host}/ssp/sites
COPY
Query Parameters
boolean
force
Optional

Force onboard can be used if the site was onboarded to another SSP instance and references to the old SSP instance remain on the site. This can be known by running prechecks for the site and checking the result for the SiteRegistrationPrecheck. If this precheck fails, it means there are still references to another SSP instance on this site. For this case consider using the force parameter.

If true, all artifacts on the site referencing the other ssp instance will be deleted and the NSX Site will be onboarded to this SSP Instance. Setting Force to true will NOT bypass the need to have prechecks passing.

This parameter should be used with care, it does NOT replace offboarding the site from another SSP instance. If the site is onboarded and connected to another SSP instance, please offboard it from that SSP instance before onboarding it to a new one.


Request Body

All required details for onboarding a new site to SSP.

Site of type(s) application/json
Required  
OneOf
This class requires at least one of the following:
{
    "site_connection_info": {
        "connection_type": "DYNAMIC",
        "hostname": "192.168.0.1",
        "username": "admin",
        "password": "password123",
        "certificate": "{nsx_cert}"
    },
    "site_type": "NSX_MANAGER",
    "site_name": "nsx-mgr-0",
    "desired_state": "ONBOARD"
}
Authentication
This operation uses the following authentication methods.
Responses
202

ACCEPTED

Returns AsyncApiResponse of type(s) application/json
{
    "id": "2dc09816-34c0-43fb-99a6-b19b249a43da",
    "status_url": "https://{ssp_hostname}/ssp/sites/2dc09816-34c0-43fb-99a6-b19b249a43da"
}
string
id
Optional

UUID identifier of the response.

string
status_url
Optional

The URL to check the status of the operation.


400

Bad Request

Returns BadRequest of type(s) application/json
{
    "error_code": 0,
    "module_name": "string",
    "error_message": "string"
}
integer
error_code
Required  

HTTP Status or Application error code.

string
module_name
Optional

Module where the error happened.

string
error_message
Required  

Message describing the error.


401

Unauthorized

Returns Unauthorized of type(s) application/json
{
    "error_code": 0,
    "module_name": "string",
    "error_message": "string"
}
integer
error_code
Required  

HTTP Status or Application error code.

string
module_name
Optional

Module where the error happened.

string
error_message
Required  

Message describing the error.


403

Forbidden

Returns Forbidden of type(s) application/json
{
    "error_code": 0,
    "module_name": "string",
    "error_message": "string"
}
integer
error_code
Required  

HTTP Status or Application error code.

string
module_name
Optional

Module where the error happened.

string
error_message
Required  

Message describing the error.


412

Precondition Failed

Returns PreconditionFailed of type(s) application/json
{
    "error_code": 0,
    "module_name": "string",
    "error_message": "string"
}
integer
error_code
Required  

HTTP Status or Application error code.

string
module_name
Optional

Module where the error happened.

string
error_message
Required  

Message describing the error.


428

Precondition Required

Returns PreconditionRequired of type(s) application/json
{
    "error_code": 0,
    "module_name": "string",
    "error_message": "string"
}
integer
error_code
Required  

HTTP Status or Application error code.

string
module_name
Optional

Module where the error happened.

string
error_message
Required  

Message describing the error.


429

Too Many Requests

Returns TooManyRequests of type(s) application/json
{
    "error_code": 0,
    "module_name": "string",
    "error_message": "string"
}
integer
error_code
Required  

HTTP Status or Application error code.

string
module_name
Optional

Module where the error happened.

string
error_message
Required  

Message describing the error.


default

Unexpected error

Returns Error of type(s) application/json
{
    "error_code": 200001,
    "error_message": "An internal server error occurred.",
    "module_name": "site"
}
integer
error_code
Required  

HTTP Status or Application error code.

string
module_name
Optional

Module where the error happened.

string
error_message
Required  

Message describing the error.


Code Samples
COPY
                    curl -X POST -H 'Authorization: <value>' -H 'Content-Type: application/json' -d '{}' https://{api_host}/ssp/sites