Target Upgrade Version APIs

Target Upgrade Version APIs

APIs for managing domains target upgrade versions

Table of Contents

1. Retrieve and update target upgrade versions for domain

Fetch domains target upgrade version API returns paged information about all domains in the system. For domains with no target version set response will return response where targetVersion will be empty string.

1.1. Steps to fetch domains target upgrade version. API

  • Invoke the GET /v1/releases/domains API. This API returns information about all domains in the system.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/releases/domains' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

GET /v1/releases/domains HTTP/1.1
Content-Type: application/json
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 317

{
  "elements" : [ {
    "domainId" : "12fd6423-00db-474f-8b61-be184505e455",
    "targetVersion" : "4.1.0.0",
    "patches" : [ ],
    "isCustomizedBom" : false
  }, {
    "domainId" : "12fd6423-00db-474f-8b61-be184505e455",
    "targetVersion" : "4.1.0.0",
    "patches" : [ ],
    "isCustomizedBom" : false
  } ]
}

2. Fetch specific domain target version API

Returns information about target upgrade version for a specific domain API. If domain has no target version set response will return response where targetVersion will be empty string.

2.1. Prerequisites API

The following data is required:

  • Domain ID.

2.2. Steps API

  • Invoke the GET /v1/releases/domains/{domainId} API API. This API returns information about target upgrade version for a specific domain.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/releases/domains/12fd6423-00db-474f-8b61-be184505e455' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

GET /v1/releases/domains/12fd6423-00db-474f-8b61-be184505e455 HTTP/1.1
Content-Type: application/json
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 136

{
  "domainId" : "12fd6423-00db-474f-8b61-be184505e455",
  "targetVersion" : "4.1.0.0",
  "patches" : [ ],
  "isCustomizedBom" : false
}

3. Get available flexible product patches API

Get Flexible Product Patches is used to get all upgradable product patches for a given domain (includes VCF release, async and hot patches).

3.1. Prerequisites API

The following data is required:

  • ID of the domain

3.2. Steps API

  • Invoke the API.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/releases/domains/domainId/custom-patches' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

GET /v1/releases/domains/domainId/custom-patches HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 21

{
  "patches" : [ ]
}

4. Validate domain release view API

Validate the target selected upgrade release BOM or custom BOM for a domain by its ID.

4.1. Prerequisites API

The following data is required:

  • ID of the domain

4.2. Steps API

  • Invoke the API.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/releases/domains/12fd6423-00db-474f-8b61-be184505e455' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '{
  "targetVersion" : "4.3.0.0",
  "patches" : [ ]
}'

HTTP Request

PATCH /v1/releases/domains/12fd6423-00db-474f-8b61-be184505e455 HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 52
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

{
  "targetVersion" : "4.3.0.0",
  "patches" : [ ]
}

HTTP Response

HTTP/1.1 200 OK

5. Get validation for domain release view API

Monitor the progress of domain target state validation task by the validation id.

5.1. Prerequisites API

The following data is required:

  • ID of validation process.

5.2. Steps API

  • Invoke the API.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/releases/domains/validations/validationId' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

GET /v1/releases/domains/validations/validationId HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 200 OK

6. Set/Update domain target upgrade version API

This API API is used to set or update domain target upgrade version. If the given domain does not have a previously stored target upgrade version, invoking the API will save the target version. If the domain already has a stored target upgrade version, invoking the API will update the version. You can save a target upgrade version along with customizations, which should be included in the patches field.

6.1. Prerequisites API

The following data is required:

  • Domain ID.

  • Target upgrade version.

6.2. Steps API

  • Invoke the save/update API API for specific domain.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/releases/domains/12fd6423-00db-474f-8b61-be184505e455' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '{
  "targetVersion" : "4.3.0.0",
  "patches" : [ ]
}'

HTTP Request

PATCH /v1/releases/domains/12fd6423-00db-474f-8b61-be184505e455 HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 52
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

{
  "targetVersion" : "4.3.0.0",
  "patches" : [ ]
}

HTTP Response

HTTP/1.1 200 OK

7. Fetch possible domain target versions for a domain API

This API API returns all known to the system future target versions for a specific domain. If some of them are not allowed to upgrade (e.g. stepping stone) includes localized message why.

7.1. Prerequisites API

The following data is required:

  • Domain ID.

7.2. Steps API

  • Invoke the GET /v1/releases/domains/{domainId}/future-releases API API.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/releases/domains/12fd6423-00db-474f-8b61-be184505e455/future-releases' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

GET /v1/releases/domains/12fd6423-00db-474f-8b61-be184505e455/future-releases HTTP/1.1
Content-Type: application/json
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 3224

{
  "elements" : [ {
    "applicabilityStatus" : "APPLICABLE",
    "product" : "vcf",
    "version" : "3.5.0",
    "description" : "VMware Cloud Foundation 3.5.0 Release",
    "releaseDate" : "2018-12-13T00:00:00.000Z",
    "bom" : [ {
      "name" : "DOMAIN_MANAGER",
      "version" : "3.5.0",
      "publicName" : "SDDC Manager"
    }, {
      "name" : "VCENTER",
      "version" : "6.7.0-10244745",
      "publicName" : "vCenter Server Appliance"
    }, {
      "name" : "HOST",
      "version" : "6.7.0-10764712",
      "publicName" : "VMware ESXi"
    }, {
      "name" : "NSX_MANAGER",
      "version" : "6.4.4-11197766",
      "publicName" : "NSX-V Data Center"
    }, {
      "name" : "VROPS",
      "version" : "7.0.0-10098133",
      "publicName" : "VMware vRealize Operations Manager"
    } ],
    "isApplicable" : true,
    "sku" : [ ],
    "updates" : [ ],
    "patchBundles" : [ ]
  }, {
    "reasonNotApplicable" : {
      "component" : "VCF",
      "messageKey" : "LCM_TARGET_VERSION_IS_STEPPING_STONE",
      "arguments" : [ "3.5.0" ],
      "message" : "VMware Cloud Foundation 3.5.0 is a stepping stone release that workload domains must upgrade to prior to upgrading to later releases."
    },
    "applicabilityStatus" : "NOT_APPLICABLE",
    "product" : "vcf",
    "version" : "3.0.0",
    "description" : "VMware Cloud Foundation 3.0.0 Release",
    "releaseDate" : "2018-09-20T00:00:00.000Z",
    "bom" : [ {
      "name" : "DOMAIN_MANAGER",
      "version" : "3.0.0",
      "publicName" : "SDDC Manager"
    }, {
      "name" : "VCENTER",
      "version" : "6.5.0-9451637",
      "publicName" : "vCenter Server Appliance"
    }, {
      "name" : "HOST",
      "version" : "6.5.0-9298722",
      "publicName" : "VMware ESXi"
    }, {
      "name" : "NSX_MANAGER",
      "version" : "6.4.1-8599035",
      "publicName" : "NSX-V Data Center"
    }, {
      "name" : "VROPS",
      "version" : "6.7.0-8183617",
      "publicName" : "VMware vRealize Operations Manager"
    } ],
    "isApplicable" : false,
    "notApplicableReason" : "VMware Cloud Foundation 3.5.0 is a stepping stone release that workload domains must upgrade to prior to upgrading to later releases.",
    "sku" : [ ],
    "updates" : [ ],
    "patchBundles" : [ {
      "bundleId" : "178e02e7-43c1-4624-be7b-ee3725f185d5",
      "bundleType" : "EVORACK",
      "bundleElements" : [ "SDDC_MANAGER_VCF" ],
      "cumulativeFromVcfVersion" : "2.3.0"
    }, {
      "bundleId" : "17daf69a-f897-451f-a8e4-e3e135b49523",
      "bundleType" : "EVORACK",
      "bundleElements" : [ "SDDC_MANAGER_VCF" ],
      "cumulativeFromVcfVersion" : "2.3.0"
    }, {
      "bundleId" : "0e9e1c53-4897-4209-9fab-accabfc9e0a8",
      "bundleType" : "VMWARE_SOFTWARE",
      "bundleElements" : [ "VCENTER" ],
      "cumulativeFromVcfVersion" : "2.3.0"
    }, {
      "bundleId" : "c403c1f6-bd2e-4960-8968-40edc65a3908",
      "bundleType" : "VMWARE_SOFTWARE",
      "bundleElements" : [ "ESX_HOST" ],
      "cumulativeFromVcfVersion" : "2.3.0"
    }, {
      "bundleId" : "05874613-c562-464d-a84e-cbb4629ec17f",
      "bundleType" : "VMWARE_SOFTWARE",
      "bundleElements" : [ "NSX_MANAGER" ],
      "cumulativeFromVcfVersion" : "2.3.0"
    } ]
  } ]
}

8. Fetch all bundles required for skip upgrade to target version for a domain API

This API API returns all bundles needed to upgrade a domain from current version to target version. Also includes bundle order field and bundle applicability status. If target release is not set returns empty response. Each bundle have an applicability status for the particular domain - PENDING, AVAILABLE, IN PROGRESS, SUCCESS or FAILED.

8.1. Prerequisites API

The following data is required:

  • Domain ID.

8.2. Steps API

  • Invoke the GET /v1/bundles/domains/{domainId} API API.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/bundles/domains/12fd6423-00db-474f-8b61-be184505e455' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

GET /v1/bundles/domains/12fd6423-00db-474f-8b61-be184505e455 HTTP/1.1
Content-Type: application/json
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 22

{
  "elements" : [ ]
}

9. Fetch all bundles required for skip upgrade to target version for a domain for vxRail case API

This API API returns all bundles needed to upgrade a domain from current version to target version including vxRail. Also includes bundle order field and bundle applicability status. If target release is not set returns empty response. Each bundle have an applicability status for the particular domain - PENDING, AVAILABLE, IN PROGRESS, SUCCESS or FAILED.

9.1. Prerequisites API

The following data is required:

  • Domain ID.

9.2. Steps API

  • Invoke the GET /v1/bundles/domains/{domainId} API API.

cURL Request

$ curl 'https://sfo-vcf01.rainpole.io/v1/bundles/domains/12fd6423-00db-474f-8b61-be184505e455' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer etYWRta....'

HTTP Request

GET /v1/bundles/domains/12fd6423-00db-474f-8b61-be184505e455 HTTP/1.1
Content-Type: application/json
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....

HTTP Response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 22

{
  "elements" : [ ]
}

Last updated 2024-06-21 01:22:12 -0700

Operations
DELETE
Delete Release By Domain ID
Delete the target release by its domain ID
GET
Get Domain Release View Validation
Retrieve a domain target state validation by its validation id
GET
Get Release By Domain
Retrieve a release view for a domain by its ID
GET
Get Release By Domains
Retrieve a release view for all domains
PATCH
Update Release By Domain ID
Modify the target upgrade release for a domain by its ID
POST
Validate Release By Domain ID
Validate the target selected upgrade version for the domain