Trigger Sspi Upgrade

Trigger Sspi Upgrade
Execute appliance upgrade operation

Executes the appliance upgrade operation to transition the system to the target version based on the specified action. This asynchronous operation orchestrates the complete upgrade workflow including management cluster, workload clusters, and appliance VM.

Supported actions:

PRECHECKS_ONLY: Runs only pre-upgrade validation checks without performing the upgrade. This operation is idempotent and non-disruptive; it can be safely run on a live production system to assess readiness before a maintenance window. PRECHECKS_ONLY is only allowed when the upgrade status is NOT_STARTED. Only one pre-checks operation can run at a time.

START: Runs pre-checks followed by the full upgrade. This is the standard upgrade flow. START is only allowed when the upgrade status is NOT_STARTED. Requires a scheduled maintenance window as the appliance VM will reboot during the upgrade, causing temporary unavailability of the management interface. Ensure a backup is taken before initiating. Do not interrupt the upgrade process once initiated unless absolutely necessary for emergency recovery.

CONTINUE: Starts the upgrade without running pre-checks. CONTINUE is only allowed when the upgrade status is NOT_STARTED and pre-checks have completed successfully, returns an error for any other state.

RETRY: Resumes the upgrade workflow from the failed step. Already completed upgrade steps are skipped automatically. RETRY is only allowed when the upgrade status is FAILED, which means pre-checks have already passed. If pre-checks failed, use START again.

Prerequisites:

  • Upgrade Manager must be upgraded to target version (POST /upgrade/manager?action=upgrade)
  • A valid upgrade package must be available

Recommended workflow:

  1. Check versions (GET /upgrade/version-summary), review packages (GET /upgrade/packages), and upgrade the Upgrade Manager (POST /upgrade/manager).
  2. Run pre-checks (POST /upgrade?action=PRECHECKS_ONLY) and review results (GET /upgrade/status).
  3. During a maintenance window, start the upgrade (POST /upgrade?action=START or POST /upgrade?action=CONTINUE if pre-checks already passed), and monitor progress (GET /upgrade/status).
  4. If upgrade fails, address the issue and retry (POST /upgrade?action=RETRY).
  5. Review upgrade history (GET /upgrade/history) after completion.
Request
URI
POST
https://{api_host}/sspi/upgrade
COPY
Query Parameters
action
Required  

The upgrade action to perform.

PRECHECKS_ONLY: Runs only pre-upgrade validation checks (idempotent). PRECHECKS_ONLY can only be performed when the upgrade status is NOT_STARTED. Only one pre-checks operation can run at a time. START: Runs pre-checks followed by the full upgrade. START can only be performed when the upgrade status is NOT_STARTED. CONTINUE: Starts the upgrade without pre-checks. CONTINUE can only be used when the upgrade status is NOT_STARTED and pre-checks have completed successfully. RETRY: Resumes the upgrade workflow from the failed step, skipping completed steps. RETRY can only be used when the upgrade status is FAILED.


Authentication
This operation uses the following authentication methods.
Responses
202

Upgrade or pre-checks operation has been accepted and initiated. The operation is executing asynchronously. Use the status_url in the response to monitor progress and track completion.

Returns AsyncApiResponse of type(s) application/json
{
    "id": "b8f47985-22ed-3193-bca8-11c7b025cbce",
    "status_url": "/operation/status"
}
string
id
Optional

UUID identifier of the response.

string
status_url
Optional

The URL to check the status of the operation.


400

The system does not meet prerequisites for the requested action. Possible reasons include: the upgrade status does not permit the requested action (e.g., RETRY when upgrade is not FAILED, CONTINUE when pre-checks have not completed successfully), the Upgrade Manager has not been upgraded, or the action parameter is invalid.

Returns Error 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.


409

Conflict. An upgrade or pre-checks operation is already in progress. Monitor the current operation using GET /upgrade/status.

Returns Error 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 occurred while initiating the upgrade or pre-checks operation. Consult the error response details and system logs for diagnostic information.

Returns Error of type(s) application/json
"Error Object"
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>' https://{api_host}/sspi/upgrade