Product Version Catalogs APIs
APIs for managing LCM Product Version Catalog and it's signature
Table of Contents
1. Get product version catalogs
Get product version catalogs is used to get the latest supported VCF product patch metadata. This includes the products released as a part of the VCF release, async patches. This API will return a list of PVCs
1.1. Prerequisites
None
1.2. Steps
- Invoke the API.
cURL Request
$ curl 'https://sfo-vcf01.rainpole.io/v1/product-version-catalogs' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/product-version-catalogs 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: 5210
{
"version" : 1,
"sequenceNumber" : 1,
"creationTime" : "2025-03-21T09:42:55.024Z",
"publishedTime" : "2025-03-21T09:42:55.024Z",
"patches" : {
"VROPS" : [ {
"releaseDate" : "2025-03-21T09:42:55.024Z",
"description" : "Component description",
"productVersion" : "9.0.0.0.123456",
"artifacts" : {
"bundles" : [ {
"id" : "6cca9fae-49f2-461d-8a9e-927d5b2dc695",
"type" : "PATCH",
"name" : "6cca9fae-49f2-461d-8a9e-927d5b2dc695",
"binaries" : [ {
"fileName" : "VMware-Installer-9.0U1c-123456.x86_64.iso",
"size" : 632449024,
"checksum" : "3edbff64a8b9768e5cc5b294532f002abcbfd0d64a1aa8744bfc888dc5c34874"
} ]
}, {
"id" : "0dd3ecb6-5cd9-413b-b052-ac2529ec6488",
"type" : "INSTALL",
"name" : "0dd3ecb6-5cd9-413b-b052-ac2529ec6488",
"binaries" : [ {
"fileName" : "VMware-Installer-9.0U1c-123456.x86_64.zip",
"size" : 722649127,
"checksum" : "e049123f56f8b9fca34f33b6c066392fd338a25cc2806987751db8a1f5f1464b"
} ]
} ]
}
} ],
"VRSLCM" : [ {
"releaseDate" : "2025-03-21T09:42:55.024Z",
"description" : "Component description",
"productVersion" : "9.0.0.0.123456",
"artifacts" : {
"bundles" : [ {
"id" : "ffaa9718-b62a-4482-8eeb-860a6e33f629",
"type" : "PATCH",
"name" : "ffaa9718-b62a-4482-8eeb-860a6e33f629",
"binaries" : [ {
"fileName" : "VMware-Installer-9.0U1c-123456.x86_64.iso",
"size" : 632449024,
"checksum" : "3edbff64a8b9768e5cc5b294532f002abcbfd0d64a1aa8744bfc888dc5c34874"
} ]
}, {
"id" : "07c2f61a-eaeb-48cd-953c-c7bfa85150b9",
"type" : "INSTALL",
"name" : "07c2f61a-eaeb-48cd-953c-c7bfa85150b9",
"binaries" : [ {
"fileName" : "VMware-Installer-9.0U1c-123456.x86_64.zip",
"size" : 722649127,
"checksum" : "e049123f56f8b9fca34f33b6c066392fd338a25cc2806987751db8a1f5f1464b"
} ]
} ]
}
} ],
"VCENTER" : [ {
"releaseDate" : "2025-03-21T09:42:55.024Z",
"description" : "Component description",
"productVersion" : "9.0.0.0.123456",
"artifacts" : {
"bundles" : [ {
"id" : "0b7056c9-21ce-4e6c-9869-5121b7066973",
"type" : "PATCH",
"name" : "0b7056c9-21ce-4e6c-9869-5121b7066973",
"binaries" : [ {
"fileName" : "VMware-Installer-9.0U1c-123456.x86_64.iso",
"size" : 632449024,
"checksum" : "3edbff64a8b9768e5cc5b294532f002abcbfd0d64a1aa8744bfc888dc5c34874"
} ]
}, {
"id" : "4297ea51-2f34-4dad-b212-1f1c66cfcf46",
"type" : "INSTALL",
"name" : "4297ea51-2f34-4dad-b212-1f1c66cfcf46",
"binaries" : [ {
"fileName" : "VMware-Installer-9.0U1c-123456.x86_64.zip",
"size" : 722649127,
"checksum" : "e049123f56f8b9fca34f33b6c066392fd338a25cc2806987751db8a1f5f1464b"
} ]
} ]
}
} ],
"SDDC_MANAGER_VCF" : [ {
"releaseDate" : "2025-03-21T09:42:55.024Z",
"description" : "Component description",
"productVersion" : "9.0.0.0.123456",
"artifacts" : {
"bundles" : [ {
"id" : "b29afd16-935a-4fc0-8254-90e7ba8914d8",
"type" : "PATCH",
"name" : "b29afd16-935a-4fc0-8254-90e7ba8914d8",
"binaries" : [ {
"fileName" : "VMware-Installer-9.0U1c-123456.x86_64.iso",
"size" : 632449024,
"checksum" : "3edbff64a8b9768e5cc5b294532f002abcbfd0d64a1aa8744bfc888dc5c34874"
} ]
}, {
"id" : "5d3652ec-4740-44cc-b774-1965dcaf9ceb",
"type" : "INSTALL",
"name" : "5d3652ec-4740-44cc-b774-1965dcaf9ceb",
"binaries" : [ {
"fileName" : "VMware-Installer-9.0U1c-123456.x86_64.zip",
"size" : 722649127,
"checksum" : "e049123f56f8b9fca34f33b6c066392fd338a25cc2806987751db8a1f5f1464b"
} ]
} ]
}
} ],
"NSX_T_MANAGER" : [ {
"releaseDate" : "2025-03-21T09:42:55.024Z",
"description" : "Component description",
"productVersion" : "9.0.0.0.123456",
"artifacts" : {
"bundles" : [ {
"id" : "581c02cb-259a-4c8c-80c3-f779292f29e6",
"type" : "PATCH",
"name" : "581c02cb-259a-4c8c-80c3-f779292f29e6",
"binaries" : [ {
"fileName" : "VMware-Installer-9.0U1c-123456.x86_64.iso",
"size" : 632449024,
"checksum" : "3edbff64a8b9768e5cc5b294532f002abcbfd0d64a1aa8744bfc888dc5c34874"
} ]
}, {
"id" : "5dae1aa4-3338-4afb-8bf6-abeeabcfff83",
"type" : "INSTALL",
"name" : "5dae1aa4-3338-4afb-8bf6-abeeabcfff83",
"binaries" : [ {
"fileName" : "VMware-Installer-9.0U1c-123456.x86_64.zip",
"size" : 722649127,
"checksum" : "e049123f56f8b9fca34f33b6c066392fd338a25cc2806987751db8a1f5f1464b"
} ]
} ]
}
} ]
}
}
1.3. Related APIs
[_uploadproductversioncatalogwithsignature] API [_updateproductversioncatalogpatches] API [_getproductversioncataloguploadtask] API [_getproductversioncatalog] API
2. Upload product version catalogs
Reads in the pvc file, signature file, validates the pvc file against the signature file and uploads the new PVC file. This API returns a task ID for the upload task which can be used to query the status of the upload operation via [_getproductversioncataloguploadtask] API.
2.1. Prerequisites
PVC file and corresponding signature file patch must be provided
2.2. Steps
- Invoke the API.
cURL Request
$ curl 'https://sfo-vcf01.rainpole.io/v1/product-version-catalogs' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"productVersionCatalogFilePath" : "/home/vcf/productVersionCatalog.json",
"signatureFilePath" : "/home/vcf/productVersionCatalog.sig"
}'
HTTP Request
POST /v1/product-version-catalogs HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 141
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....
{
"productVersionCatalogFilePath" : "/home/vcf/productVersionCatalog.json",
"signatureFilePath" : "/home/vcf/productVersionCatalog.sig"
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Content-Length: 187
{
"taskId" : "f40f2069-548b-4c07-803d-521c60d33397",
"description" : "Validate product version catalog file against it's signature and persists into LCM",
"status" : "IN_PROGRESS"
}
2.3. Related APIs
[_getproductversioncatalogcontent] API [_updateproductversioncatalogpatches] API [_getproductversioncataloguploadtask] API
3. Update product version catalogs
Reads in a catalog file with new patches to add, signature file, validates the catalog file against the signature file and updates the Product Version Catalog patch entries with the newly included patches. This API returns a task ID for the update task which can be used to query the status of the update operation via [_getproductversioncataloguploadtask] API.
3.1. Prerequisites
PVC file and corresponding signature file patch must be provided
3.2. Steps
- Invoke the API.
cURL Request
$ curl 'https://sfo-vcf01.rainpole.io/v1/product-version-catalogs' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"productVersionCatalogFilePath" : "/home/vcf/productVersionCatalog.json",
"signatureFilePath" : "/home/vcf/productVersionCatalog.sig"
}'
HTTP Request
PATCH /v1/product-version-catalogs HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 141
Host: sfo-vcf01.rainpole.io
Authorization: Bearer etYWRta....
{
"productVersionCatalogFilePath" : "/home/vcf/productVersionCatalog.json",
"signatureFilePath" : "/home/vcf/productVersionCatalog.sig"
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Content-Length: 187
{
"taskId" : "f40f2069-548b-4c07-803d-521c60d33397",
"description" : "Validate product version catalog file against it's signature and persists into LCM",
"status" : "IN_PROGRESS"
}
3.3. Related APIs
[_getproductversioncatalogcontent] API [_uploadproductversioncatalogwithsignature] API [_getproductversioncataloguploadtask] API
4. Get Product Version Catalog Upload Task Status
Monitor the progress and retrieve the final status of a product version catalog upload operation given it's upload task ID.
4.1. Prerequisites
None
4.2. Steps
- Invoke the API.
cURL Request
$ curl 'https://sfo-vcf01.rainpole.io/v1/product-version-catalogs/upload-tasks/f40f2069-548b-4c07-803d-521c60d33397' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/product-version-catalogs/upload-tasks/f40f2069-548b-4c07-803d-521c60d33397 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: 185
{
"taskId" : "f40f2069-548b-4c07-803d-521c60d33397",
"description" : "Validate product version catalog file against it's signature and persists into LCM",
"status" : "SUCCEEDED"
}
4.3. Related APIs
[_uploadproductversioncatalogwithsignature] API
[_updateproductversioncatalogpatches] API
[_getproductversioncatalogcontent] API
Last updated 2025-03-21 15:13:04 +0530