Bundles APIs
APIs for managing Bundles
Table of Contents
1. Upload a Bundle
Offline:
- Upload a Bundle API is used to upload Bundles which are downloaded using Bundle Transfer Utility tool.
Tip : Please refer to the VMware Cloud Foundation documentation for more information on the Bundle Transfer Utility tool.
1.1. Prerequisites
The following data is required:
- Bundle file path. 
- Bundle manifest file path. 
- Bundle manifest signature file path. 
Tip : Refer to: BundleUploadSpec.
1.2. Steps
- Invoke the API. This API returns a task which can be polled and monitored.
cURL Request
$ curl 'https://sfo-vcf01.rainpole.io/v1/bundles' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '{
  "bundleFilePath" : "/home/vcf/bundles/bundle-11237.tar",
  "manifestFilePath" : "/home/vcf/bundles/bundle-11237.manifest",
  "signatureFilePath" : "/home/vcf/bundles/bundle-11237.manifest.sig"
}'
HTTP Request
POST /v1/bundles HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 198
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....
{
  "bundleFilePath" : "/home/vcf/bundles/bundle-11237.tar",
  "manifestFilePath" : "/home/vcf/bundles/bundle-11237.manifest",
  "signatureFilePath" : "/home/vcf/bundles/bundle-11237.manifest.sig"
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/91a86587-0466-437e-97d6-a25e0791ff09
Content-Length: 366
{
  "id" : "91a86587-0466-437e-97d6-a25e0791ff09",
  "name" : "Upload BUNDLE - PSC:6.7.0-13010631 VCENTER:6.7.0-13010631",
  "type" : "BUNDLE_UPLOAD",
  "status" : "IN_PROGRESS",
  "creationTimestamp" : "2023-05-16T03:12:16.737Z",
  "resources" : [ {
    "resourceId" : "4686aa89-fc52-429f-86cf-6fe4f34fe361",
    "type" : "BUNDLE"
  } ],
  "isCancellable" : false
}
- Poll the status of the task using the task API with the ID from the response of the previous API.
Tip : Refer to: Get a Task.
2. Get the Bundles
- Get the Bundles API is used to get all the bundles.
2.1. Prerequisites
None
2.2. Steps
- Invoke the API.
cURL Request
$ curl 'https://sfo-vcf01.rainpole.io/v1/bundles' -i -X GET \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/bundles HTTP/1.1
Accept: application/json
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1773
{
  "elements" : [ {
    "id" : "4686aa89-fc52-429f-86cf-6fe4f34fe361",
    "type" : "VMWARE_SOFTWARE",
    "description" : "ESX update bundle -  13004448(67EP7)==>13010696 (vsphere67U2)",
    "version" : "253.0.0-111959",
    "severity" : null,
    "vendor" : "VMware",
    "releasedDate" : "2019-05-10T10:29:10.645Z",
    "isCumulative" : false,
    "isCompliant" : null,
    "sizeMB" : 453.0,
    "downloadStatus" : "SUCCESSFUL",
    "components" : [ {
      "description" : "ESX_HOST Update Bundle",
      "vendor" : "VMware",
      "releasedDate" : "2019-05-10T10:29:10.645Z",
      "toVersion" : "6.7.0-13006603",
      "fromVersion" : "6.7.0-13004448",
      "imageType" : "PATCH",
      "id" : "a65d9d83-88b9-475f-a2ba-ee5d9be34f8d",
      "type" : "HOST",
      "isUserInputRequired" : null
    } ],
    "applicabilityStatus" : null,
    "applicabilityOrder" : null,
    "isPartiallyUpgraded" : null
  }, {
    "id" : "4c52c023-40d5-4569-b348-99ec9496728b",
    "type" : "VMWARE_SOFTWARE",
    "description" : "vCenter update bundle",
    "version" : "253.0.0-111959",
    "severity" : null,
    "vendor" : "VMware",
    "releasedDate" : "2019-05-10T10:29:10.645Z",
    "isCumulative" : false,
    "isCompliant" : null,
    "sizeMB" : 453.0,
    "downloadStatus" : "SUCCESSFUL",
    "components" : [ {
      "description" : "vCenter Update Bundle",
      "vendor" : "VMware",
      "releasedDate" : "2019-05-10T10:29:10.645Z",
      "toVersion" : "6.7.0-13006603",
      "fromVersion" : "6.7.0-13004448",
      "imageType" : "PATCH",
      "id" : "a67d9d83-88b9-475f-a2ba-ee5d9be34f4d",
      "type" : "VCENTER",
      "isUserInputRequired" : null
    } ],
    "applicabilityStatus" : null,
    "applicabilityOrder" : null,
    "isPartiallyUpgraded" : null
  } ]
}
3. Get a Bundle
- Get a Bundle API is used to get a specific bundle.
3.1. Prerequisites
The following data is required:
- ID of the Bundle
3.2. Steps
- Invoke the API.
cURL Request
$ curl 'https://sfo-vcf01.rainpole.io/v1/bundles/4686aa89-fc52-429f-86cf-6fe4f34fe361' -i -X GET \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/bundles/4686aa89-fc52-429f-86cf-6fe4f34fe361 HTTP/1.1
Accept: application/json
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 803
{
  "id" : "4c52c023-40d5-4569-b348-99ec9496728b",
  "type" : "VMWARE_SOFTWARE",
  "description" : "vCenter update bundle",
  "version" : "253.0.0-111959",
  "severity" : null,
  "vendor" : "VMware",
  "releasedDate" : "2019-05-10T10:29:10.645Z",
  "isCumulative" : false,
  "isCompliant" : null,
  "sizeMB" : 453.0,
  "downloadStatus" : "SUCCESSFUL",
  "components" : [ {
    "description" : "vCenter Update Bundle",
    "vendor" : "VMware",
    "releasedDate" : "2019-05-10T10:29:10.645Z",
    "toVersion" : "6.7.0-13006603",
    "fromVersion" : "6.7.0-13004448",
    "imageType" : "PATCH",
    "id" : "a67d9d83-88b9-475f-a2ba-ee5d9be34f4d",
    "type" : "VCENTER",
    "isUserInputRequired" : null
  } ],
  "applicabilityStatus" : null,
  "applicabilityOrder" : null,
  "isPartiallyUpgraded" : null
}
4. Update Bundle for Downloading
Online:
- Update a Bundle for downloading from depot API is used to Download Bundles from the depot.
Tip : Refer to: Update Depot Settings to configure My VMware and Dell EMC Support Account in SDDC Manager.
4.1. Prerequisites
The following data is required
- ID of the bundle to be downloaded.
Tip : Refer to: BundleUpdateSpec and BundleDownloadSpec.
4.2. Steps
- Invoke the API. This API returns a task which can be polled and monitored.
cURL Request
$ curl 'https://sfo-vcf01.rainpole.io/v1/bundles/4686aa89-fc52-429f-86cf-6fe4f34fe361' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer etYWRta....' \
    -d '{
  "bundleDownloadSpec" : {
    "downloadNow" : true
  }
}'
HTTP Request
PATCH /v1/bundles/4686aa89-fc52-429f-86cf-6fe4f34fe361 HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 59
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....
{
  "bundleDownloadSpec" : {
    "downloadNow" : true
  }
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/b356abcf-33c2-46bf-bbaa-e80c5974d1a8
Content-Length: 370
{
  "id" : "b356abcf-33c2-46bf-bbaa-e80c5974d1a8",
  "name" : "Download BUNDLE - PSC:6.7.0-13010631 VCENTER:6.7.0-13010631",
  "type" : "BUNDLE_DOWNLOAD",
  "status" : "IN_PROGRESS",
  "creationTimestamp" : "2023-05-16T03:12:15.893Z",
  "resources" : [ {
    "resourceId" : "4686aa89-fc52-429f-86cf-6fe4f34fe361",
    "type" : "BUNDLE"
  } ],
  "isCancellable" : false
}
- Poll the status of the task using the task API with the ID from the response of the previous API.
Tip : Refer to: Get a Task.
Last updated 2023-05-21 23:30:49 PDT
