openapi: 3.0.1 info: title: Nutanix Lifecycle Management APIs description: "Manage Infrastructure, Software and Firmware Upgrades." version: 1.0.0 x-logo: altText: Lifecycle Logo url: https://developers.nutanix.com/api/v1/namespaces/lifecycle/images/lifecycle-logo-img.svg x-repo-name: lifecycle x-minimum-negotiation-version: v4.2 servers: - url: "https://{host}:{port}/api" security: - basicAuthScheme: [] - apiKeyAuthScheme: [] tags: - name: Config description: | Represents the Configuration of LCM. Configuration includes the settings or configurations that can or are applied to LCM. - name: Entities description: | Represents the upgradable entities in LCM. Entities are the firmware or software components that can be upgraded via LCM. - name: Notifications description: | Represents the Notifications in LCM. Notifications are structures that capture information about any actions that are needed to be taken by user before initiating an upgrade. - name: Recommendations description: | Represents the Recommendations for upgrades that user intends to perform. Recommendations are the suggested upgrades for given entities based on the current state of the entities. - name: Upgrades description: | Represents the Upgrade of an entity. Upgrade is the process of upgrading one or more entities to a newer version. - name: Prechecks description: | Represents the Prechecks for upgrades that user intends to perform. Prechecks are the checks that are performed before initiating an upgrade to ensure that the upgrade can be performed without any issues. - name: Inventory description: | Represents the Inventory details. Inventory is the process of collecting the details of all the Entities. - name: Images description: | Represents the Images that are used to upgrade the entities via LCM. - name: Status description: | Represents the Status of LCM. Status represents details about a pending or ongoing action in LCM. - name: LcmSummaries description: | Represents the Summaries of LCMs of PC environment including underlying PEs. x-displayName: Lcm Summaries - name: UpgradeSelections description: | Represents the Upgrade Selection made by user for a cluster. Dark-site customers can save and export these selections to get relevant artifacts needed for the upgrade from Portal. Once these artifacts are uploaded to the cluster, users can resume the upgrade with the saved selection. x-displayName: Upgrade Selections - name: LcmHistories description: Represents the history of operations performed on all clusters of a PC environment including underlying PEs. x-displayName: Lcm Histories paths: /lifecycle/v4.2/resources/bundles/{extId}: get: tags: - Bundles summary: Information about a bundle description: Get bundle details for bundle id. operationId: getBundleById parameters: - name: extId in: path description: ExtId of the LCM bundle required: true style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: f5118dd3-8d29-4b79-b664-14171bc91cf4 responses: "200": description: Queried bundle information content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.resources.Bundle' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/bundles/{extId}\ \ Get operation" "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/bundles/{extId}\ \ Get operation" "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/bundles/{extId}\ \ Get operation" x-permissions: operationName: View Bundle deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin - name: Prism Viewer - name: Cluster Viewer x-rate-limit: - type: xsmall count: 10 timeUnit: seconds - type: Small count: 10 timeUnit: seconds - type: Large count: 10 timeUnit: seconds - type: XLarge count: 10 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "7.0" x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.BundlesApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.Bundles.GetBundleByIdRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.GetBundleByIdApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ BundlesApi bundlesApi = new BundlesApi(apiClient);\n\n \n \ \ String extId = \"CF2E88B8-CBb3-Cb2B-b7dF-E3BEae1Fbdbe\";\n\n \ \ try {\n // Pass in parameters using the request builder\ \ object associated with the operation.\n GetBundleByIdApiResponse\ \ getBundleByIdApiResponse = bundlesApi.getBundleById(GetBundleByIdRequest.builder()\n\ \ .extId(extId)\n .build());\n\n \ \ System.out.println(getBundleByIdApiResponse.toString());\n\n \ \ } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: "\nimport { ApiClient, BundlesApi } from \"@nutanix-api/lifecycle-js-client\"\ ;\n\n// Configure the client\nlet apiClientInstance = new ApiClient();\n\ // IPv4/IPv6 address or FQDN of the cluster\napiClientInstance.host = 'localhost';\n\ // Port used for the connection. PC products typically use port 9440, while\ \ NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\napiClientInstance.port = '9440';\n// Max\ \ retry attempts while reconnecting on a loss of connection\napiClientInstance.maxRetryAttempts\ \ = 5;\n// Interval in ms to use during retry attempts\napiClientInstance.retryInterval\ \ = 5000;\n// UserName to connect to the cluster\napiClientInstance.username\ \ = 'username';\n// Password to connect to the cluster\napiClientInstance.password\ \ = 'password';\n// Please add authorization information here if needed.\n\ let bundlesApi = new BundlesApi(apiClientInstance);\n\nfunction sample()\ \ {\n\n \n let extId = \"3BF6c86a-2d5d-c7FB-7be0-eBdDaDeab373\";\n\ \n\n\n\n\n bundlesApi.getBundleById(extId).then(({data, response}) =>\ \ {\n console.log(`API returned the following status code: ${response.status}`);\n\ \ console.log(data.getData());\n }).catch((error) => {\n \ \ console.log(`Error is: ${error}`);\n });\n\n}\nsample()\n" - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ bundles_api = ntnx_lifecycle_py_client.BundlesApi(api_client=client)\n\ \ \n ext_id = \"ACBea1CD-AB2d-c1De-F7Cd-2E9246FACA9F\"\n\n\n try:\n\ \ api_response = bundles_api.get_bundle_by_id(extId=ext_id)\n \ \ print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/bundles\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n BundlesServiceApiInstance\ \ *api.BundlesServiceApi\n)\n\nfunc main() {\n ApiClientInstance = client.NewApiClient()\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n ApiClientInstance.Host\ \ = \"localhost\"\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n ApiClientInstance.Port\ \ = 9440\n // Interval in ms to use during retry attempts\n ApiClientInstance.RetryInterval\ \ = 5 * time.Second\n // Max retry attempts while reconnecting on a loss\ \ of connection\n ApiClientInstance.MaxRetryAttempts = 5\n // UserName\ \ to connect to the cluster\n ApiClientInstance.Username = \"username\"\ \n // Password to connect to the cluster\n ApiClientInstance.Password\ \ = \"password\"\n // Please add authorization information here if needed.\n\ \ BundlesServiceApiInstance = api.NewBundlesServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n extId := \"EFc733EF-7f93-15DF-8Bdc-18e0AdABa372\"\ \n\n\n request := bundles.GetBundleByIdRequest{ ExtId: &extId }\n \ \ response, error := BundlesServiceApiInstance.GetBundleById(ctx, &request)\n\ \ if error != nil {\n fmt.Println(error)\n return\n \ \ }\n data, _ := response.GetData().(import1.Bundle)\n fmt.Println(data)\n\ \n}\n\n" - lang: cURL source: |2+ curl --request GET \ --url "https://host:port/api/lifecycle/v4.2/resources/bundles/8d0B072b-FC5A-eA6c-C3Fa-DCdfECeAC3d6" \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method GET \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/bundles/2CE3c5fe-AdBE-DbDD-C8BF-cbbbcd35ED9C" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ BundlesApi bundlesApi = new BundlesApi(client);\n\n String extId\ \ = \"EdEfd7A9-bcd6-FBC5-d391-0ABC388f12dD\";\n\n // Create request\ \ object with parameters\n var request = new GetBundleByIdRequest\ \ {\n ExtId = extId\n };\n try {\n GetBundleByIdApiResponse\ \ getBundleByIdApiResponse = bundlesApi.GetBundleById(request);\n \ \ } catch (ApiException ex) {\n Console.WriteLine(ex.Message);\n\ \ }\n }\n }\n}\n" delete: tags: - Bundles summary: Delete an LCM bundle description: Delete bundle for the specified ExtId. operationId: deleteBundleById parameters: - name: extId in: path description: ExtId of the LCM bundle required: true style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 604abbe4-896d-4be2-8c8f-eef08339bc1c - name: NTNX-Request-Id in: header description: | A unique identifier that is associated with each request. The provided value must be opaque and preferably in Universal Unique Identifier (UUID) format. This identifier is also used as an idempotence token for safely retrying requests in case of network errors. All the supported Nutanix API clients add this auto-generated request identifier to each request. required: true style: simple explode: false schema: type: string format: uuid example: ce045c04-e565-4c4f-88a1-cf24244087fa responses: "202": description: Deleted bundle matching the input UUID headers: Location: style: simple explode: false schema: pattern: "^((http[s]?|nfs):\\/)?\\/?(([a-zA-Z0-9\\-\\.]+)|(\\d{1,3}(\\\ .\\d{1,3}){3})|(\\[[0-9a-fA-F:]+\\]))(:\\d+)?(\\/[^\\s?#]*)?(\\\ ?[^#\\s]*)?(#[^\\s]*)?$" type: string description: Indicates the target of a redirection or the URL of a newly created resource. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/prism.v4.3.config.TaskReference' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/bundles/{extId}\ \ Delete operation" "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/bundles/{extId}\ \ Delete operation" "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/bundles/{extId}\ \ Delete operation" x-permissions: operationName: Delete Bundle deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin x-rate-limit: - type: xsmall count: 8 timeUnit: seconds - type: Small count: 8 timeUnit: seconds - type: Large count: 8 timeUnit: seconds - type: XLarge count: 8 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "7.0" x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.BundlesApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.Bundles.DeleteBundleByIdRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.DeleteBundleByIdApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ BundlesApi bundlesApi = new BundlesApi(apiClient);\n\n \n \ \ String extId = \"edf268Ef-AFfD-4Aaf-bED8-Dfd5eeEd98ee\";\n\n \ \ try {\n // Pass in parameters using the request builder\ \ object associated with the operation.\n DeleteBundleByIdApiResponse\ \ deleteBundleByIdApiResponse = bundlesApi.deleteBundleById(DeleteBundleByIdRequest.builder()\n\ \ .extId(extId)\n .build());\n\n \ \ System.out.println(deleteBundleByIdApiResponse.toString());\n\n \ \ } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: "\nimport { ApiClient, BundlesApi } from \"@nutanix-api/lifecycle-js-client\"\ ;\n\n// Configure the client\nlet apiClientInstance = new ApiClient();\n\ // IPv4/IPv6 address or FQDN of the cluster\napiClientInstance.host = 'localhost';\n\ // Port used for the connection. PC products typically use port 9440, while\ \ NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\napiClientInstance.port = '9440';\n// Max\ \ retry attempts while reconnecting on a loss of connection\napiClientInstance.maxRetryAttempts\ \ = 5;\n// Interval in ms to use during retry attempts\napiClientInstance.retryInterval\ \ = 5000;\n// UserName to connect to the cluster\napiClientInstance.username\ \ = 'username';\n// Password to connect to the cluster\napiClientInstance.password\ \ = 'password';\n// Please add authorization information here if needed.\n\ let bundlesApi = new BundlesApi(apiClientInstance);\n\nfunction sample()\ \ {\n\n \n let extId = \"d0dE1BCD-4e90-2494-cBCd-8bc9aaDaF1F8\";\n\ \n\n\n\n\n bundlesApi.deleteBundleById(extId).then(({data, response})\ \ => {\n console.log(`API returned the following status code: ${response.status}`);\n\ \ console.log(data.getData());\n }).catch((error) => {\n \ \ console.log(`Error is: ${error}`);\n });\n\n}\nsample()\n" - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ bundles_api = ntnx_lifecycle_py_client.BundlesApi(api_client=client)\n\ \ \n ext_id = \"edb5Ee6D-dCFf-Cde9-ffcF-08Ef0931daFf\"\n\n\n try:\n\ \ api_response = bundles_api.delete_bundle_by_id(extId=ext_id)\n\ \ print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/bundles\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/prism/v4/config\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n BundlesServiceApiInstance\ \ *api.BundlesServiceApi\n)\n\nfunc main() {\n ApiClientInstance = client.NewApiClient()\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n ApiClientInstance.Host\ \ = \"localhost\"\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n ApiClientInstance.Port\ \ = 9440\n // Interval in ms to use during retry attempts\n ApiClientInstance.RetryInterval\ \ = 5 * time.Second\n // Max retry attempts while reconnecting on a loss\ \ of connection\n ApiClientInstance.MaxRetryAttempts = 5\n // UserName\ \ to connect to the cluster\n ApiClientInstance.Username = \"username\"\ \n // Password to connect to the cluster\n ApiClientInstance.Password\ \ = \"password\"\n // Please add authorization information here if needed.\n\ \ BundlesServiceApiInstance = api.NewBundlesServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n extId := \"AFadcAad-9df8-ADB7-C2fd-FE8Af8Caade4\"\ \n\n\n request := bundles.DeleteBundleByIdRequest{ ExtId: &extId }\n\ \ response, error := BundlesServiceApiInstance.DeleteBundleById(ctx,\ \ &request)\n if error != nil {\n fmt.Println(error)\n \ \ return\n }\n data, _ := response.GetData().(import1.TaskReference)\n\ \ fmt.Println(data)\n\n}\n\n" - lang: cURL source: |2+ curl --request DELETE \ --url "https://host:port/api/lifecycle/v4.2/resources/bundles/f5fA2FDe-cBbF-aDAd-AFDd-C9FdffC88cCd" \ --header 'Accept: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method DELETE \ --header 'Accept: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/bundles/cfe4BCCA-e3dd-16D5-b405-2fCADFA13eda" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ BundlesApi bundlesApi = new BundlesApi(client);\n\n String extId\ \ = \"FE9AAbda-62CF-DFed-b6CD-CAacFac6Ac3a\";\n\n // Create request\ \ object with parameters\n var request = new DeleteBundleByIdRequest\ \ {\n ExtId = extId\n };\n try {\n DeleteBundleByIdApiResponse\ \ deleteBundleByIdApiResponse = bundlesApi.DeleteBundleById(request);\n\ \ } catch (ApiException ex) {\n Console.WriteLine(ex.Message);\n\ \ }\n }\n }\n}\n" /lifecycle/v4.2/resources/bundles: get: tags: - Bundles summary: Get LCM bundles on the cluster description: Query list of bundles operationId: listBundles parameters: - name: $page in: query description: | A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results. required: false style: form explode: false schema: minimum: 0 type: integer description: | A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results. format: int32 default: 0 - name: $limit in: query description: | A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set. required: false style: form explode: false schema: maximum: 100 minimum: 1 type: integer description: | A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set. format: int32 default: 50 - name: $filter in: query description: |- A URL query parameter that allows clients to filter a collection of resources. The expression specified with $filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the $filter must conform to the [OData V4.01](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html) URL conventions. For example, filter **$filter=name eq 'karbon-ntnx-1.0'** would filter the result on cluster name 'karbon-ntnx1.0', filter **$filter=startswith(name, 'C')** would filter on cluster name starting with 'C'. required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: clusterExtId example: "https://{host}:{port}/api/lifecycle/v4.2/resources/bundles?$filter=clusterExtId\ \ eq '1930ba4c-ce4d-4fb4-850a-d98d9786c447'" - name: type example: "https://{host}:{port}/api/lifecycle/v4.2/resources/bundles?$filter=type\ \ eq Lifecycle.Resources.BundleType'SOFTWARE'" - name: $orderby in: query description: "A URL query parameter that allows clients to specify the sort\ \ criteria for the returned list of objects. Resources can be sorted in\ \ ascending order using asc or descending order using desc. If asc or desc\ \ are not specified, the resources will be sorted in ascending order by\ \ default. For example, '$orderby=templateName desc' would get all templates\ \ sorted by templateName in descending order." required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: name example: "https://{host}:{port}/api/lifecycle/v4.2/resources/bundles?$orderby=name" - name: type example: "https://{host}:{port}/api/lifecycle/v4.2/resources/bundles?$orderby=type" - name: $select in: query description: "A URL query parameter that allows clients to request a specific\ \ set of properties for each entity or complex type. Expression specified\ \ with the $select must conform to the [OData V4.01](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html)\ \ URL conventions. If a $select expression consists of a single select item\ \ that is an asterisk (i.e., *), then all properties on the matching resource\ \ will be returned." required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: name example: "https://{host}:{port}/api/lifecycle/v4.2/resources/bundles?$select=name" - name: type example: "https://{host}:{port}/api/lifecycle/v4.2/resources/bundles?$select=type" responses: "200": description: Paginated list of bundles content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.resources.Bundle' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/bundles Get operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/bundles Get operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/bundles Get operation x-permissions: operationName: View Bundle deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin - name: Prism Viewer - name: Cluster Viewer x-rate-limit: - type: xsmall count: 8 timeUnit: seconds - type: Small count: 8 timeUnit: seconds - type: Large count: 8 timeUnit: seconds - type: XLarge count: 8 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "7.0" x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.BundlesApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.Bundles.ListBundlesRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.ListBundlesApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ BundlesApi bundlesApi = new BundlesApi(apiClient);\n\n \n \ \ int page = 0;\n \n int limit = 50;\n\n try {\n\ \ // Pass in parameters using the request builder object associated\ \ with the operation.\n ListBundlesApiResponse listBundlesApiResponse\ \ = bundlesApi.listBundles(ListBundlesRequest.builder()\n \ \ .$page(page)\n .$limit(limit)\n .$filter(null)\n\ \ .$orderby(null)\n .$select(null)\n \ \ .build());\n\n System.out.println(listBundlesApiResponse.toString());\n\ \n } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: |2 import { ApiClient, BundlesApi } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let bundlesApi = new BundlesApi(apiClientInstance); function sample() { // Construct Optional Parameters var opts = {}; opts["$page"] = 0; opts["$limit"] = 50; opts["$filter"] = "string_sample_data"; opts["$orderby"] = "string_sample_data"; opts["$select"] = "string_sample_data"; bundlesApi.listBundles(opts).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ bundles_api = ntnx_lifecycle_py_client.BundlesApi(api_client=client)\n\ \ \n page = 0\n \n limit = 50\n\n\n try:\n api_response\ \ = bundles_api.list_bundles(_page=page, _limit=limit)\n print(api_response)\n\ \ except ntnx_lifecycle_py_client.rest.ApiException as e:\n print(e)\n\ \n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/bundles\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n BundlesServiceApiInstance\ \ *api.BundlesServiceApi\n)\n\nfunc main() {\n ApiClientInstance = client.NewApiClient()\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n ApiClientInstance.Host\ \ = \"localhost\"\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n ApiClientInstance.Port\ \ = 9440\n // Interval in ms to use during retry attempts\n ApiClientInstance.RetryInterval\ \ = 5 * time.Second\n // Max retry attempts while reconnecting on a loss\ \ of connection\n ApiClientInstance.MaxRetryAttempts = 5\n // UserName\ \ to connect to the cluster\n ApiClientInstance.Username = \"username\"\ \n // Password to connect to the cluster\n ApiClientInstance.Password\ \ = \"password\"\n // Please add authorization information here if needed.\n\ \ BundlesServiceApiInstance = api.NewBundlesServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n page_ := 0\n \n limit_\ \ := 50\n\n\n request := bundles.ListBundlesRequest{ Page_: &page_, Limit_:\ \ &limit_, Filter_: nil, Orderby_: nil, Select_: nil }\n response, error\ \ := BundlesServiceApiInstance.ListBundles(ctx, &request)\n if error\ \ != nil {\n fmt.Println(error)\n return\n }\n data,\ \ _ := response.GetData().([]import1.Bundle)\n fmt.Println(data)\n\n\ }\n\n" - lang: cURL source: |2+ curl --request GET \ --url "https://host:port/api/lifecycle/v4.2/resources/bundles?$filter=string_sample_data&$limit=50&$orderby=string_sample_data&$page=0&$select=string_sample_data" \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method GET \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/bundles?$filter=string_sample_data&$limit=50&$orderby=string_sample_data&$page=0&$select=string_sample_data" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ BundlesApi bundlesApi = new BundlesApi(client);\n\n int page =\ \ 0;\n int limit = 50;\n String filter = \"string_sample_data\"\ ;\n String orderby = \"string_sample_data\";\n String select =\ \ \"string_sample_data\";\n\n // Create request object with parameters\n\ \ var request = new ListBundlesRequest {\n Page = page,\n\ \ Limit = limit,\n Filter = filter,\n Orderby\ \ = orderby,\n Select = select\n };\n try {\n \ \ ListBundlesApiResponse listBundlesApiResponse = bundlesApi.ListBundles(request);\n\ \ } catch (ApiException ex) {\n Console.WriteLine(ex.Message);\n\ \ }\n }\n }\n}\n" post: tags: - Bundles summary: Create a new LCM bundle description: Create a bundle operationId: createBundle parameters: - name: NTNX-Request-Id in: header description: | A unique identifier that is associated with each request. The provided value must be opaque and preferably in Universal Unique Identifier (UUID) format. This identifier is also used as an idempotence token for safely retrying requests in case of network errors. All the supported Nutanix API clients add this auto-generated request identifier to each request. required: true style: simple explode: false schema: type: string format: uuid example: 108488bd-45e1-4d53-a858-d98532c0b8c9 requestBody: content: application/json: schema: $ref: '#/components/schemas/lifecycle.v4.2.resources.Bundle' required: true responses: "202": description: Bundle create response headers: Location: style: simple explode: false schema: pattern: "^((http[s]?|nfs):\\/)?\\/?(([a-zA-Z0-9\\-\\.]+)|(\\d{1,3}(\\\ .\\d{1,3}){3})|(\\[[0-9a-fA-F:]+\\]))(:\\d+)?(\\/[^\\s?#]*)?(\\\ ?[^#\\s]*)?(#[^\\s]*)?$" type: string description: Indicates the target of a redirection or the URL of a newly created resource. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/prism.v4.3.config.TaskReference' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/bundles Post operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/bundles Post operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/bundles Post operation x-permissions: operationName: Create Bundle deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin x-rate-limit: - type: xsmall count: 8 timeUnit: seconds - type: Small count: 8 timeUnit: seconds - type: Large count: 8 timeUnit: seconds - type: XLarge count: 8 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "7.0" x-code-samples: - lang: Java source: |2 package sample; import com.nutanix.lif.java.client.ApiClient; import com.nutanix.lif.java.client.api.BundlesApi; import com.nutanix.dp1.lif.lifecycle.v4.request.Bundles.CreateBundleRequest; import com.nutanix.dp1.lif.lifecycle.v4.resources.BundleVendor; import com.nutanix.dp1.lif.lifecycle.v4.resources.Bundle; import com.nutanix.dp1.lif.lifecycle.v4.resources.CreateBundleApiResponse; import org.springframework.web.client.RestClientException; public class JavaSdkSample { public static void main(String[] args) { // Configure the client ApiClient apiClient = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClient.setHost("localhost"); // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClient.setPort(9440); // Interval in ms to use during retry attempts apiClient.setRetryInterval(5000); // Max retry attempts while reconnecting on a loss of connection apiClient.setMaxRetryAttempts(5); // UserName to connect to the cluster String username = "username"; // Password to connect to the cluster String password = "password"; apiClient.setUsername(username); apiClient.setPassword(password); // Please add authorization information here if needed. BundlesApi bundlesApi = new BundlesApi(apiClient); Bundle bundle = new Bundle(); // Bundle object initializations here... bundle.setName("lcm_nos_6.10.tar.gz"); // required field bundle.setVendor(BundleVendor.UNKNOWN); // required field try { // Pass in parameters using the request builder object associated with the operation. CreateBundleApiResponse createBundleApiResponse = bundlesApi.createBundle(CreateBundleRequest.builder() .build(), bundle); System.out.println(createBundleApiResponse.toString()); } catch (RestClientException ex) { System.out.println(ex.getMessage()); } } } - lang: JavaScript source: |2 import { ApiClient, BundlesApi, BundleVendor, Bundle } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let bundlesApi = new BundlesApi(apiClientInstance); function sample() { let bundle = new Bundle(); // Bundle object initializations here... bundle.setName("lcm_nos_6.10.tar.gz"); // required field bundle.setVendor(BundleVendor.UNKNOWN); // required field bundle = JSON.stringify(bundle); bundlesApi.createBundle(bundle).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: |2+ import ntnx_lifecycle_py_client if __name__ == "__main__": # Configure the client config = ntnx_lifecycle_py_client.Configuration() # IPv4/IPv6 address or FQDN of the cluster config.host = "localhost" # Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. config.port = 9440 # Max retry attempts while reconnecting on a loss of connection config.max_retry_attempts = 3 # Backoff factor to use during retry attempts config.backoff_factor = 3 # UserName to connect to the cluster config.username = "username" # Password to connect to the cluster config.password = "password" # Please add authorization information here if needed. client = ntnx_lifecycle_py_client.ApiClient(configuration=config) bundles_api = ntnx_lifecycle_py_client.BundlesApi(api_client=client) bundle = ntnx_lifecycle_py_client.Bundle() # Bundle object initializations here... bundle.name = "lcm_nos_6.10.tar.gz" # required field bundle.vendor = ntnx_lifecycle_py_client.BundleVendor._UNKNOWN # required field try: api_response = bundles_api.create_bundle(body=bundle) print(api_response) except ntnx_lifecycle_py_client.rest.ApiException as e: print(e) - lang: Go source: |2+ package main import ( "fmt" "time" "context" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/bundles" import1 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources" import2 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/prism/v4/config" ) var ( ApiClientInstance *client.ApiClient BundlesServiceApiInstance *api.BundlesServiceApi ) func main() { ApiClientInstance = client.NewApiClient() // IPv4/IPv6 address or FQDN of the cluster ApiClientInstance.Host = "localhost" // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. ApiClientInstance.Port = 9440 // Interval in ms to use during retry attempts ApiClientInstance.RetryInterval = 5 * time.Second // Max retry attempts while reconnecting on a loss of connection ApiClientInstance.MaxRetryAttempts = 5 // UserName to connect to the cluster ApiClientInstance.Username = "username" // Password to connect to the cluster ApiClientInstance.Password = "password" // Please add authorization information here if needed. BundlesServiceApiInstance = api.NewBundlesServiceApi(ApiClientInstance) ctx := context.Background() bundle := import1.NewBundle() // Bundle object initializations here... request := bundles.CreateBundleRequest{ Body: bundle } response, error := BundlesServiceApiInstance.CreateBundle(ctx, &request) if error != nil { fmt.Println(error) return } data, _ := response.GetData().(import2.TaskReference) fmt.Println(data) } - lang: cURL source: |2+ curl --request POST \ --url "https://host:port/api/lifecycle/v4.2/resources/bundles" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --data {"tenantId":"string","extId":"string","links":[{"href":"string","rel":"string","$objectType":"common.v1.response.ApiLink"}],"name":"lcm_nos_6.10.tar.gz","sizeBytes":0,"type":"$UNKNOWN","vendor":"$UNKNOWN","images":[{"tenantId":"string","extId":"string","links":[{"href":"string","rel":"string","$objectType":"common.v1.response.ApiLink"}],"entityClass":"CoreCluster","entityModel":"AOS","entityType":"$UNKNOWN","entityVersion":"5.20.0","hardwareFamily":"dell_gen_12","releaseNotes":"Thisisareleasenote","specVersion":"1.0","isQualified":false,"status":"$UNKNOWN","files":[{"fileLocationId":"string","name":"image1.iso","sizeBytes":0,"filePath":"string","checksumType":"$UNKNOWN","checksum":"3a7da7ddb974a379c5f668fdg300a49b","$objectType":"lifecycle.v4.resources.ImageFile"}],"clusterExtId":"string","$objectType":"lifecycle.v4.resources.Image"}],"clusterExtId":"string","checksum":{"hexDigest":"string","$objectType":"lifecycle.v4.common.LcmSha256Sum"},"$objectType":"lifecycle.v4.resources.Bundle"} \ - lang: Wget source: |2 wget --verbose \ --method POST \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --body-data {"tenantId":"string","extId":"string","links":[{"href":"string","rel":"string","$objectType":"common.v1.response.ApiLink"}],"name":"lcm_nos_6.10.tar.gz","sizeBytes":0,"type":"$UNKNOWN","vendor":"$UNKNOWN","images":[{"tenantId":"string","extId":"string","links":[{"href":"string","rel":"string","$objectType":"common.v1.response.ApiLink"}],"entityClass":"CoreCluster","entityModel":"AOS","entityType":"$UNKNOWN","entityVersion":"5.20.0","hardwareFamily":"dell_gen_12","releaseNotes":"Thisisareleasenote","specVersion":"1.0","isQualified":false,"status":"$UNKNOWN","files":[{"fileLocationId":"string","name":"image1.iso","sizeBytes":0,"filePath":"string","checksumType":"$UNKNOWN","checksum":"3a7da7ddb974a379c5f668fdg300a49b","$objectType":"lifecycle.v4.resources.ImageFile"}],"clusterExtId":"string","$objectType":"lifecycle.v4.resources.Image"}],"clusterExtId":"string","checksum":{"hexDigest":"string","$objectType":"lifecycle.v4.common.LcmSha256Sum"},"$objectType":"lifecycle.v4.resources.Bundle"} \ - "https://host:port/api/lifecycle/v4.2/resources/bundles" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ BundlesApi bundlesApi = new BundlesApi(client);\n\n Bundle bundle\ \ = new Bundle();\n\n // Bundle object initializations here...\n \ \ bundle.Name = \"lcm_nos_6.10.tar.gz\"; // required field\n bundle.Vendor\ \ = BundleVendor.UNKNOWN; // required field\n\n\n // Create request\ \ object with parameters\n var request = new CreateBundleRequest\ \ {\n Body = bundle\n };\n try {\n CreateBundleApiResponse\ \ createBundleApiResponse = bundlesApi.CreateBundle(request);\n }\ \ catch (ApiException ex) {\n Console.WriteLine(ex.Message);\n\ \ }\n }\n }\n}\n" /lifecycle/v4.2/resources/config: get: tags: - Config summary: Get the present LCM configuration. description: Get LCM configuration. operationId: getConfig parameters: - name: X-Cluster-Id in: header description: Cluster uuid on which the resource is present or operation is being performed. required: false style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 0ccf63aa-c3ce-4b21-9f40-d0c5c0d28dc5 responses: "200": description: Details of queried LCM configuration. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.resources.Config' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/config Get operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/config Get operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/config Get operation x-permissions: operationName: View Config deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin - name: Prism Viewer - name: Cluster Viewer x-rate-limit: - type: xsmall count: 10 timeUnit: seconds - type: Small count: 10 timeUnit: seconds - type: Large count: 10 timeUnit: seconds - type: XLarge count: 10 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "6.8" x-code-samples: - lang: Java source: |2 package sample; import com.nutanix.lif.java.client.ApiClient; import com.nutanix.lif.java.client.api.ConfigApi; import com.nutanix.dp1.lif.lifecycle.v4.request.Config.GetConfigRequest; import com.nutanix.dp1.lif.lifecycle.v4.resources.GetConfigApiResponse; import org.springframework.web.client.RestClientException; public class JavaSdkSample { public static void main(String[] args) { // Configure the client ApiClient apiClient = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClient.setHost("localhost"); // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClient.setPort(9440); // Interval in ms to use during retry attempts apiClient.setRetryInterval(5000); // Max retry attempts while reconnecting on a loss of connection apiClient.setMaxRetryAttempts(5); // UserName to connect to the cluster String username = "username"; // Password to connect to the cluster String password = "password"; apiClient.setUsername(username); apiClient.setPassword(password); // Please add authorization information here if needed. ConfigApi configApi = new ConfigApi(apiClient); try { // Pass in parameters using the request builder object associated with the operation. GetConfigApiResponse getConfigApiResponse = configApi.getConfig(GetConfigRequest.builder() .build()); System.out.println(getConfigApiResponse.toString()); } catch (RestClientException ex) { System.out.println(ex.getMessage()); } } } - lang: JavaScript source: |2 import { ApiClient, ConfigApi } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let configApi = new ConfigApi(apiClientInstance); function sample() { configApi.getConfig().then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: |2+ import ntnx_lifecycle_py_client if __name__ == "__main__": # Configure the client config = ntnx_lifecycle_py_client.Configuration() # IPv4/IPv6 address or FQDN of the cluster config.host = "localhost" # Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. config.port = 9440 # Max retry attempts while reconnecting on a loss of connection config.max_retry_attempts = 3 # Backoff factor to use during retry attempts config.backoff_factor = 3 # UserName to connect to the cluster config.username = "username" # Password to connect to the cluster config.password = "password" # Please add authorization information here if needed. client = ntnx_lifecycle_py_client.ApiClient(configuration=config) config_api = ntnx_lifecycle_py_client.ConfigApi(api_client=client) try: api_response = config_api.get_config() print(api_response) except ntnx_lifecycle_py_client.rest.ApiException as e: print(e) - lang: Go source: |2+ package main import ( "fmt" "time" "context" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/config" import1 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources" ) var ( ApiClientInstance *client.ApiClient ConfigServiceApiInstance *api.ConfigServiceApi ) func main() { ApiClientInstance = client.NewApiClient() // IPv4/IPv6 address or FQDN of the cluster ApiClientInstance.Host = "localhost" // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. ApiClientInstance.Port = 9440 // Interval in ms to use during retry attempts ApiClientInstance.RetryInterval = 5 * time.Second // Max retry attempts while reconnecting on a loss of connection ApiClientInstance.MaxRetryAttempts = 5 // UserName to connect to the cluster ApiClientInstance.Username = "username" // Password to connect to the cluster ApiClientInstance.Password = "password" // Please add authorization information here if needed. ConfigServiceApiInstance = api.NewConfigServiceApi(ApiClientInstance) ctx := context.Background() request := config.GetConfigRequest{ } response, error := ConfigServiceApiInstance.GetConfig(ctx, &request) if error != nil { fmt.Println(error) return } data, _ := response.GetData().(import1.Config) fmt.Println(data) } - lang: cURL source: |2+ curl --request GET \ --url "https://host:port/api/lifecycle/v4.2/resources/config" \ --header 'Accept: application/json' \ --header 'X-Cluster-Id: B0878Ecf-F5Fe-D53c-FDaC-DEd1fC4B24Dd' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method GET \ --header 'Accept: application/json' \ --header 'X-Cluster-Id: Af3dBF1B-278b-dBB1-4c06-fc3CdbCAe8A0' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/config" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ ConfigApi configApi = new ConfigApi(client);\n\n\n try {\n \ \ GetConfigApiResponse getConfigApiResponse = configApi.GetConfig();\n\ \ } catch (ApiException ex) {\n Console.WriteLine(ex.Message);\n\ \ }\n }\n }\n}\n" put: tags: - Config summary: Change the LCM configuration. description: Update LCM configuration. operationId: updateConfig parameters: - name: If-Match in: header description: "The If-Match request header makes the request conditional. When\ \ not provided, the server will respond with an HTTP-428 (Precondition\ \ Required) response code indicating that the server requires the request\ \ to be conditional. The server will allow the successful completion of\ \ PUT and PATCH operations, if the resource matches the ETag value returned\ \ to the response of a GET operation. If the conditional does not match,\ \ then an HTTP-412 (Precondition Failed) response will be returned." required: true style: simple explode: false schema: type: string example: string - name: NTNX-Request-Id in: header description: | A unique identifier that is associated with each request. The provided value must be opaque and preferably in Universal Unique Identifier (UUID) format. This identifier is also used as an idempotence token for safely retrying requests in case of network errors. All the supported Nutanix API clients add this auto-generated request identifier to each request. required: true style: simple explode: false schema: type: string format: uuid example: abadcab4-09fa-4d9c-ae21-532c60c4b4f6 - name: X-Cluster-Id in: header description: Cluster uuid on which the resource is present or operation is being performed. required: false style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: d636b941-e6de-4a02-80c5-bb3a8248e8b5 requestBody: content: application/json: schema: $ref: '#/components/schemas/lifecycle.v4.2.resources.Config' required: true responses: "202": description: LCM configuration is updated. headers: Location: style: simple explode: false schema: pattern: "^((http[s]?|nfs):\\/)?\\/?(([a-zA-Z0-9\\-\\.]+)|(\\d{1,3}(\\\ .\\d{1,3}){3})|(\\[[0-9a-fA-F:]+\\]))(:\\d+)?(\\/[^\\s?#]*)?(\\\ ?[^#\\s]*)?(#[^\\s]*)?$" type: string description: Indicates the target of a redirection or the URL of a newly created resource. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/prism.v4.3.config.TaskReference' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/config Put operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/config Put operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/config Put operation x-permissions: operationName: Update Config deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin x-rate-limit: - type: xsmall count: 10 timeUnit: seconds - type: Small count: 10 timeUnit: seconds - type: Large count: 10 timeUnit: seconds - type: XLarge count: 10 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "6.8" x-code-samples: - lang: Java source: |2 package sample; import com.nutanix.lif.java.client.ApiClient; import com.nutanix.lif.java.client.api.ConfigApi; import com.nutanix.dp1.lif.lifecycle.v4.request.Config.UpdateConfigRequest; import java.util.HashMap; import org.apache.http.HttpHeaders; import com.nutanix.dp1.lif.lifecycle.v4.resources.Config; import com.nutanix.dp1.lif.lifecycle.v4.resources.UpdateConfigApiResponse; import org.springframework.web.client.RestClientException; public class JavaSdkSample { public static void main(String[] args) { // Configure the client ApiClient apiClient = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClient.setHost("localhost"); // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClient.setPort(9440); // Interval in ms to use during retry attempts apiClient.setRetryInterval(5000); // Max retry attempts while reconnecting on a loss of connection apiClient.setMaxRetryAttempts(5); // UserName to connect to the cluster String username = "username"; // Password to connect to the cluster String password = "password"; apiClient.setUsername(username); apiClient.setPassword(password); // Please add authorization information here if needed. ConfigApi configApi = new ConfigApi(apiClient); Config config = new Config(); // Config object initializations here... /* Some Create, Update, and Delete operations generally require an If-Match header with a value to be passed in order to protect against concurrent updates. The value that needs to be sent in the If-Match header needs to be retrieved by performing a Read(Get) operation on the same resource. ETags can be retrieved by calling a static method of ApiClient as below: String eTag = ApiClient.getEtag(getResponse); HashMap opts = new HashMap<>(); opts.put(HttpHeaders.IF_MATCH, eTag); */ try { // Pass in parameters using the request builder object associated with the operation. UpdateConfigApiResponse updateConfigApiResponse = configApi.updateConfig(UpdateConfigRequest.builder() .build(), config, opts); System.out.println(updateConfigApiResponse.toString()); } catch (RestClientException ex) { System.out.println(ex.getMessage()); } } } - lang: JavaScript source: |2 import { ApiClient, ConfigApi, Config } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let configApi = new ConfigApi(apiClientInstance); function sample() { let config = new Config(); // Config object initializations here... config = JSON.stringify(config); /* Some Create, Update, and Delete operations generally require an If-Match header with a value to be passed in order to protect against concurrent updates. The value that needs to be sent in the If-Match header needs to be retrieved by performing a Read(Get) operation on the same resource. ETags can be retrieved by calling a static method of ApiClient as below: let etagValue = ApiClient.getEtag(data); let args = {"If-Match" : etagValue}; */ configApi.updateConfig(config, args).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: |2+ import ntnx_lifecycle_py_client if __name__ == "__main__": # Configure the client config = ntnx_lifecycle_py_client.Configuration() # IPv4/IPv6 address or FQDN of the cluster config.host = "localhost" # Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. config.port = 9440 # Max retry attempts while reconnecting on a loss of connection config.max_retry_attempts = 3 # Backoff factor to use during retry attempts config.backoff_factor = 3 # UserName to connect to the cluster config.username = "username" # Password to connect to the cluster config.password = "password" # Please add authorization information here if needed. client = ntnx_lifecycle_py_client.ApiClient(configuration=config) config_api = ntnx_lifecycle_py_client.ConfigApi(api_client=client) config = ntnx_lifecycle_py_client.Config() # Config object initializations here... """ Some Create, Update, and Delete operations generally require an If-Match header with a value to be passed in order to protect against concurrent updates. The value that needs to be sent in the If-Match header needs to be retrieved by performing a Read(Get) operation on the same resource. ETags can be retrieved by calling a static method of ApiClient as below: etag_value = ApiClient.get_etag(get_api_response) """ try: api_response = config_api.update_config(body=config, if_match=etag_value) print(api_response) except ntnx_lifecycle_py_client.rest.ApiException as e: print(e) - lang: Go source: |2+ package main import ( "fmt" "time" "context" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/config" import1 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources" import2 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/prism/v4/config" ) var ( ApiClientInstance *client.ApiClient ConfigServiceApiInstance *api.ConfigServiceApi ) func main() { ApiClientInstance = client.NewApiClient() // IPv4/IPv6 address or FQDN of the cluster ApiClientInstance.Host = "localhost" // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. ApiClientInstance.Port = 9440 // Interval in ms to use during retry attempts ApiClientInstance.RetryInterval = 5 * time.Second // Max retry attempts while reconnecting on a loss of connection ApiClientInstance.MaxRetryAttempts = 5 // UserName to connect to the cluster ApiClientInstance.Username = "username" // Password to connect to the cluster ApiClientInstance.Password = "password" // Please add authorization information here if needed. ConfigServiceApiInstance = api.NewConfigServiceApi(ApiClientInstance) ctx := context.Background() config := import1.NewConfig() // Config object initializations here... /* Some Create, Update, and Delete operations generally require an If-Match header with a value to be passed in order to protect against concurrent updates. The value that needs to be sent in the If-Match header needs to be retrieved by performing a Read(Get) operation on the same resource. ETags can be retrieved by calling a static method of ApiClient as below: etagValue := ApiClientInstance.GetEtag(getResponse) */ request := config.UpdateConfigRequest{ Body: config } response, error := ConfigServiceApiInstance.UpdateConfig(ctx, &request, args) if error != nil { fmt.Println(error) return } data, _ := response.GetData().(import2.TaskReference) fmt.Println(data) } - lang: cURL source: |2+ curl --request PUT \ --url "https://host:port/api/lifecycle/v4.2/resources/config" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'If-Match: string_sample_data' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'X-Cluster-Id: d60cCDbF-Bab0-cfCf-ffe8-1bC13CBAC1D2' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --data {"tenantId":"string","extId":"string","links":[{"href":"string","rel":"string","$objectType":"common.v1.response.ApiLink"}],"url":"string","isAutoInventoryEnabled":false,"autoInventorySchedule":"13:45","version":"3.1.45678","displayVersion":"3.1","connectivityType":"$UNKNOWN","isHttpsEnabled":false,"supportedSoftwareEntities":["string"],"deprecatedSoftwareEntities":["string"],"isFrameworkBundleUploaded":false,"hasModuleAutoUpgradeEnabled":false,"$objectType":"lifecycle.v4.resources.Config"} \ - lang: Wget source: |2 wget --verbose \ --method PUT \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'If-Match: string_sample_data' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'X-Cluster-Id: EdcF7f70-cAb3-8A5b-E0c8-76dcaBED18BB' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --body-data {"tenantId":"string","extId":"string","links":[{"href":"string","rel":"string","$objectType":"common.v1.response.ApiLink"}],"url":"string","isAutoInventoryEnabled":false,"autoInventorySchedule":"13:45","version":"3.1.45678","displayVersion":"3.1","connectivityType":"$UNKNOWN","isHttpsEnabled":false,"supportedSoftwareEntities":["string"],"deprecatedSoftwareEntities":["string"],"isFrameworkBundleUploaded":false,"hasModuleAutoUpgradeEnabled":false,"$objectType":"lifecycle.v4.resources.Config"} \ - "https://host:port/api/lifecycle/v4.2/resources/config" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ ConfigApi configApi = new ConfigApi(client);\n\n Config config\ \ = new Config();\n\n // Config object initializations here...\n\n\n\ \ /*\n Some Create, Update, and Delete operations generally\ \ require an If-Match header with a value to be passed in order to protect\ \ against concurrent updates.\n The value that needs to be sent in\ \ the If-Match header needs to be retrieved by performing a Read(Get) operation\ \ on the same resource.\n ETags can be retrieved by calling a static\ \ method of ApiClient as below:\n String eTag = ApiClient.GetEtag(getResponse);\n\ \ Dictionary opts = new Dictionary();\n\ \ opts[\"If-Match\"] = eTag;\n */\n // Create request\ \ object with parameters\n var request = new UpdateConfigRequest\ \ {\n Body = config,\n \n \n };\n\ \ try {\n UpdateConfigApiResponse updateConfigApiResponse\ \ = configApi.UpdateConfig(request, opts);\n } catch (ApiException\ \ ex) {\n Console.WriteLine(ex.Message);\n }\n }\n\ \ }\n}\n" /lifecycle/v4.2/operations/$actions/preload-artifacts: post: tags: - Entities summary: Preload artifacts on to the cluster. description: Preload artifacts required for upgrade on to the cluster. operationId: preloadArtifacts parameters: - name: NTNX-Request-Id in: header description: | A unique identifier that is associated with each request. The provided value must be opaque and preferably in Universal Unique Identifier (UUID) format. This identifier is also used as an idempotence token for safely retrying requests in case of network errors. All the supported Nutanix API clients add this auto-generated request identifier to each request. required: true style: simple explode: false schema: type: string format: uuid example: 805ff354-8953-4d9f-80f1-bfdf7cc1e3e4 - name: X-Cluster-Id in: header description: Cluster uuid on which the resource is present or operation is being performed. required: false style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 17f71cb6-6db1-4e4c-9ca0-c9161783647a requestBody: content: application/json: schema: $ref: '#/components/schemas/lifecycle.v4.2.common.PreloadSpec' required: true responses: "202": description: Preload artifacts response. headers: Location: style: simple explode: false schema: pattern: "^((http[s]?|nfs):\\/)?\\/?(([a-zA-Z0-9\\-\\.]+)|(\\d{1,3}(\\\ .\\d{1,3}){3})|(\\[[0-9a-fA-F:]+\\]))(:\\d+)?(\\/[^\\s?#]*)?(\\\ ?[^#\\s]*)?(#[^\\s]*)?$" type: string description: Indicates the target of a redirection or the URL of a newly created resource. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/prism.v4.3.config.TaskReference' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/preload-artifacts Post operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/preload-artifacts Post operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/preload-artifacts Post operation x-permissions: operationName: Preload Artifacts Component deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin x-rate-limit: - type: xsmall count: 8 timeUnit: seconds - type: Small count: 8 timeUnit: seconds - type: Large count: 8 timeUnit: seconds - type: XLarge count: 8 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "7.0" x-code-samples: - lang: Java source: |2 package sample; import com.nutanix.lif.java.client.ApiClient; import com.nutanix.lif.java.client.api.EntitiesApi; import com.nutanix.dp1.lif.lifecycle.v4.request.Entities.PreloadArtifactsRequest; import com.nutanix.dp1.lif.lifecycle.v4.common.PreloadSpec; import com.nutanix.dp1.lif.lifecycle.v4.operations.PreloadArtifactsApiResponse; import org.springframework.web.client.RestClientException; public class JavaSdkSample { public static void main(String[] args) { // Configure the client ApiClient apiClient = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClient.setHost("localhost"); // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClient.setPort(9440); // Interval in ms to use during retry attempts apiClient.setRetryInterval(5000); // Max retry attempts while reconnecting on a loss of connection apiClient.setMaxRetryAttempts(5); // UserName to connect to the cluster String username = "username"; // Password to connect to the cluster String password = "password"; apiClient.setUsername(username); apiClient.setPassword(password); // Please add authorization information here if needed. EntitiesApi entitiesApi = new EntitiesApi(apiClient); PreloadSpec preloadSpec = new PreloadSpec(); // PreloadSpec object initializations here... preloadSpec.setEntityUpdateSpecs(new ArrayList<>()); // required field try { // Pass in parameters using the request builder object associated with the operation. PreloadArtifactsApiResponse preloadArtifactsApiResponse = entitiesApi.preloadArtifacts(PreloadArtifactsRequest.builder() .build(), preloadSpec); System.out.println(preloadArtifactsApiResponse.toString()); } catch (RestClientException ex) { System.out.println(ex.getMessage()); } } } - lang: JavaScript source: |2 import { ApiClient, EntitiesApi, PreloadSpec } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let entitiesApi = new EntitiesApi(apiClientInstance); function sample() { let preloadSpec = new PreloadSpec(); // PreloadSpec object initializations here... preloadSpec.setEntityUpdateSpecs([]); // required field preloadSpec = JSON.stringify(preloadSpec); entitiesApi.preloadArtifacts(preloadSpec).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: |2+ import ntnx_lifecycle_py_client if __name__ == "__main__": # Configure the client config = ntnx_lifecycle_py_client.Configuration() # IPv4/IPv6 address or FQDN of the cluster config.host = "localhost" # Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. config.port = 9440 # Max retry attempts while reconnecting on a loss of connection config.max_retry_attempts = 3 # Backoff factor to use during retry attempts config.backoff_factor = 3 # UserName to connect to the cluster config.username = "username" # Password to connect to the cluster config.password = "password" # Please add authorization information here if needed. client = ntnx_lifecycle_py_client.ApiClient(configuration=config) entities_api = ntnx_lifecycle_py_client.EntitiesApi(api_client=client) preloadSpec = ntnx_lifecycle_py_client.PreloadSpec() # PreloadSpec object initializations here... preloadSpec.entity_update_specs = [] # required field try: api_response = entities_api.preload_artifacts(body=preloadSpec) print(api_response) except ntnx_lifecycle_py_client.rest.ApiException as e: print(e) - lang: Go source: |2+ package main import ( "fmt" "time" "context" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/entities" import1 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/common" import2 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/prism/v4/config" ) var ( ApiClientInstance *client.ApiClient EntitiesServiceApiInstance *api.EntitiesServiceApi ) func main() { ApiClientInstance = client.NewApiClient() // IPv4/IPv6 address or FQDN of the cluster ApiClientInstance.Host = "localhost" // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. ApiClientInstance.Port = 9440 // Interval in ms to use during retry attempts ApiClientInstance.RetryInterval = 5 * time.Second // Max retry attempts while reconnecting on a loss of connection ApiClientInstance.MaxRetryAttempts = 5 // UserName to connect to the cluster ApiClientInstance.Username = "username" // Password to connect to the cluster ApiClientInstance.Password = "password" // Please add authorization information here if needed. EntitiesServiceApiInstance = api.NewEntitiesServiceApi(ApiClientInstance) ctx := context.Background() preloadSpec := import1.NewPreloadSpec() // PreloadSpec object initializations here... request := entities.PreloadArtifactsRequest{ Body: preloadSpec } response, error := EntitiesServiceApiInstance.PreloadArtifacts(ctx, &request) if error != nil { fmt.Println(error) return } data, _ := response.GetData().(import2.TaskReference) fmt.Println(data) } - lang: cURL source: |2+ curl --request POST \ --url "https://host:port/api/lifecycle/v4.2/operations/$actions/preload-artifacts" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'X-Cluster-Id: 9fbD17eA-ADae-F6C5-bDeD-10aFA0fbfadB' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --data {"entityUpdateSpecs":[{"entityUuid":"string","toVersion":"5.20.0","$objectType":"lifecycle.v4.common.EntityUpdateSpec"}],"$objectType":"lifecycle.v4.common.PreloadSpec"} \ - lang: Wget source: |2 wget --verbose \ --method POST \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'X-Cluster-Id: 3d95FEeC-177c-C6cc-9f64-a6adFd4C1dbc' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --body-data {"entityUpdateSpecs":[{"entityUuid":"string","toVersion":"5.20.0","$objectType":"lifecycle.v4.common.EntityUpdateSpec"}],"$objectType":"lifecycle.v4.common.PreloadSpec"} \ - "https://host:port/api/lifecycle/v4.2/operations/$actions/preload-artifacts" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Common;\nusing Nutanix.LifSDK.Model.Lifecycle.V4.Operations;\n\ \nnamespace CsharpSdkSample\n{\n class Program\n {\n static void Main(string[]\ \ args) {\n // Configure the client\n Configuration _config =\ \ new Configuration\n {\n // UserName to connect to the cluster\n\ \ Username = \"username\",\n // Password(SecureString) to\ \ connect to the cluster \n Password = Configuration.CreateSecurePassword(\"\ password\"),\n // IPv4/IPv6 address or FQDN of the cluster\n \ \ Host = \"localhost\",\n // Port used for the connection. \n\ \ Port = 9440,\n // Backoff period in seconds (exponential\ \ backoff: 2, 4, 8... seconds)\n BackOffPeriod = 2,\n // Max\ \ retry attempts while reconnecting on a loss of connection\n MaxRetryAttempts\ \ = 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n\ \ EntitiesApi entitiesApi = new EntitiesApi(client);\n\n PreloadSpec\ \ preloadSpec = new PreloadSpec();\n\n // PreloadSpec object initializations\ \ here...\n preloadSpec.EntityUpdateSpecs = new ArrayList(); // required\ \ field\n\n\n // Create request object with parameters\n var\ \ request = new PreloadArtifactsRequest {\n Body = preloadSpec\n\ \ };\n try {\n PreloadArtifactsApiResponse preloadArtifactsApiResponse\ \ = entitiesApi.PreloadArtifacts(request);\n } catch (ApiException\ \ ex) {\n Console.WriteLine(ex.Message);\n }\n }\n\ \ }\n}\n" /lifecycle/v4.2/resources/entities/{extId}: get: tags: - Entities summary: Get details about an LCM entity. description: Get details about an LCM entity. operationId: getEntityById parameters: - name: extId in: path description: ExtId of the LCM entity. required: true style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 3bc70fe6-c78b-4edf-adbf-7c5a9da6a1a6 responses: "200": description: Details of the queried LCM entity. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.resources.Entity' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/entities/{extId}\ \ Get operation" "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/entities/{extId}\ \ Get operation" "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/entities/{extId}\ \ Get operation" x-permissions: operationName: View LCM Entity deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin - name: Prism Viewer - name: Cluster Viewer - name: Security Dashboard Admin - name: Security Dashboard Viewer x-rate-limit: - type: xsmall count: 10 timeUnit: seconds - type: Small count: 10 timeUnit: seconds - type: Large count: 10 timeUnit: seconds - type: XLarge count: 10 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "6.8" x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.EntitiesApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.Entities.GetEntityByIdRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.GetEntityByIdApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ EntitiesApi entitiesApi = new EntitiesApi(apiClient);\n\n \n\ \ String extId = \"5AE41373-f9dE-8DE0-Db4F-B6Cdd3A7fe0F\";\n\n \ \ try {\n // Pass in parameters using the request builder\ \ object associated with the operation.\n GetEntityByIdApiResponse\ \ getEntityByIdApiResponse = entitiesApi.getEntityById(GetEntityByIdRequest.builder()\n\ \ .extId(extId)\n .build());\n\n \ \ System.out.println(getEntityByIdApiResponse.toString());\n\n \ \ } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: "\nimport { ApiClient, EntitiesApi } from \"@nutanix-api/lifecycle-js-client\"\ ;\n\n// Configure the client\nlet apiClientInstance = new ApiClient();\n\ // IPv4/IPv6 address or FQDN of the cluster\napiClientInstance.host = 'localhost';\n\ // Port used for the connection. PC products typically use port 9440, while\ \ NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\napiClientInstance.port = '9440';\n// Max\ \ retry attempts while reconnecting on a loss of connection\napiClientInstance.maxRetryAttempts\ \ = 5;\n// Interval in ms to use during retry attempts\napiClientInstance.retryInterval\ \ = 5000;\n// UserName to connect to the cluster\napiClientInstance.username\ \ = 'username';\n// Password to connect to the cluster\napiClientInstance.password\ \ = 'password';\n// Please add authorization information here if needed.\n\ let entitiesApi = new EntitiesApi(apiClientInstance);\n\nfunction sample()\ \ {\n\n \n let extId = \"FA77Da7e-DcDb-b74b-d822-bacceda25b1b\";\n\ \n\n\n\n\n entitiesApi.getEntityById(extId).then(({data, response}) =>\ \ {\n console.log(`API returned the following status code: ${response.status}`);\n\ \ console.log(data.getData());\n }).catch((error) => {\n \ \ console.log(`Error is: ${error}`);\n });\n\n}\nsample()\n" - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ entities_api = ntnx_lifecycle_py_client.EntitiesApi(api_client=client)\n\ \ \n ext_id = \"5cEbD8F5-df89-D353-BF8f-449Cdd3baEB3\"\n\n\n try:\n\ \ api_response = entities_api.get_entity_by_id(extId=ext_id)\n \ \ print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/entities\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n EntitiesServiceApiInstance\ \ *api.EntitiesServiceApi\n)\n\nfunc main() {\n ApiClientInstance = client.NewApiClient()\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n ApiClientInstance.Host\ \ = \"localhost\"\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n ApiClientInstance.Port\ \ = 9440\n // Interval in ms to use during retry attempts\n ApiClientInstance.RetryInterval\ \ = 5 * time.Second\n // Max retry attempts while reconnecting on a loss\ \ of connection\n ApiClientInstance.MaxRetryAttempts = 5\n // UserName\ \ to connect to the cluster\n ApiClientInstance.Username = \"username\"\ \n // Password to connect to the cluster\n ApiClientInstance.Password\ \ = \"password\"\n // Please add authorization information here if needed.\n\ \ EntitiesServiceApiInstance = api.NewEntitiesServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n extId := \"C07cF3Ce-b61F-E4aa-afde-53C5C4acd95F\"\ \n\n\n request := entities.GetEntityByIdRequest{ ExtId: &extId }\n \ \ response, error := EntitiesServiceApiInstance.GetEntityById(ctx, &request)\n\ \ if error != nil {\n fmt.Println(error)\n return\n \ \ }\n data, _ := response.GetData().(import1.Entity)\n fmt.Println(data)\n\ \n}\n\n" - lang: cURL source: |2+ curl --request GET \ --url "https://host:port/api/lifecycle/v4.2/resources/entities/fC9bD2C1-047C-abBf-eAd7-f7dBe8e9B2cB" \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method GET \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/entities/6CFDCB2e-8Cb6-f8fb-c12b-eF83baDBeF0f" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ EntitiesApi entitiesApi = new EntitiesApi(client);\n\n String\ \ extId = \"DF688CCE-8fD5-CCF2-A9d0-50Af63dfCdeA\";\n\n // Create\ \ request object with parameters\n var request = new GetEntityByIdRequest\ \ {\n ExtId = extId\n };\n try {\n GetEntityByIdApiResponse\ \ getEntityByIdApiResponse = entitiesApi.GetEntityById(request);\n \ \ } catch (ApiException ex) {\n Console.WriteLine(ex.Message);\n\ \ }\n }\n }\n}\n" /lifecycle/v4.2/resources/entities: get: tags: - Entities summary: Get details about all LCM entities. description: Query list of LCM entities. operationId: listEntities parameters: - name: $page in: query description: | A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results. required: false style: form explode: false schema: minimum: 0 type: integer description: | A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results. format: int32 default: 0 - name: $limit in: query description: | A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set. required: false style: form explode: false schema: maximum: 100 minimum: 1 type: integer description: | A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set. format: int32 default: 50 - name: $filter in: query description: |- A URL query parameter that allows clients to filter a collection of resources. The expression specified with $filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the $filter must conform to the [OData V4.01](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html) URL conventions. For example, filter **$filter=name eq 'karbon-ntnx-1.0'** would filter the result on cluster name 'karbon-ntnx1.0', filter **$filter=startswith(name, 'C')** would filter on cluster name starting with 'C'. required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: clusterExtId example: "https://{host}:{port}/api/lifecycle/v4.2/resources/entities?$filter=clusterExtId\ \ eq 'e965bc99-0c6f-40f4-a08b-00ae911a9a79'" - name: entityClass example: "https://{host}:{port}/api/lifecycle/v4.2/resources/entities?$filter=entityClass\ \ eq 'Core Cluster'" - name: entityModel example: "https://{host}:{port}/api/lifecycle/v4.2/resources/entities?$filter=entityModel\ \ eq 'AOS'" - name: entityType example: "https://{host}:{port}/api/lifecycle/v4.2/resources/entities?$filter=entityType\ \ eq Lifecycle.Common.EntityType'SOFTWARE'" - name: hardwareVendor example: "https://{host}:{port}/api/lifecycle/v4.2/resources/entities?$filter=hardwareVendor\ \ eq 'Dell'" - name: $orderby in: query description: "A URL query parameter that allows clients to specify the sort\ \ criteria for the returned list of objects. Resources can be sorted in\ \ ascending order using asc or descending order using desc. If asc or desc\ \ are not specified, the resources will be sorted in ascending order by\ \ default. For example, '$orderby=templateName desc' would get all templates\ \ sorted by templateName in descending order." required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: entityClass example: "https://{host}:{port}/api/lifecycle/v4.2/resources/entities?$orderby=entityClass" - name: entityModel example: "https://{host}:{port}/api/lifecycle/v4.2/resources/entities?$orderby=entityModel" - name: entityType example: "https://{host}:{port}/api/lifecycle/v4.2/resources/entities?$orderby=entityType" - name: entityVersion example: "https://{host}:{port}/api/lifecycle/v4.2/resources/entities?$orderby=entityVersion" - name: hardwareVendor example: "https://{host}:{port}/api/lifecycle/v4.2/resources/entities?$orderby=hardwareVendor" - name: $select in: query description: "A URL query parameter that allows clients to request a specific\ \ set of properties for each entity or complex type. Expression specified\ \ with the $select must conform to the [OData V4.01](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html)\ \ URL conventions. If a $select expression consists of a single select item\ \ that is an asterisk (i.e., *), then all properties on the matching resource\ \ will be returned." required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: entityClass example: "https://{host}:{port}/api/lifecycle/v4.2/resources/entities?$select=entityClass" - name: entityModel example: "https://{host}:{port}/api/lifecycle/v4.2/resources/entities?$select=entityModel" - name: entityType example: "https://{host}:{port}/api/lifecycle/v4.2/resources/entities?$select=entityType" - name: hardwareVendor example: "https://{host}:{port}/api/lifecycle/v4.2/resources/entities?$select=hardwareVendor" responses: "200": description: Paginated list of LCM entities. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.resources.Entity' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/entities Get operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/entities Get operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/entities Get operation x-permissions: operationName: View LCM Entity deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin - name: Prism Viewer - name: Cluster Viewer - name: Security Dashboard Admin - name: Security Dashboard Viewer x-rate-limit: - type: xsmall count: 5 timeUnit: seconds - type: Small count: 5 timeUnit: seconds - type: Large count: 5 timeUnit: seconds - type: XLarge count: 5 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "6.8" x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.EntitiesApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.Entities.ListEntitiesRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.ListEntitiesApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ EntitiesApi entitiesApi = new EntitiesApi(apiClient);\n\n \n\ \ int page = 0;\n \n int limit = 50;\n\n try\ \ {\n // Pass in parameters using the request builder object\ \ associated with the operation.\n ListEntitiesApiResponse listEntitiesApiResponse\ \ = entitiesApi.listEntities(ListEntitiesRequest.builder()\n \ \ .$page(page)\n .$limit(limit)\n .$filter(null)\n\ \ .$orderby(null)\n .$select(null)\n \ \ .build());\n\n System.out.println(listEntitiesApiResponse.toString());\n\ \n } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: |2 import { ApiClient, EntitiesApi } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let entitiesApi = new EntitiesApi(apiClientInstance); function sample() { // Construct Optional Parameters var opts = {}; opts["$page"] = 0; opts["$limit"] = 50; opts["$filter"] = "string_sample_data"; opts["$orderby"] = "string_sample_data"; opts["$select"] = "string_sample_data"; entitiesApi.listEntities(opts).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ entities_api = ntnx_lifecycle_py_client.EntitiesApi(api_client=client)\n\ \ \n page = 0\n \n limit = 50\n\n\n try:\n api_response\ \ = entities_api.list_entities(_page=page, _limit=limit)\n print(api_response)\n\ \ except ntnx_lifecycle_py_client.rest.ApiException as e:\n print(e)\n\ \n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/entities\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n EntitiesServiceApiInstance\ \ *api.EntitiesServiceApi\n)\n\nfunc main() {\n ApiClientInstance = client.NewApiClient()\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n ApiClientInstance.Host\ \ = \"localhost\"\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n ApiClientInstance.Port\ \ = 9440\n // Interval in ms to use during retry attempts\n ApiClientInstance.RetryInterval\ \ = 5 * time.Second\n // Max retry attempts while reconnecting on a loss\ \ of connection\n ApiClientInstance.MaxRetryAttempts = 5\n // UserName\ \ to connect to the cluster\n ApiClientInstance.Username = \"username\"\ \n // Password to connect to the cluster\n ApiClientInstance.Password\ \ = \"password\"\n // Please add authorization information here if needed.\n\ \ EntitiesServiceApiInstance = api.NewEntitiesServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n page_ := 0\n \n limit_\ \ := 50\n\n\n request := entities.ListEntitiesRequest{ Page_: &page_,\ \ Limit_: &limit_, Filter_: nil, Orderby_: nil, Select_: nil }\n response,\ \ error := EntitiesServiceApiInstance.ListEntities(ctx, &request)\n if\ \ error != nil {\n fmt.Println(error)\n return\n }\n \ \ data, _ := response.GetData().([]import1.Entity)\n fmt.Println(data)\n\ \n}\n\n" - lang: cURL source: |2+ curl --request GET \ --url "https://host:port/api/lifecycle/v4.2/resources/entities?$filter=string_sample_data&$limit=50&$orderby=string_sample_data&$page=0&$select=string_sample_data" \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method GET \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/entities?$filter=string_sample_data&$limit=50&$orderby=string_sample_data&$page=0&$select=string_sample_data" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ EntitiesApi entitiesApi = new EntitiesApi(client);\n\n int page\ \ = 0;\n int limit = 50;\n String filter = \"string_sample_data\"\ ;\n String orderby = \"string_sample_data\";\n String select =\ \ \"string_sample_data\";\n\n // Create request object with parameters\n\ \ var request = new ListEntitiesRequest {\n Page = page,\n\ \ Limit = limit,\n Filter = filter,\n Orderby\ \ = orderby,\n Select = select\n };\n try {\n \ \ ListEntitiesApiResponse listEntitiesApiResponse = entitiesApi.ListEntities(request);\n\ \ } catch (ApiException ex) {\n Console.WriteLine(ex.Message);\n\ \ }\n }\n }\n}\n" /lifecycle/v4.2/resources/entities/$actions/export: post: tags: - Entities summary: Export inventory information (the list of LCM entities) in the connected clusters. description: "Download the history and inventory information of connected clusters\ \ as a file. This API will return a task, which on completion will provide\ \ a URL in the completion_details field to download the file containing the\ \ inventory information." operationId: exportInventory parameters: - name: NTNX-Request-Id in: header description: | A unique identifier that is associated with each request. The provided value must be opaque and preferably in Universal Unique Identifier (UUID) format. This identifier is also used as an idempotence token for safely retrying requests in case of network errors. All the supported Nutanix API clients add this auto-generated request identifier to each request. required: true style: simple explode: false schema: type: string format: uuid example: 0823c042-b25f-4d0f-bf97-7c53d602d61a requestBody: content: application/json: schema: $ref: '#/components/schemas/lifecycle.v4.2.resources.ExportInventorySpec' required: true responses: "202": description: Export inventory operation triggered with the task UUID. headers: Location: style: simple explode: false schema: pattern: "^((http[s]?|nfs):\\/)?\\/?(([a-zA-Z0-9\\-\\.]+)|(\\d{1,3}(\\\ .\\d{1,3}){3})|(\\[[0-9a-fA-F:]+\\]))(:\\d+)?(\\/[^\\s?#]*)?(\\\ ?[^#\\s]*)?(#[^\\s]*)?$" type: string description: Indicates the target of a redirection or the URL of a newly created resource. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/prism.v4.3.config.TaskReference' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/entities/$actions/export Post operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/entities/$actions/export Post operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/entities/$actions/export Post operation x-permissions: operationName: Export Inventory deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin x-rate-limit: - type: xsmall count: 1 timeUnit: seconds - type: Small count: 1 timeUnit: seconds - type: Large count: 1 timeUnit: seconds - type: XLarge count: 1 timeUnit: seconds x-supported-versions: - product: PC version: "7.5" - product: PE version: "7.5" x-code-samples: - lang: Java source: |2 package sample; import com.nutanix.lif.java.client.ApiClient; import com.nutanix.lif.java.client.api.EntitiesApi; import com.nutanix.dp1.lif.lifecycle.v4.request.Entities.ExportInventoryRequest; import com.nutanix.dp1.lif.lifecycle.v4.common.FileFormat; import com.nutanix.dp1.lif.lifecycle.v4.resources.ExportInventorySpec; import com.nutanix.dp1.lif.lifecycle.v4.resources.ExportInventoryApiResponse; import org.springframework.web.client.RestClientException; public class JavaSdkSample { public static void main(String[] args) { // Configure the client ApiClient apiClient = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClient.setHost("localhost"); // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClient.setPort(9440); // Interval in ms to use during retry attempts apiClient.setRetryInterval(5000); // Max retry attempts while reconnecting on a loss of connection apiClient.setMaxRetryAttempts(5); // UserName to connect to the cluster String username = "username"; // Password to connect to the cluster String password = "password"; apiClient.setUsername(username); apiClient.setPassword(password); // Please add authorization information here if needed. EntitiesApi entitiesApi = new EntitiesApi(apiClient); ExportInventorySpec exportInventorySpec = new ExportInventorySpec(); // ExportInventorySpec object initializations here... exportInventorySpec.setFileFormat(FileFormat.UNKNOWN); // required field try { // Pass in parameters using the request builder object associated with the operation. ExportInventoryApiResponse exportInventoryApiResponse = entitiesApi.exportInventory(ExportInventoryRequest.builder() .build(), exportInventorySpec); System.out.println(exportInventoryApiResponse.toString()); } catch (RestClientException ex) { System.out.println(ex.getMessage()); } } } - lang: JavaScript source: |2 import { ApiClient, EntitiesApi, FileFormat, ExportInventorySpec } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let entitiesApi = new EntitiesApi(apiClientInstance); function sample() { let exportInventorySpec = new ExportInventorySpec(); // ExportInventorySpec object initializations here... exportInventorySpec.setFileFormat(FileFormat.UNKNOWN); // required field exportInventorySpec = JSON.stringify(exportInventorySpec); entitiesApi.exportInventory(exportInventorySpec).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: |2+ import ntnx_lifecycle_py_client if __name__ == "__main__": # Configure the client config = ntnx_lifecycle_py_client.Configuration() # IPv4/IPv6 address or FQDN of the cluster config.host = "localhost" # Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. config.port = 9440 # Max retry attempts while reconnecting on a loss of connection config.max_retry_attempts = 3 # Backoff factor to use during retry attempts config.backoff_factor = 3 # UserName to connect to the cluster config.username = "username" # Password to connect to the cluster config.password = "password" # Please add authorization information here if needed. client = ntnx_lifecycle_py_client.ApiClient(configuration=config) entities_api = ntnx_lifecycle_py_client.EntitiesApi(api_client=client) exportInventorySpec = ntnx_lifecycle_py_client.ExportInventorySpec() # ExportInventorySpec object initializations here... exportInventorySpec.file_format = ntnx_lifecycle_py_client.FileFormat._UNKNOWN # required field try: api_response = entities_api.export_inventory(body=exportInventorySpec) print(api_response) except ntnx_lifecycle_py_client.rest.ApiException as e: print(e) - lang: Go source: |2+ package main import ( "fmt" "time" "context" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/entities" import1 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources" import2 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/prism/v4/config" ) var ( ApiClientInstance *client.ApiClient EntitiesServiceApiInstance *api.EntitiesServiceApi ) func main() { ApiClientInstance = client.NewApiClient() // IPv4/IPv6 address or FQDN of the cluster ApiClientInstance.Host = "localhost" // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. ApiClientInstance.Port = 9440 // Interval in ms to use during retry attempts ApiClientInstance.RetryInterval = 5 * time.Second // Max retry attempts while reconnecting on a loss of connection ApiClientInstance.MaxRetryAttempts = 5 // UserName to connect to the cluster ApiClientInstance.Username = "username" // Password to connect to the cluster ApiClientInstance.Password = "password" // Please add authorization information here if needed. EntitiesServiceApiInstance = api.NewEntitiesServiceApi(ApiClientInstance) ctx := context.Background() exportInventorySpec := import1.NewExportInventorySpec() // ExportInventorySpec object initializations here... request := entities.ExportInventoryRequest{ Body: exportInventorySpec } response, error := EntitiesServiceApiInstance.ExportInventory(ctx, &request) if error != nil { fmt.Println(error) return } data, _ := response.GetData().(import2.TaskReference) fmt.Println(data) } - lang: cURL source: |2+ curl --request POST \ --url "https://host:port/api/lifecycle/v4.2/resources/entities/$actions/export" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --data {"fileFormat":"$UNKNOWN","$objectType":"lifecycle.v4.resources.ExportInventorySpec"} \ - lang: Wget source: |2 wget --verbose \ --method POST \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --body-data {"fileFormat":"$UNKNOWN","$objectType":"lifecycle.v4.resources.ExportInventorySpec"} \ - "https://host:port/api/lifecycle/v4.2/resources/entities/$actions/export" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Common;\nusing Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\ \nnamespace CsharpSdkSample\n{\n class Program\n {\n static void Main(string[]\ \ args) {\n // Configure the client\n Configuration _config =\ \ new Configuration\n {\n // UserName to connect to the cluster\n\ \ Username = \"username\",\n // Password(SecureString) to\ \ connect to the cluster \n Password = Configuration.CreateSecurePassword(\"\ password\"),\n // IPv4/IPv6 address or FQDN of the cluster\n \ \ Host = \"localhost\",\n // Port used for the connection. \n\ \ Port = 9440,\n // Backoff period in seconds (exponential\ \ backoff: 2, 4, 8... seconds)\n BackOffPeriod = 2,\n // Max\ \ retry attempts while reconnecting on a loss of connection\n MaxRetryAttempts\ \ = 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n\ \ EntitiesApi entitiesApi = new EntitiesApi(client);\n\n ExportInventorySpec\ \ exportInventorySpec = new ExportInventorySpec();\n\n // ExportInventorySpec\ \ object initializations here...\n exportInventorySpec.FileFormat =\ \ FileFormat.UNKNOWN; // required field\n\n\n // Create request\ \ object with parameters\n var request = new ExportInventoryRequest\ \ {\n Body = exportInventorySpec\n };\n try {\n\ \ ExportInventoryApiResponse exportInventoryApiResponse = entitiesApi.ExportInventory(request);\n\ \ } catch (ApiException ex) {\n Console.WriteLine(ex.Message);\n\ \ }\n }\n }\n}\n" /lifecycle/v4.2/resources/images: get: tags: - Images summary: Get the list of downloaded LCM images. description: Get the list of downloaded LCM images. operationId: listImages parameters: - name: $page in: query description: | A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results. required: false style: form explode: false schema: minimum: 0 type: integer description: | A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results. format: int32 default: 0 - name: $limit in: query description: | A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set. required: false style: form explode: false schema: maximum: 100 minimum: 1 type: integer description: | A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set. format: int32 default: 50 - name: $filter in: query description: |- A URL query parameter that allows clients to filter a collection of resources. The expression specified with $filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the $filter must conform to the [OData V4.01](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html) URL conventions. For example, filter **$filter=name eq 'karbon-ntnx-1.0'** would filter the result on cluster name 'karbon-ntnx1.0', filter **$filter=startswith(name, 'C')** would filter on cluster name starting with 'C'. required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: clusterExtId example: "https://{host}:{port}/api/lifecycle/v4.2/resources/images?$filter=clusterExtId\ \ eq 'eabdea97-5517-4634-9e5c-fac19e991da8'" - name: entityClass example: "https://{host}:{port}/api/lifecycle/v4.2/resources/images?$filter=entityClass\ \ eq 'Core Cluster'" - name: entityModel example: "https://{host}:{port}/api/lifecycle/v4.2/resources/images?$filter=entityModel\ \ eq 'AOS'" - name: entityVersion example: "https://{host}:{port}/api/lifecycle/v4.2/resources/images?$filter=entityVersion\ \ eq '5.20.0'" - name: $orderby in: query description: "A URL query parameter that allows clients to specify the sort\ \ criteria for the returned list of objects. Resources can be sorted in\ \ ascending order using asc or descending order using desc. If asc or desc\ \ are not specified, the resources will be sorted in ascending order by\ \ default. For example, '$orderby=templateName desc' would get all templates\ \ sorted by templateName in descending order." required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: entityClass example: "https://{host}:{port}/api/lifecycle/v4.2/resources/images?$orderby=entityClass" - name: entityModel example: "https://{host}:{port}/api/lifecycle/v4.2/resources/images?$orderby=entityModel" - name: entityVersion example: "https://{host}:{port}/api/lifecycle/v4.2/resources/images?$orderby=entityVersion" - name: $select in: query description: "A URL query parameter that allows clients to request a specific\ \ set of properties for each entity or complex type. Expression specified\ \ with the $select must conform to the [OData V4.01](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html)\ \ URL conventions. If a $select expression consists of a single select item\ \ that is an asterisk (i.e., *), then all properties on the matching resource\ \ will be returned." required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: entityClass example: "https://{host}:{port}/api/lifecycle/v4.2/resources/images?$select=entityClass" - name: entityModel example: "https://{host}:{port}/api/lifecycle/v4.2/resources/images?$select=entityModel" - name: entityVersion example: "https://{host}:{port}/api/lifecycle/v4.2/resources/images?$select=entityVersion" responses: "200": description: Get a list of LCM images. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.resources.Image' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/images Get operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/images Get operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/images Get operation x-permissions: operationName: View LCM Image deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin - name: Prism Viewer - name: Cluster Viewer x-rate-limit: - type: xsmall count: 8 timeUnit: seconds - type: Small count: 8 timeUnit: seconds - type: Large count: 8 timeUnit: seconds - type: XLarge count: 8 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "6.8" x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.ImagesApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.Images.ListImagesRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.ListImagesApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ ImagesApi imagesApi = new ImagesApi(apiClient);\n\n \n \ \ int page = 0;\n \n int limit = 50;\n\n try {\n\ \ // Pass in parameters using the request builder object associated\ \ with the operation.\n ListImagesApiResponse listImagesApiResponse\ \ = imagesApi.listImages(ListImagesRequest.builder()\n .$page(page)\n\ \ .$limit(limit)\n .$filter(null)\n \ \ .$orderby(null)\n .$select(null)\n \ \ .build());\n\n System.out.println(listImagesApiResponse.toString());\n\ \n } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: |2 import { ApiClient, ImagesApi } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let imagesApi = new ImagesApi(apiClientInstance); function sample() { // Construct Optional Parameters var opts = {}; opts["$page"] = 0; opts["$limit"] = 50; opts["$filter"] = "string_sample_data"; opts["$orderby"] = "string_sample_data"; opts["$select"] = "string_sample_data"; imagesApi.listImages(opts).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ images_api = ntnx_lifecycle_py_client.ImagesApi(api_client=client)\n\ \ \n page = 0\n \n limit = 50\n\n\n try:\n api_response\ \ = images_api.list_images(_page=page, _limit=limit)\n print(api_response)\n\ \ except ntnx_lifecycle_py_client.rest.ApiException as e:\n print(e)\n\ \n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/images\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n ImagesServiceApiInstance\ \ *api.ImagesServiceApi\n)\n\nfunc main() {\n ApiClientInstance = client.NewApiClient()\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n ApiClientInstance.Host\ \ = \"localhost\"\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n ApiClientInstance.Port\ \ = 9440\n // Interval in ms to use during retry attempts\n ApiClientInstance.RetryInterval\ \ = 5 * time.Second\n // Max retry attempts while reconnecting on a loss\ \ of connection\n ApiClientInstance.MaxRetryAttempts = 5\n // UserName\ \ to connect to the cluster\n ApiClientInstance.Username = \"username\"\ \n // Password to connect to the cluster\n ApiClientInstance.Password\ \ = \"password\"\n // Please add authorization information here if needed.\n\ \ ImagesServiceApiInstance = api.NewImagesServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n page_ := 0\n \n limit_\ \ := 50\n\n\n request := images.ListImagesRequest{ Page_: &page_, Limit_:\ \ &limit_, Filter_: nil, Orderby_: nil, Select_: nil }\n response, error\ \ := ImagesServiceApiInstance.ListImages(ctx, &request)\n if error !=\ \ nil {\n fmt.Println(error)\n return\n }\n data, _\ \ := response.GetData().([]import1.Image)\n fmt.Println(data)\n\n}\n\n" - lang: cURL source: |2+ curl --request GET \ --url "https://host:port/api/lifecycle/v4.2/resources/images?$filter=string_sample_data&$limit=50&$orderby=string_sample_data&$page=0&$select=string_sample_data" \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method GET \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/images?$filter=string_sample_data&$limit=50&$orderby=string_sample_data&$page=0&$select=string_sample_data" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ ImagesApi imagesApi = new ImagesApi(client);\n\n int page = 0;\n\ \ int limit = 50;\n String filter = \"string_sample_data\";\n\ \ String orderby = \"string_sample_data\";\n String select = \"\ string_sample_data\";\n\n // Create request object with parameters\n\ \ var request = new ListImagesRequest {\n Page = page,\n\ \ Limit = limit,\n Filter = filter,\n Orderby\ \ = orderby,\n Select = select\n };\n try {\n \ \ ListImagesApiResponse listImagesApiResponse = imagesApi.ListImages(request);\n\ \ } catch (ApiException ex) {\n Console.WriteLine(ex.Message);\n\ \ }\n }\n }\n}\n" /lifecycle/v4.2/operations/$actions/inventory: post: tags: - Inventory summary: Perform an inventory operation to identify/scan entities on the cluster that can be updated through LCM. description: Perform an LCM inventory operation. operationId: performInventory parameters: - name: NTNX-Request-Id in: header description: | A unique identifier that is associated with each request. The provided value must be opaque and preferably in Universal Unique Identifier (UUID) format. This identifier is also used as an idempotence token for safely retrying requests in case of network errors. All the supported Nutanix API clients add this auto-generated request identifier to each request. required: true style: simple explode: false schema: type: string format: uuid example: deaf3863-a0d8-4e5a-bb59-1cbc94cbead9 - name: X-Cluster-Id in: header description: Cluster uuid on which the resource is present or operation is being performed. required: false style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 0e3a4d6a-f696-4570-9733-fba53fdf15f0 - name: $dryrun in: query description: | A URL query parameter that allows long running operations to execute in a dry-run mode providing ability to identify trouble spots and system failures without performing the actual operation. Additionally this mode also offers a summary snapshot of the resultant system in order to better understand how things fit together. The operation runs in dry-run mode only if the provided value is true. required: false style: form explode: false schema: type: boolean description: | A URL query parameter that allows long running operations to execute in a dry-run mode providing ability to identify trouble spots and system failures without performing the actual operation. Additionally this mode also offers a summary snapshot of the resultant system in order to better understand how things fit together. The operation runs in dry-run mode only if the provided value is true. example: true requestBody: content: application/json: schema: $ref: '#/components/schemas/lifecycle.v4.2.operations.InventorySpec' required: false responses: "202": description: LCM inventory operation triggered with the task UUID. headers: Location: style: simple explode: false schema: pattern: "^((http[s]?|nfs):\\/)?\\/?(([a-zA-Z0-9\\-\\.]+)|(\\d{1,3}(\\\ .\\d{1,3}){3})|(\\[[0-9a-fA-F:]+\\]))(:\\d+)?(\\/[^\\s?#]*)?(\\\ ?[^#\\s]*)?(#[^\\s]*)?$" type: string description: Indicates the target of a redirection or the URL of a newly created resource. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/prism.v4.3.config.TaskReference' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/inventory Post operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/inventory Post operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/inventory Post operation x-permissions: operationName: Perform Inventory Component deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin x-rate-limit: - type: xsmall count: 8 timeUnit: seconds - type: Small count: 8 timeUnit: seconds - type: Large count: 8 timeUnit: seconds - type: XLarge count: 8 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: 7.0.1.6 x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.InventoryApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.Inventory.PerformInventoryRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.operations.InventorySpec;\nimport\ \ com.nutanix.dp1.lif.lifecycle.v4.operations.InventoryApiResponse;\nimport\ \ org.springframework.web.client.RestClientException;\n\npublic class JavaSdkSample\ \ {\n public static void main(String[] args) {\n // Configure\ \ the client\n ApiClient apiClient = new ApiClient();\n //\ \ IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ InventoryApi inventoryApi = new InventoryApi(apiClient);\n\n \ \ InventorySpec inventorySpec = new InventorySpec();\n\n // InventorySpec\ \ object initializations here...\n \n boolean dryrun = true;\n\ \n try {\n // Pass in parameters using the request builder\ \ object associated with the operation.\n InventoryApiResponse\ \ inventoryApiResponse = inventoryApi.performInventory(PerformInventoryRequest.builder()\n\ \ .$dryrun(dryrun)\n .build(), inventorySpec);\n\ \n System.out.println(inventoryApiResponse.toString());\n\n \ \ } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: |2 import { ApiClient, InventoryApi, InventorySpec } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let inventoryApi = new InventoryApi(apiClientInstance); function sample() { let inventorySpec = new InventorySpec(); // InventorySpec object initializations here... inventorySpec = JSON.stringify(inventorySpec); // Construct Optional Parameters var opts = {}; opts["$dryrun"] = true; inventoryApi.performInventory(inventorySpec, opts).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ inventory_api = ntnx_lifecycle_py_client.InventoryApi(api_client=client)\n\ \ inventorySpec = ntnx_lifecycle_py_client.InventorySpec()\n\n # InventorySpec\ \ object initializations here...\n \n dryrun = True\n\n\n try:\n\ \ api_response = inventory_api.perform_inventory(body=inventorySpec,\ \ _dryrun=dryrun)\n print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/inventory\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/operations\"\ \n import2 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/prism/v4/config\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n InventoryServiceApiInstance\ \ *api.InventoryServiceApi\n)\n\nfunc main() {\n ApiClientInstance =\ \ client.NewApiClient()\n // IPv4/IPv6 address or FQDN of the cluster\n\ \ ApiClientInstance.Host = \"localhost\"\n // Port used for the connection.\ \ PC products typically use port 9440, while NC products typically use port\ \ 443. See the product-specific documentation for accurate configuration.\n\ \ ApiClientInstance.Port = 9440\n // Interval in ms to use during\ \ retry attempts\n ApiClientInstance.RetryInterval = 5 * time.Second\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ ApiClientInstance.MaxRetryAttempts = 5\n // UserName to connect\ \ to the cluster\n ApiClientInstance.Username = \"username\"\n //\ \ Password to connect to the cluster\n ApiClientInstance.Password = \"\ password\"\n // Please add authorization information here if needed.\n\ \ InventoryServiceApiInstance = api.NewInventoryServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n inventorySpec := import1.NewInventorySpec()\n\ \n // InventorySpec object initializations here...\n\n \n dryrun_\ \ := true\n\n\n request := inventory.PerformInventoryRequest{ Body: inventorySpec,\ \ Dryrun_: &dryrun_ }\n response, error := InventoryServiceApiInstance.PerformInventory(ctx,\ \ &request)\n if error != nil {\n fmt.Println(error)\n \ \ return\n }\n data, _ := response.GetData().(import2.TaskReference)\n\ \ fmt.Println(data)\n\n}\n\n" - lang: cURL source: |2+ curl --request POST \ --url "https://host:port/api/lifecycle/v4.2/operations/$actions/inventory?$dryrun=true" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'X-Cluster-Id: 69A478df-E9dc-c44F-Cc58-9aBdaec57B96' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --data {"credentials":[{"credentialDetail":{"credentialExtId":"string","$objectType":"lifecycle.v4.common.CredentialReference"},"$objectType":"lifecycle.v4.common.Credential"}],"$objectType":"lifecycle.v4.operations.InventorySpec"} \ - lang: Wget source: |2 wget --verbose \ --method POST \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'X-Cluster-Id: B7dDaefd-cB2F-CC1f-C6fB-C6CfA6CEc1f7' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --body-data {"credentials":[{"credentialDetail":{"credentialExtId":"string","$objectType":"lifecycle.v4.common.CredentialReference"},"$objectType":"lifecycle.v4.common.Credential"}],"$objectType":"lifecycle.v4.operations.InventorySpec"} \ - "https://host:port/api/lifecycle/v4.2/operations/$actions/inventory?$dryrun=true" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Operations;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ InventoryApi inventoryApi = new InventoryApi(client);\n\n InventorySpec\ \ inventorySpec = new InventorySpec();\n\n // InventorySpec object\ \ initializations here...\n\n boolean dryrun = true;\n\n //\ \ Create request object with parameters\n var request = new PerformInventoryRequest\ \ {\n Body = inventorySpec,\n Dryrun = dryrun\n \ \ };\n try {\n InventoryApiResponse inventoryApiResponse\ \ = inventoryApi.PerformInventory(request);\n } catch (ApiException\ \ ex) {\n Console.WriteLine(ex.Message);\n }\n }\n\ \ }\n}\n" /lifecycle/v4.2/resources/lcm-histories/$actions/export: post: tags: - LcmHistories summary: Export the history information of connected clusters. description: "Download the history information of connected clusters as a file.\ \ This API will return a task, which on completion will provide a URL in the\ \ completion_details field to download the file containing the history information." operationId: exportHistories parameters: - name: NTNX-Request-Id in: header description: | A unique identifier that is associated with each request. The provided value must be opaque and preferably in Universal Unique Identifier (UUID) format. This identifier is also used as an idempotence token for safely retrying requests in case of network errors. All the supported Nutanix API clients add this auto-generated request identifier to each request. required: true style: simple explode: false schema: type: string format: uuid example: 520f1c98-ddbb-4b8c-a854-962555fa7026 requestBody: content: application/json: schema: $ref: '#/components/schemas/lifecycle.v4.2.resources.ExportHistorySpec' required: true responses: "202": description: Export histories operation triggered with the task UUID. headers: Location: style: simple explode: false schema: pattern: "^((http[s]?|nfs):\\/)?\\/?(([a-zA-Z0-9\\-\\.]+)|(\\d{1,3}(\\\ .\\d{1,3}){3})|(\\[[0-9a-fA-F:]+\\]))(:\\d+)?(\\/[^\\s?#]*)?(\\\ ?[^#\\s]*)?(#[^\\s]*)?$" type: string description: Indicates the target of a redirection or the URL of a newly created resource. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/prism.v4.3.config.TaskReference' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-histories/$actions/export Post operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-histories/$actions/export Post operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-histories/$actions/export Post operation x-permissions: operationName: Export History deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin x-rate-limit: - type: xsmall count: 1 timeUnit: seconds - type: Small count: 1 timeUnit: seconds - type: Large count: 1 timeUnit: seconds - type: XLarge count: 1 timeUnit: seconds x-supported-versions: - product: PC version: "7.5" - product: PE version: "7.5" x-code-samples: - lang: Java source: |2 package sample; import com.nutanix.lif.java.client.ApiClient; import com.nutanix.lif.java.client.api.LcmHistoriesApi; import com.nutanix.dp1.lif.lifecycle.v4.request.LcmHistories.ExportHistoriesRequest; import com.nutanix.dp1.lif.lifecycle.v4.common.FileFormat; import com.nutanix.dp1.lif.lifecycle.v4.resources.ExportHistorySpec; import com.nutanix.dp1.lif.lifecycle.v4.resources.ExportHistoriesApiResponse; import org.springframework.web.client.RestClientException; public class JavaSdkSample { public static void main(String[] args) { // Configure the client ApiClient apiClient = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClient.setHost("localhost"); // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClient.setPort(9440); // Interval in ms to use during retry attempts apiClient.setRetryInterval(5000); // Max retry attempts while reconnecting on a loss of connection apiClient.setMaxRetryAttempts(5); // UserName to connect to the cluster String username = "username"; // Password to connect to the cluster String password = "password"; apiClient.setUsername(username); apiClient.setPassword(password); // Please add authorization information here if needed. LcmHistoriesApi lcmHistoriesApi = new LcmHistoriesApi(apiClient); ExportHistorySpec exportHistorySpec = new ExportHistorySpec(); // ExportHistorySpec object initializations here... exportHistorySpec.setFileFormat(FileFormat.UNKNOWN); // required field try { // Pass in parameters using the request builder object associated with the operation. ExportHistoriesApiResponse exportHistoriesApiResponse = lcmHistoriesApi.exportHistories(ExportHistoriesRequest.builder() .build(), exportHistorySpec); System.out.println(exportHistoriesApiResponse.toString()); } catch (RestClientException ex) { System.out.println(ex.getMessage()); } } } - lang: JavaScript source: |2 import { ApiClient, LcmHistoriesApi, FileFormat, ExportHistorySpec } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let lcmHistoriesApi = new LcmHistoriesApi(apiClientInstance); function sample() { let exportHistorySpec = new ExportHistorySpec(); // ExportHistorySpec object initializations here... exportHistorySpec.setFileFormat(FileFormat.UNKNOWN); // required field exportHistorySpec = JSON.stringify(exportHistorySpec); lcmHistoriesApi.exportHistories(exportHistorySpec).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: |2+ import ntnx_lifecycle_py_client if __name__ == "__main__": # Configure the client config = ntnx_lifecycle_py_client.Configuration() # IPv4/IPv6 address or FQDN of the cluster config.host = "localhost" # Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. config.port = 9440 # Max retry attempts while reconnecting on a loss of connection config.max_retry_attempts = 3 # Backoff factor to use during retry attempts config.backoff_factor = 3 # UserName to connect to the cluster config.username = "username" # Password to connect to the cluster config.password = "password" # Please add authorization information here if needed. client = ntnx_lifecycle_py_client.ApiClient(configuration=config) lcm_histories_api = ntnx_lifecycle_py_client.LcmHistoriesApi(api_client=client) exportHistorySpec = ntnx_lifecycle_py_client.ExportHistorySpec() # ExportHistorySpec object initializations here... exportHistorySpec.file_format = ntnx_lifecycle_py_client.FileFormat._UNKNOWN # required field try: api_response = lcm_histories_api.export_histories(body=exportHistorySpec) print(api_response) except ntnx_lifecycle_py_client.rest.ApiException as e: print(e) - lang: Go source: |2+ package main import ( "fmt" "time" "context" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/lcmhistories" import1 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources" import2 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/prism/v4/config" ) var ( ApiClientInstance *client.ApiClient LcmHistoriesServiceApiInstance *api.LcmHistoriesServiceApi ) func main() { ApiClientInstance = client.NewApiClient() // IPv4/IPv6 address or FQDN of the cluster ApiClientInstance.Host = "localhost" // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. ApiClientInstance.Port = 9440 // Interval in ms to use during retry attempts ApiClientInstance.RetryInterval = 5 * time.Second // Max retry attempts while reconnecting on a loss of connection ApiClientInstance.MaxRetryAttempts = 5 // UserName to connect to the cluster ApiClientInstance.Username = "username" // Password to connect to the cluster ApiClientInstance.Password = "password" // Please add authorization information here if needed. LcmHistoriesServiceApiInstance = api.NewLcmHistoriesServiceApi(ApiClientInstance) ctx := context.Background() exportHistorySpec := import1.NewExportHistorySpec() // ExportHistorySpec object initializations here... request := lcmhistories.ExportHistoriesRequest{ Body: exportHistorySpec } response, error := LcmHistoriesServiceApiInstance.ExportHistories(ctx, &request) if error != nil { fmt.Println(error) return } data, _ := response.GetData().(import2.TaskReference) fmt.Println(data) } - lang: cURL source: |2+ curl --request POST \ --url "https://host:port/api/lifecycle/v4.2/resources/lcm-histories/$actions/export" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --data {"fileFormat":"$UNKNOWN","$objectType":"lifecycle.v4.resources.ExportHistorySpec"} \ - lang: Wget source: |2 wget --verbose \ --method POST \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --body-data {"fileFormat":"$UNKNOWN","$objectType":"lifecycle.v4.resources.ExportHistorySpec"} \ - "https://host:port/api/lifecycle/v4.2/resources/lcm-histories/$actions/export" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Common;\nusing Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\ \nnamespace CsharpSdkSample\n{\n class Program\n {\n static void Main(string[]\ \ args) {\n // Configure the client\n Configuration _config =\ \ new Configuration\n {\n // UserName to connect to the cluster\n\ \ Username = \"username\",\n // Password(SecureString) to\ \ connect to the cluster \n Password = Configuration.CreateSecurePassword(\"\ password\"),\n // IPv4/IPv6 address or FQDN of the cluster\n \ \ Host = \"localhost\",\n // Port used for the connection. \n\ \ Port = 9440,\n // Backoff period in seconds (exponential\ \ backoff: 2, 4, 8... seconds)\n BackOffPeriod = 2,\n // Max\ \ retry attempts while reconnecting on a loss of connection\n MaxRetryAttempts\ \ = 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n\ \ LcmHistoriesApi lcmHistoriesApi = new LcmHistoriesApi(client);\n\n\ \ ExportHistorySpec exportHistorySpec = new ExportHistorySpec();\n\n\ \ // ExportHistorySpec object initializations here...\n exportHistorySpec.FileFormat\ \ = FileFormat.UNKNOWN; // required field\n\n\n // Create request\ \ object with parameters\n var request = new ExportHistoriesRequest\ \ {\n Body = exportHistorySpec\n };\n try {\n \ \ ExportHistoriesApiResponse exportHistoriesApiResponse = lcmHistoriesApi.ExportHistories(request);\n\ \ } catch (ApiException ex) {\n Console.WriteLine(ex.Message);\n\ \ }\n }\n }\n}\n" /lifecycle/v4.2/resources/lcm-histories/{extId}: get: tags: - LcmHistories summary: Get details about an LCM history entry. description: Query an LCM History entry by its id. operationId: getLcmHistoryById parameters: - name: extId in: path description: UUID of the LCM history. required: true style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: f5302553-8c76-403e-8731-ffce135eb82a responses: "200": description: Details of the queried LCM history. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.resources.LcmHistory' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-histories/{extId}\ \ Get operation" "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-histories/{extId}\ \ Get operation" "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-histories/{extId}\ \ Get operation" x-permissions: operationName: View LCM History deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin - name: Prism Viewer - name: Cluster Viewer x-rate-limit: - type: xsmall count: 10 timeUnit: seconds - type: Small count: 10 timeUnit: seconds - type: Large count: 10 timeUnit: seconds - type: XLarge count: 10 timeUnit: seconds x-supported-versions: - product: PC version: "7.5" - product: PE version: "7.5" x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.LcmHistoriesApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.LcmHistories.GetLcmHistoryByIdRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.GetLcmHistoryByIdApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ LcmHistoriesApi lcmHistoriesApi = new LcmHistoriesApi(apiClient);\n\ \n \n String extId = \"aeE2dafD-7CDe-a0bb-adCe-2FAEdc4C9A0f\"\ ;\n\n try {\n // Pass in parameters using the request\ \ builder object associated with the operation.\n GetLcmHistoryByIdApiResponse\ \ getLcmHistoryByIdApiResponse = lcmHistoriesApi.getLcmHistoryById(GetLcmHistoryByIdRequest.builder()\n\ \ .extId(extId)\n .build());\n\n \ \ System.out.println(getLcmHistoryByIdApiResponse.toString());\n\n \ \ } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: "\nimport { ApiClient, LcmHistoriesApi } from \"@nutanix-api/lifecycle-js-client\"\ ;\n\n// Configure the client\nlet apiClientInstance = new ApiClient();\n\ // IPv4/IPv6 address or FQDN of the cluster\napiClientInstance.host = 'localhost';\n\ // Port used for the connection. PC products typically use port 9440, while\ \ NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\napiClientInstance.port = '9440';\n// Max\ \ retry attempts while reconnecting on a loss of connection\napiClientInstance.maxRetryAttempts\ \ = 5;\n// Interval in ms to use during retry attempts\napiClientInstance.retryInterval\ \ = 5000;\n// UserName to connect to the cluster\napiClientInstance.username\ \ = 'username';\n// Password to connect to the cluster\napiClientInstance.password\ \ = 'password';\n// Please add authorization information here if needed.\n\ let lcmHistoriesApi = new LcmHistoriesApi(apiClientInstance);\n\nfunction\ \ sample() {\n\n \n let extId = \"E9AECfAb-fa78-CEBd-aEBF-CCEE2cB6aE1f\"\ ;\n\n\n\n\n\n lcmHistoriesApi.getLcmHistoryById(extId).then(({data, response})\ \ => {\n console.log(`API returned the following status code: ${response.status}`);\n\ \ console.log(data.getData());\n }).catch((error) => {\n \ \ console.log(`Error is: ${error}`);\n });\n\n}\nsample()\n" - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ lcm_histories_api = ntnx_lifecycle_py_client.LcmHistoriesApi(api_client=client)\n\ \ \n ext_id = \"Ea1f56dE-DBDc-dFaE-a89b-bA0dcd2EeD7a\"\n\n\n try:\n\ \ api_response = lcm_histories_api.get_lcm_history_by_id(extId=ext_id)\n\ \ print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/lcmhistories\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n LcmHistoriesServiceApiInstance\ \ *api.LcmHistoriesServiceApi\n)\n\nfunc main() {\n ApiClientInstance\ \ = client.NewApiClient()\n // IPv4/IPv6 address or FQDN of the cluster\n\ \ ApiClientInstance.Host = \"localhost\"\n // Port used for the connection.\ \ PC products typically use port 9440, while NC products typically use port\ \ 443. See the product-specific documentation for accurate configuration.\n\ \ ApiClientInstance.Port = 9440\n // Interval in ms to use during\ \ retry attempts\n ApiClientInstance.RetryInterval = 5 * time.Second\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ ApiClientInstance.MaxRetryAttempts = 5\n // UserName to connect\ \ to the cluster\n ApiClientInstance.Username = \"username\"\n //\ \ Password to connect to the cluster\n ApiClientInstance.Password = \"\ password\"\n // Please add authorization information here if needed.\n\ \ LcmHistoriesServiceApiInstance = api.NewLcmHistoriesServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n extId := \"CDcFFe7a-ceEb-9f3f-D1E2-dDBecCeABDA4\"\ \n\n\n request := lcmhistories.GetLcmHistoryByIdRequest{ ExtId: &extId\ \ }\n response, error := LcmHistoriesServiceApiInstance.GetLcmHistoryById(ctx,\ \ &request)\n if error != nil {\n fmt.Println(error)\n \ \ return\n }\n data, _ := response.GetData().(import1.LcmHistory)\n\ \ fmt.Println(data)\n\n}\n\n" - lang: cURL source: |2+ curl --request GET \ --url "https://host:port/api/lifecycle/v4.2/resources/lcm-histories/80FeC52D-EFbD-Ccaf-fB2f-E8B3CbfbfAEF" \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method GET \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/lcm-histories/CEBD7F8B-d22F-8b3B-bECA-f13eDC4533EA" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ LcmHistoriesApi lcmHistoriesApi = new LcmHistoriesApi(client);\n\n\ \ String extId = \"ab5aA6fF-E2ed-Be69-4C64-cEaecFC7C9e1\";\n\n \ \ // Create request object with parameters\n var request = new\ \ GetLcmHistoryByIdRequest {\n ExtId = extId\n };\n \ \ try {\n GetLcmHistoryByIdApiResponse getLcmHistoryByIdApiResponse\ \ = lcmHistoriesApi.GetLcmHistoryById(request);\n } catch (ApiException\ \ ex) {\n Console.WriteLine(ex.Message);\n }\n }\n\ \ }\n}\n" /lifecycle/v4.2/resources/lcm-histories: get: tags: - LcmHistories summary: Summary of the queried LCM histories. description: Query list of LCM histories. operationId: listLcmHistories parameters: - name: $page in: query description: | A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results. required: false style: form explode: false schema: minimum: 0 type: integer description: | A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results. format: int32 default: 0 - name: $limit in: query description: | A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set. required: false style: form explode: false schema: maximum: 100 minimum: 1 type: integer description: | A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set. format: int32 default: 50 - name: $filter in: query description: |- A URL query parameter that allows clients to filter a collection of resources. The expression specified with $filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the $filter must conform to the [OData V4.01](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html) URL conventions. For example, filter **$filter=name eq 'karbon-ntnx-1.0'** would filter the result on cluster name 'karbon-ntnx1.0', filter **$filter=startswith(name, 'C')** would filter on cluster name starting with 'C'. required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: clusterExtId example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$filter=clusterExtId\ \ eq 'f9d6871b-d633-4051-a1a8-d45a9603d8e9'" - name: clusterName example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$filter=clusterName\ \ eq 'string'" - name: endTime example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$filter=endTime\ \ eq '2009-09-23T14:30:00-07:00'" - name: frameworkVersion example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$filter=frameworkVersion\ \ eq 'string'" - name: operationStatus example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$filter=operationStatus\ \ eq Lifecycle.Common.OperationStatus'SUCCEEDED'" - name: operationType example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$filter=operationType\ \ eq Lifecycle.Common.OperationType'INVENTORY'" - name: startTime example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$filter=startTime\ \ eq '2009-09-23T14:30:00-07:00'" - name: $orderby in: query description: "A URL query parameter that allows clients to specify the sort\ \ criteria for the returned list of objects. Resources can be sorted in\ \ ascending order using asc or descending order using desc. If asc or desc\ \ are not specified, the resources will be sorted in ascending order by\ \ default. For example, '$orderby=templateName desc' would get all templates\ \ sorted by templateName in descending order." required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: clusterExtId example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$orderby=clusterExtId" - name: clusterName example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$orderby=clusterName" - name: endTime example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$orderby=endTime" - name: frameworkVersion example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$orderby=frameworkVersion" - name: operationStatus example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$orderby=operationStatus" - name: operationType example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$orderby=operationType" - name: startTime example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$orderby=startTime" - name: $select in: query description: "A URL query parameter that allows clients to request a specific\ \ set of properties for each entity or complex type. Expression specified\ \ with the $select must conform to the [OData V4.01](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html)\ \ URL conventions. If a $select expression consists of a single select item\ \ that is an asterisk (i.e., *), then all properties on the matching resource\ \ will be returned." required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: clusterExtId example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$select=clusterExtId" - name: clusterName example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$select=clusterName" - name: endTime example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$select=endTime" - name: frameworkVersion example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$select=frameworkVersion" - name: operationStatus example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$select=operationStatus" - name: operationType example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$select=operationType" - name: startTime example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-histories?$select=startTime" responses: "200": description: Paginated list of LCM histories. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.resources.LcmHistory' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-histories Get operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-histories Get operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-histories Get operation x-permissions: operationName: View LCM History deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin - name: Prism Viewer - name: Cluster Viewer x-rate-limit: - type: xsmall count: 5 timeUnit: seconds - type: Small count: 5 timeUnit: seconds - type: Large count: 5 timeUnit: seconds - type: XLarge count: 5 timeUnit: seconds x-supported-versions: - product: PC version: "7.5" - product: PE version: "7.5" x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.LcmHistoriesApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.LcmHistories.ListLcmHistoriesRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.ListLcmHistoriesApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ LcmHistoriesApi lcmHistoriesApi = new LcmHistoriesApi(apiClient);\n\ \n \n int page = 0;\n \n int limit = 50;\n\n\ \ try {\n // Pass in parameters using the request builder\ \ object associated with the operation.\n ListLcmHistoriesApiResponse\ \ listLcmHistoriesApiResponse = lcmHistoriesApi.listLcmHistories(ListLcmHistoriesRequest.builder()\n\ \ .$page(page)\n .$limit(limit)\n \ \ .$filter(null)\n .$orderby(null)\n \ \ .$select(null)\n .build());\n\n System.out.println(listLcmHistoriesApiResponse.toString());\n\ \n } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: |2 import { ApiClient, LcmHistoriesApi } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let lcmHistoriesApi = new LcmHistoriesApi(apiClientInstance); function sample() { // Construct Optional Parameters var opts = {}; opts["$page"] = 0; opts["$limit"] = 50; opts["$filter"] = "string_sample_data"; opts["$orderby"] = "string_sample_data"; opts["$select"] = "string_sample_data"; lcmHistoriesApi.listLcmHistories(opts).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ lcm_histories_api = ntnx_lifecycle_py_client.LcmHistoriesApi(api_client=client)\n\ \ \n page = 0\n \n limit = 50\n\n\n try:\n api_response\ \ = lcm_histories_api.list_lcm_histories(_page=page, _limit=limit)\n \ \ print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/lcmhistories\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n LcmHistoriesServiceApiInstance\ \ *api.LcmHistoriesServiceApi\n)\n\nfunc main() {\n ApiClientInstance\ \ = client.NewApiClient()\n // IPv4/IPv6 address or FQDN of the cluster\n\ \ ApiClientInstance.Host = \"localhost\"\n // Port used for the connection.\ \ PC products typically use port 9440, while NC products typically use port\ \ 443. See the product-specific documentation for accurate configuration.\n\ \ ApiClientInstance.Port = 9440\n // Interval in ms to use during\ \ retry attempts\n ApiClientInstance.RetryInterval = 5 * time.Second\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ ApiClientInstance.MaxRetryAttempts = 5\n // UserName to connect\ \ to the cluster\n ApiClientInstance.Username = \"username\"\n //\ \ Password to connect to the cluster\n ApiClientInstance.Password = \"\ password\"\n // Please add authorization information here if needed.\n\ \ LcmHistoriesServiceApiInstance = api.NewLcmHistoriesServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n page_ := 0\n \n limit_\ \ := 50\n\n\n request := lcmhistories.ListLcmHistoriesRequest{ Page_:\ \ &page_, Limit_: &limit_, Filter_: nil, Orderby_: nil, Select_: nil }\n\ \ response, error := LcmHistoriesServiceApiInstance.ListLcmHistories(ctx,\ \ &request)\n if error != nil {\n fmt.Println(error)\n \ \ return\n }\n data, _ := response.GetData().([]import1.LcmHistory)\n\ \ fmt.Println(data)\n\n}\n\n" - lang: cURL source: |2+ curl --request GET \ --url "https://host:port/api/lifecycle/v4.2/resources/lcm-histories?$filter=string_sample_data&$limit=50&$orderby=string_sample_data&$page=0&$select=string_sample_data" \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method GET \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/lcm-histories?$filter=string_sample_data&$limit=50&$orderby=string_sample_data&$page=0&$select=string_sample_data" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ LcmHistoriesApi lcmHistoriesApi = new LcmHistoriesApi(client);\n\n\ \ int page = 0;\n int limit = 50;\n String filter = \"string_sample_data\"\ ;\n String orderby = \"string_sample_data\";\n String select =\ \ \"string_sample_data\";\n\n // Create request object with parameters\n\ \ var request = new ListLcmHistoriesRequest {\n Page =\ \ page,\n Limit = limit,\n Filter = filter,\n \ \ Orderby = orderby,\n Select = select\n };\n \ \ try {\n ListLcmHistoriesApiResponse listLcmHistoriesApiResponse\ \ = lcmHistoriesApi.ListLcmHistories(request);\n } catch (ApiException\ \ ex) {\n Console.WriteLine(ex.Message);\n }\n }\n\ \ }\n}\n" /lifecycle/v4.2/resources/lcm-summaries: get: tags: - LcmSummaries summary: List the LCM summaries. description: Get the LCM summaries. operationId: listLcmSummaries parameters: - name: $page in: query description: | A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results. required: false style: form explode: false schema: minimum: 0 type: integer description: | A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results. format: int32 default: 0 - name: $limit in: query description: | A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set. required: false style: form explode: false schema: maximum: 100 minimum: 1 type: integer description: | A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set. format: int32 default: 50 - name: $filter in: query description: |- A URL query parameter that allows clients to filter a collection of resources. The expression specified with $filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the $filter must conform to the [OData V4.01](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html) URL conventions. For example, filter **$filter=name eq 'karbon-ntnx-1.0'** would filter the result on cluster name 'karbon-ntnx1.0', filter **$filter=startswith(name, 'C')** would filter on cluster name starting with 'C'. required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: clusterExtId example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$filter=clusterExtId\ \ eq '73716ec1-2be8-4f41-a153-79a8d6a33a46'" - name: currentVersion example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$filter=currentVersion\ \ eq '3.0.45678'" - name: hardwareVendor example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$filter=hardwareVendor\ \ eq 'Dell'" - name: $orderby in: query description: "A URL query parameter that allows clients to specify the sort\ \ criteria for the returned list of objects. Resources can be sorted in\ \ ascending order using asc or descending order using desc. If asc or desc\ \ are not specified, the resources will be sorted in ascending order by\ \ default. For example, '$orderby=templateName desc' would get all templates\ \ sorted by templateName in descending order." required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: hardwareVendor example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$orderby=hardwareVendor" - name: $select in: query description: "A URL query parameter that allows clients to request a specific\ \ set of properties for each entity or complex type. Expression specified\ \ with the $select must conform to the [OData V4.01](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html)\ \ URL conventions. If a $select expression consists of a single select item\ \ that is an asterisk (i.e., *), then all properties on the matching resource\ \ will be returned." required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: availableVersion example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$select=availableVersion" - name: clusterExtId example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$select=clusterExtId" - name: currentVersion example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$select=currentVersion" - name: hardwareVendor example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$select=hardwareVendor" - name: isLastInventorySuccessful example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$select=isLastInventorySuccessful" - name: isLastUpgradeSuccessful example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$select=isLastUpgradeSuccessful" - name: isRestrictedMode example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$select=isRestrictedMode" - name: isUrlAccessible example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$select=isUrlAccessible" - name: lastInventoryTaskExtId example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$select=lastInventoryTaskExtId" - name: lastInventoryTime example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$select=lastInventoryTime" - name: lastUpgradeTaskExtId example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$select=lastUpgradeTaskExtId" - name: lastUpgradeTime example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$select=lastUpgradeTime" - name: operationCredentials example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$select=operationCredentials" - name: restrictedModeType example: "https://{host}:{port}/api/lifecycle/v4.2/resources/lcm-summaries?$select=restrictedModeType" responses: "200": description: List of LCM summaries. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.resources.LcmSummary' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-summaries Get operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-summaries Get operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-summaries Get operation x-permissions: operationName: View LCM Summary deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin - name: Prism Viewer - name: Cluster Viewer x-rate-limit: - type: xsmall count: 8 timeUnit: seconds - type: Small count: 8 timeUnit: seconds - type: Large count: 8 timeUnit: seconds - type: XLarge count: 8 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "7.0" x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.LcmSummariesApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.LcmSummaries.ListLcmSummariesRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.ListLcmSummariesApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ LcmSummariesApi lcmSummariesApi = new LcmSummariesApi(apiClient);\n\ \n \n int page = 0;\n \n int limit = 50;\n\n\ \ try {\n // Pass in parameters using the request builder\ \ object associated with the operation.\n ListLcmSummariesApiResponse\ \ listLcmSummariesApiResponse = lcmSummariesApi.listLcmSummaries(ListLcmSummariesRequest.builder()\n\ \ .$page(page)\n .$limit(limit)\n \ \ .$filter(null)\n .$orderby(null)\n \ \ .$select(null)\n .build());\n\n System.out.println(listLcmSummariesApiResponse.toString());\n\ \n } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: |2 import { ApiClient, LcmSummariesApi } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let lcmSummariesApi = new LcmSummariesApi(apiClientInstance); function sample() { // Construct Optional Parameters var opts = {}; opts["$page"] = 0; opts["$limit"] = 50; opts["$filter"] = "string_sample_data"; opts["$orderby"] = "string_sample_data"; opts["$select"] = "string_sample_data"; lcmSummariesApi.listLcmSummaries(opts).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ lcm_summaries_api = ntnx_lifecycle_py_client.LcmSummariesApi(api_client=client)\n\ \ \n page = 0\n \n limit = 50\n\n\n try:\n api_response\ \ = lcm_summaries_api.list_lcm_summaries(_page=page, _limit=limit)\n \ \ print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/lcmsummaries\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n LcmSummariesServiceApiInstance\ \ *api.LcmSummariesServiceApi\n)\n\nfunc main() {\n ApiClientInstance\ \ = client.NewApiClient()\n // IPv4/IPv6 address or FQDN of the cluster\n\ \ ApiClientInstance.Host = \"localhost\"\n // Port used for the connection.\ \ PC products typically use port 9440, while NC products typically use port\ \ 443. See the product-specific documentation for accurate configuration.\n\ \ ApiClientInstance.Port = 9440\n // Interval in ms to use during\ \ retry attempts\n ApiClientInstance.RetryInterval = 5 * time.Second\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ ApiClientInstance.MaxRetryAttempts = 5\n // UserName to connect\ \ to the cluster\n ApiClientInstance.Username = \"username\"\n //\ \ Password to connect to the cluster\n ApiClientInstance.Password = \"\ password\"\n // Please add authorization information here if needed.\n\ \ LcmSummariesServiceApiInstance = api.NewLcmSummariesServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n page_ := 0\n \n limit_\ \ := 50\n\n\n request := lcmsummaries.ListLcmSummariesRequest{ Page_:\ \ &page_, Limit_: &limit_, Filter_: nil, Orderby_: nil, Select_: nil }\n\ \ response, error := LcmSummariesServiceApiInstance.ListLcmSummaries(ctx,\ \ &request)\n if error != nil {\n fmt.Println(error)\n \ \ return\n }\n data, _ := response.GetData().([]import1.LcmSummary)\n\ \ fmt.Println(data)\n\n}\n\n" - lang: cURL source: |2+ curl --request GET \ --url "https://host:port/api/lifecycle/v4.2/resources/lcm-summaries?$filter=string_sample_data&$limit=50&$orderby=string_sample_data&$page=0&$select=string_sample_data" \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method GET \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/lcm-summaries?$filter=string_sample_data&$limit=50&$orderby=string_sample_data&$page=0&$select=string_sample_data" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ LcmSummariesApi lcmSummariesApi = new LcmSummariesApi(client);\n\n\ \ int page = 0;\n int limit = 50;\n String filter = \"string_sample_data\"\ ;\n String orderby = \"string_sample_data\";\n String select =\ \ \"string_sample_data\";\n\n // Create request object with parameters\n\ \ var request = new ListLcmSummariesRequest {\n Page =\ \ page,\n Limit = limit,\n Filter = filter,\n \ \ Orderby = orderby,\n Select = select\n };\n \ \ try {\n ListLcmSummariesApiResponse listLcmSummariesApiResponse\ \ = lcmSummariesApi.ListLcmSummaries(request);\n } catch (ApiException\ \ ex) {\n Console.WriteLine(ex.Message);\n }\n }\n\ \ }\n}\n" /lifecycle/v4.2/resources/lcm-summaries/{extId}: get: tags: - LcmSummaries summary: Get the LCM summary. description: Get the LCM summary. operationId: getLcmSummaryById parameters: - name: extId in: path description: UUID of the LCM summary. required: true style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: e8dbc5fd-9eca-44e2-91be-eb06cdb1c936 responses: "200": description: Detailed summary of LCM cluster. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.resources.LcmSummary' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-summaries/{extId}\ \ Get operation" "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-summaries/{extId}\ \ Get operation" "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-summaries/{extId}\ \ Get operation" x-permissions: operationName: View LCM Summary deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin - name: Prism Viewer - name: Cluster Viewer x-rate-limit: - type: xsmall count: 10 timeUnit: seconds - type: Small count: 10 timeUnit: seconds - type: Large count: 10 timeUnit: seconds - type: XLarge count: 10 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "7.0" x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.LcmSummariesApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.LcmSummaries.GetLcmSummaryByIdRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.GetLcmSummaryByIdApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ LcmSummariesApi lcmSummariesApi = new LcmSummariesApi(apiClient);\n\ \n \n String extId = \"EAFeC5A6-B0Bb-ee61-5bDA-aaE95cBdB041\"\ ;\n\n try {\n // Pass in parameters using the request\ \ builder object associated with the operation.\n GetLcmSummaryByIdApiResponse\ \ getLcmSummaryByIdApiResponse = lcmSummariesApi.getLcmSummaryById(GetLcmSummaryByIdRequest.builder()\n\ \ .extId(extId)\n .build());\n\n \ \ System.out.println(getLcmSummaryByIdApiResponse.toString());\n\n \ \ } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: "\nimport { ApiClient, LcmSummariesApi } from \"@nutanix-api/lifecycle-js-client\"\ ;\n\n// Configure the client\nlet apiClientInstance = new ApiClient();\n\ // IPv4/IPv6 address or FQDN of the cluster\napiClientInstance.host = 'localhost';\n\ // Port used for the connection. PC products typically use port 9440, while\ \ NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\napiClientInstance.port = '9440';\n// Max\ \ retry attempts while reconnecting on a loss of connection\napiClientInstance.maxRetryAttempts\ \ = 5;\n// Interval in ms to use during retry attempts\napiClientInstance.retryInterval\ \ = 5000;\n// UserName to connect to the cluster\napiClientInstance.username\ \ = 'username';\n// Password to connect to the cluster\napiClientInstance.password\ \ = 'password';\n// Please add authorization information here if needed.\n\ let lcmSummariesApi = new LcmSummariesApi(apiClientInstance);\n\nfunction\ \ sample() {\n\n \n let extId = \"bABdede9-FE13-f0c2-03CD-8BfFacC003Bf\"\ ;\n\n\n\n\n\n lcmSummariesApi.getLcmSummaryById(extId).then(({data, response})\ \ => {\n console.log(`API returned the following status code: ${response.status}`);\n\ \ console.log(data.getData());\n }).catch((error) => {\n \ \ console.log(`Error is: ${error}`);\n });\n\n}\nsample()\n" - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ lcm_summaries_api = ntnx_lifecycle_py_client.LcmSummariesApi(api_client=client)\n\ \ \n ext_id = \"AFBAEbFA-D3bb-eFCd-31f1-a9Caf2Df3FFa\"\n\n\n try:\n\ \ api_response = lcm_summaries_api.get_lcm_summary_by_id(extId=ext_id)\n\ \ print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/lcmsummaries\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n LcmSummariesServiceApiInstance\ \ *api.LcmSummariesServiceApi\n)\n\nfunc main() {\n ApiClientInstance\ \ = client.NewApiClient()\n // IPv4/IPv6 address or FQDN of the cluster\n\ \ ApiClientInstance.Host = \"localhost\"\n // Port used for the connection.\ \ PC products typically use port 9440, while NC products typically use port\ \ 443. See the product-specific documentation for accurate configuration.\n\ \ ApiClientInstance.Port = 9440\n // Interval in ms to use during\ \ retry attempts\n ApiClientInstance.RetryInterval = 5 * time.Second\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ ApiClientInstance.MaxRetryAttempts = 5\n // UserName to connect\ \ to the cluster\n ApiClientInstance.Username = \"username\"\n //\ \ Password to connect to the cluster\n ApiClientInstance.Password = \"\ password\"\n // Please add authorization information here if needed.\n\ \ LcmSummariesServiceApiInstance = api.NewLcmSummariesServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n extId := \"aECC865d-5bD6-feAD-3b3c-5F17FccBC51E\"\ \n\n\n request := lcmsummaries.GetLcmSummaryByIdRequest{ ExtId: &extId\ \ }\n response, error := LcmSummariesServiceApiInstance.GetLcmSummaryById(ctx,\ \ &request)\n if error != nil {\n fmt.Println(error)\n \ \ return\n }\n data, _ := response.GetData().(import1.LcmSummary)\n\ \ fmt.Println(data)\n\n}\n\n" - lang: cURL source: |2+ curl --request GET \ --url "https://host:port/api/lifecycle/v4.2/resources/lcm-summaries/e1146Be2-e5Ef-4Cc5-bedb-bAFbffBc558A" \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method GET \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/lcm-summaries/4AFAEBFf-CbA5-E3DB-56aB-ef47abee9ECC" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ LcmSummariesApi lcmSummariesApi = new LcmSummariesApi(client);\n\n\ \ String extId = \"94dc77C3-cfc4-07dD-6dd2-E3CEee3E5EfC\";\n\n \ \ // Create request object with parameters\n var request = new\ \ GetLcmSummaryByIdRequest {\n ExtId = extId\n };\n \ \ try {\n GetLcmSummaryByIdApiResponse getLcmSummaryByIdApiResponse\ \ = lcmSummariesApi.GetLcmSummaryById(request);\n } catch (ApiException\ \ ex) {\n Console.WriteLine(ex.Message);\n }\n }\n\ \ }\n}\n" /lifecycle/v4.2/operations/$actions/compute-notifications: post: tags: - Notifications summary: Compute LCM upgrade plan and notifications for a set of entities. description: "Compute LCM upgrade notifications for given set of entities to\ \ update along with a target version. The notifications are computed based\ \ on the current state of the entities and the target version. Once the task\ \ is successfully completed, the resource identifier for the computation result\ \ is stored in the completion_details field of the task. The result can then\ \ be retrieved using the resource id via the GET notifications/ endpoint." operationId: ComputeNotifications parameters: - name: NTNX-Request-Id in: header description: | A unique identifier that is associated with each request. The provided value must be opaque and preferably in Universal Unique Identifier (UUID) format. This identifier is also used as an idempotence token for safely retrying requests in case of network errors. All the supported Nutanix API clients add this auto-generated request identifier to each request. required: true style: simple explode: false schema: type: string format: uuid example: b9c4c3bd-d6fd-42e2-9c5f-924e15e06eb5 - name: X-Cluster-Id in: header description: Cluster uuid on which the resource is present or operation is being performed. required: false style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 02162c35-f372-468a-9de6-87f3622a3f34 requestBody: content: application/json: schema: $ref: '#/components/schemas/lifecycle.v4.2.resources.NotificationsSpec' required: true responses: "202": description: Response with asynchronous task and resourceId for the notifications computation in progress. headers: Location: style: simple explode: false schema: pattern: "^((http[s]?|nfs):\\/)?\\/?(([a-zA-Z0-9\\-\\.]+)|(\\d{1,3}(\\\ .\\d{1,3}){3})|(\\[[0-9a-fA-F:]+\\]))(:\\d+)?(\\/[^\\s?#]*)?(\\\ ?[^#\\s]*)?(#[^\\s]*)?$" type: string description: Indicates the target of a redirection or the URL of a newly created resource. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/prism.v4.3.config.TaskReference' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/compute-notifications Post operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/compute-notifications Post operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/compute-notifications Post operation x-permissions: operationName: Compute Notifications Component deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin x-rate-limit: - type: xsmall count: 8 timeUnit: seconds - type: Small count: 8 timeUnit: seconds - type: Large count: 8 timeUnit: seconds - type: XLarge count: 8 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "7.0" x-code-samples: - lang: Java source: |2 package sample; import com.nutanix.lif.java.client.ApiClient; import com.nutanix.lif.java.client.api.NotificationsApi; import com.nutanix.dp1.lif.lifecycle.v4.request.Notifications.ComputeNotificationsRequest; import com.nutanix.dp1.lif.lifecycle.v4.resources.NotificationsSpec; import com.nutanix.dp1.lif.lifecycle.v4.operations.ComputeNotificationsApiResponse; import org.springframework.web.client.RestClientException; public class JavaSdkSample { public static void main(String[] args) { // Configure the client ApiClient apiClient = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClient.setHost("localhost"); // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClient.setPort(9440); // Interval in ms to use during retry attempts apiClient.setRetryInterval(5000); // Max retry attempts while reconnecting on a loss of connection apiClient.setMaxRetryAttempts(5); // UserName to connect to the cluster String username = "username"; // Password to connect to the cluster String password = "password"; apiClient.setUsername(username); apiClient.setPassword(password); // Please add authorization information here if needed. NotificationsApi notificationsApi = new NotificationsApi(apiClient); NotificationsSpec notificationsSpec = new NotificationsSpec(); // NotificationsSpec object initializations here... notificationsSpec.setNotificationsSpec(new ArrayList<>()); // required field try { // Pass in parameters using the request builder object associated with the operation. ComputeNotificationsApiResponse computeNotificationsApiResponse = notificationsApi.computeNotifications(ComputeNotificationsRequest.builder() .build(), notificationsSpec); System.out.println(computeNotificationsApiResponse.toString()); } catch (RestClientException ex) { System.out.println(ex.getMessage()); } } } - lang: JavaScript source: |2 import { ApiClient, NotificationsApi, NotificationsSpec } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let notificationsApi = new NotificationsApi(apiClientInstance); function sample() { let notificationsSpec = new NotificationsSpec(); // NotificationsSpec object initializations here... notificationsSpec.setNotificationsSpec([]); // required field notificationsSpec = JSON.stringify(notificationsSpec); notificationsApi.computeNotifications(notificationsSpec).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: |2+ import ntnx_lifecycle_py_client if __name__ == "__main__": # Configure the client config = ntnx_lifecycle_py_client.Configuration() # IPv4/IPv6 address or FQDN of the cluster config.host = "localhost" # Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. config.port = 9440 # Max retry attempts while reconnecting on a loss of connection config.max_retry_attempts = 3 # Backoff factor to use during retry attempts config.backoff_factor = 3 # UserName to connect to the cluster config.username = "username" # Password to connect to the cluster config.password = "password" # Please add authorization information here if needed. client = ntnx_lifecycle_py_client.ApiClient(configuration=config) notifications_api = ntnx_lifecycle_py_client.NotificationsApi(api_client=client) notificationsSpec = ntnx_lifecycle_py_client.NotificationsSpec() # NotificationsSpec object initializations here... notificationsSpec.notifications_spec = [] # required field try: api_response = notifications_api.compute_notifications(body=notificationsSpec) print(api_response) except ntnx_lifecycle_py_client.rest.ApiException as e: print(e) - lang: Go source: |2+ package main import ( "fmt" "time" "context" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/notifications" import1 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources" import2 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/prism/v4/config" ) var ( ApiClientInstance *client.ApiClient NotificationsServiceApiInstance *api.NotificationsServiceApi ) func main() { ApiClientInstance = client.NewApiClient() // IPv4/IPv6 address or FQDN of the cluster ApiClientInstance.Host = "localhost" // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. ApiClientInstance.Port = 9440 // Interval in ms to use during retry attempts ApiClientInstance.RetryInterval = 5 * time.Second // Max retry attempts while reconnecting on a loss of connection ApiClientInstance.MaxRetryAttempts = 5 // UserName to connect to the cluster ApiClientInstance.Username = "username" // Password to connect to the cluster ApiClientInstance.Password = "password" // Please add authorization information here if needed. NotificationsServiceApiInstance = api.NewNotificationsServiceApi(ApiClientInstance) ctx := context.Background() notificationsSpec := import1.NewNotificationsSpec() // NotificationsSpec object initializations here... request := notifications.ComputeNotificationsRequest{ Body: notificationsSpec } response, error := NotificationsServiceApiInstance.ComputeNotifications(ctx, &request) if error != nil { fmt.Println(error) return } data, _ := response.GetData().(import2.TaskReference) fmt.Println(data) } - lang: cURL source: |2+ curl --request POST \ --url "https://host:port/api/lifecycle/v4.2/operations/$actions/compute-notifications" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'X-Cluster-Id: FECfE8CC-1cCa-e44F-aEaC-FEbBEFEACb8D' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --data {"notificationsSpec":[{"entityUuid":"string","toVersion":"5.20.0","$objectType":"lifecycle.v4.common.EntityUpdateSpec"}],"credentials":[{"credentialDetail":{"credentialExtId":"string","$objectType":"lifecycle.v4.common.CredentialReference"},"$objectType":"lifecycle.v4.common.Credential"}],"$objectType":"lifecycle.v4.resources.NotificationsSpec"} \ - lang: Wget source: |2 wget --verbose \ --method POST \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'X-Cluster-Id: 3fc6E432-22f1-ACBf-3cb1-DfAd3f71DbBE' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --body-data {"notificationsSpec":[{"entityUuid":"string","toVersion":"5.20.0","$objectType":"lifecycle.v4.common.EntityUpdateSpec"}],"credentials":[{"credentialDetail":{"credentialExtId":"string","$objectType":"lifecycle.v4.common.CredentialReference"},"$objectType":"lifecycle.v4.common.Credential"}],"$objectType":"lifecycle.v4.resources.NotificationsSpec"} \ - "https://host:port/api/lifecycle/v4.2/operations/$actions/compute-notifications" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\nusing Nutanix.LifSDK.Model.Lifecycle.V4.Operations;\n\ \nnamespace CsharpSdkSample\n{\n class Program\n {\n static void Main(string[]\ \ args) {\n // Configure the client\n Configuration _config =\ \ new Configuration\n {\n // UserName to connect to the cluster\n\ \ Username = \"username\",\n // Password(SecureString) to\ \ connect to the cluster \n Password = Configuration.CreateSecurePassword(\"\ password\"),\n // IPv4/IPv6 address or FQDN of the cluster\n \ \ Host = \"localhost\",\n // Port used for the connection. \n\ \ Port = 9440,\n // Backoff period in seconds (exponential\ \ backoff: 2, 4, 8... seconds)\n BackOffPeriod = 2,\n // Max\ \ retry attempts while reconnecting on a loss of connection\n MaxRetryAttempts\ \ = 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n\ \ NotificationsApi notificationsApi = new NotificationsApi(client);\n\ \n NotificationsSpec notificationsSpec = new NotificationsSpec();\n\ \n // NotificationsSpec object initializations here...\n notificationsSpec.NotificationsSpec\ \ = new ArrayList(); // required field\n\n\n // Create request object\ \ with parameters\n var request = new ComputeNotificationsRequest\ \ {\n Body = notificationsSpec\n };\n try {\n \ \ ComputeNotificationsApiResponse computeNotificationsApiResponse\ \ = notificationsApi.ComputeNotifications(request);\n } catch (ApiException\ \ ex) {\n Console.WriteLine(ex.Message);\n }\n }\n\ \ }\n}\n" /lifecycle/v4.2/resources/notifications/{extId}: get: tags: - Notifications summary: Get LCM upgrade notification details for specified resource UUID. description: LCM upgrade notification details for UUID. The resource is valid for 1 hour from the time it was created using the computeNotifications endpoint. operationId: GetNotificationById parameters: - name: extId in: path description: UUID of LCM Upgrade Notification resource. required: true style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 575cff2f-ff44-4711-978d-8ca4eb4c4162 responses: "200": description: Queried Upgrade Notification details. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.resources.Notification' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/notifications/{extId}\ \ Get operation" "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/notifications/{extId}\ \ Get operation" "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/notifications/{extId}\ \ Get operation" x-permissions: operationName: View Notification Component deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin - name: Prism Viewer - name: Cluster Viewer x-rate-limit: - type: xsmall count: 10 timeUnit: seconds - type: Small count: 10 timeUnit: seconds - type: Large count: 10 timeUnit: seconds - type: XLarge count: 10 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "7.0" x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.NotificationsApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.Notifications.GetNotificationByIdRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.GetNotificationsByIdApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ NotificationsApi notificationsApi = new NotificationsApi(apiClient);\n\ \n \n String extId = \"FFa7dfFE-edBb-fe72-0acE-9eDedFBe9cDE\"\ ;\n\n try {\n // Pass in parameters using the request\ \ builder object associated with the operation.\n GetNotificationsByIdApiResponse\ \ getNotificationsByIdApiResponse = notificationsApi.getNotificationById(GetNotificationByIdRequest.builder()\n\ \ .extId(extId)\n .build());\n\n \ \ System.out.println(getNotificationsByIdApiResponse.toString());\n\n\ \ } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: "\nimport { ApiClient, NotificationsApi } from \"@nutanix-api/lifecycle-js-client\"\ ;\n\n// Configure the client\nlet apiClientInstance = new ApiClient();\n\ // IPv4/IPv6 address or FQDN of the cluster\napiClientInstance.host = 'localhost';\n\ // Port used for the connection. PC products typically use port 9440, while\ \ NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\napiClientInstance.port = '9440';\n// Max\ \ retry attempts while reconnecting on a loss of connection\napiClientInstance.maxRetryAttempts\ \ = 5;\n// Interval in ms to use during retry attempts\napiClientInstance.retryInterval\ \ = 5000;\n// UserName to connect to the cluster\napiClientInstance.username\ \ = 'username';\n// Password to connect to the cluster\napiClientInstance.password\ \ = 'password';\n// Please add authorization information here if needed.\n\ let notificationsApi = new NotificationsApi(apiClientInstance);\n\nfunction\ \ sample() {\n\n \n let extId = \"10AB8aCb-ED3a-FE0C-c54D-F770633dFDd1\"\ ;\n\n\n\n\n\n notificationsApi.getNotificationById(extId).then(({data,\ \ response}) => {\n console.log(`API returned the following status\ \ code: ${response.status}`);\n console.log(data.getData());\n \ \ }).catch((error) => {\n console.log(`Error is: ${error}`);\n \ \ });\n\n}\nsample()\n" - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ notifications_api = ntnx_lifecycle_py_client.NotificationsApi(api_client=client)\n\ \ \n ext_id = \"08ecb5fd-17be-b5A8-E08f-7eFe84bFFe8a\"\n\n\n try:\n\ \ api_response = notifications_api.get_notification_by_id(extId=ext_id)\n\ \ print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/notifications\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n NotificationsServiceApiInstance\ \ *api.NotificationsServiceApi\n)\n\nfunc main() {\n ApiClientInstance\ \ = client.NewApiClient()\n // IPv4/IPv6 address or FQDN of the cluster\n\ \ ApiClientInstance.Host = \"localhost\"\n // Port used for the connection.\ \ PC products typically use port 9440, while NC products typically use port\ \ 443. See the product-specific documentation for accurate configuration.\n\ \ ApiClientInstance.Port = 9440\n // Interval in ms to use during\ \ retry attempts\n ApiClientInstance.RetryInterval = 5 * time.Second\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ ApiClientInstance.MaxRetryAttempts = 5\n // UserName to connect\ \ to the cluster\n ApiClientInstance.Username = \"username\"\n //\ \ Password to connect to the cluster\n ApiClientInstance.Password = \"\ password\"\n // Please add authorization information here if needed.\n\ \ NotificationsServiceApiInstance = api.NewNotificationsServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n extId := \"F8adeBda-5c9e-b3d2-eA5F-3B64eeFB7B6C\"\ \n\n\n request := notifications.GetNotificationByIdRequest{ ExtId: &extId\ \ }\n response, error := NotificationsServiceApiInstance.GetNotificationById(ctx,\ \ &request)\n if error != nil {\n fmt.Println(error)\n \ \ return\n }\n data, _ := response.GetData().(import1.Notification)\n\ \ fmt.Println(data)\n\n}\n\n" - lang: cURL source: |2+ curl --request GET \ --url "https://host:port/api/lifecycle/v4.2/resources/notifications/4fbC8Ad6-2bAB-d0BF-1efB-c0BEfE3EFb3e" \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method GET \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/notifications/faaEFDc4-feCb-F53D-5a6F-DC1dE0D9CBAe" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ NotificationsApi notificationsApi = new NotificationsApi(client);\n\ \n String extId = \"8CDeBf9A-ADDF-A6Df-FAB5-FD9bCC80EEC4\";\n\n \ \ // Create request object with parameters\n var request = new\ \ GetNotificationByIdRequest {\n ExtId = extId\n };\n\ \ try {\n GetNotificationsByIdApiResponse getNotificationsByIdApiResponse\ \ = notificationsApi.GetNotificationById(request);\n } catch (ApiException\ \ ex) {\n Console.WriteLine(ex.Message);\n }\n }\n\ \ }\n}\n" /lifecycle/v4.2/operations/$actions/prechecks: post: tags: - Prechecks summary: Perform LCM prechecks operation. description: Perform LCM prechecks for the intended update operation. operationId: performPrechecks parameters: - name: NTNX-Request-Id in: header description: | A unique identifier that is associated with each request. The provided value must be opaque and preferably in Universal Unique Identifier (UUID) format. This identifier is also used as an idempotence token for safely retrying requests in case of network errors. All the supported Nutanix API clients add this auto-generated request identifier to each request. required: true style: simple explode: false schema: type: string format: uuid example: de415fd2-d7b0-4b58-8ed3-108f92b9702e - name: X-Cluster-Id in: header description: Cluster uuid on which the resource is present or operation is being performed. required: false style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: cdf93689-1b92-4b31-b7a3-8872db16c3e5 - name: $dryrun in: query description: | A URL query parameter that allows long running operations to execute in a dry-run mode providing ability to identify trouble spots and system failures without performing the actual operation. Additionally this mode also offers a summary snapshot of the resultant system in order to better understand how things fit together. The operation runs in dry-run mode only if the provided value is true. required: false style: form explode: false schema: type: boolean description: | A URL query parameter that allows long running operations to execute in a dry-run mode providing ability to identify trouble spots and system failures without performing the actual operation. Additionally this mode also offers a summary snapshot of the resultant system in order to better understand how things fit together. The operation runs in dry-run mode only if the provided value is true. example: false requestBody: content: application/json: schema: $ref: '#/components/schemas/lifecycle.v4.2.common.PrechecksSpec' required: true responses: "202": description: LCM prechecks task for the intended update operation triggered with the task UUID. headers: Location: style: simple explode: false schema: pattern: "^((http[s]?|nfs):\\/)?\\/?(([a-zA-Z0-9\\-\\.]+)|(\\d{1,3}(\\\ .\\d{1,3}){3})|(\\[[0-9a-fA-F:]+\\]))(:\\d+)?(\\/[^\\s?#]*)?(\\\ ?[^#\\s]*)?(#[^\\s]*)?$" type: string description: Indicates the target of a redirection or the URL of a newly created resource. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/prism.v4.3.config.TaskReference' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/prechecks Post operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/prechecks Post operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/prechecks Post operation x-permissions: operationName: Perform Prechecks Component deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin x-rate-limit: - type: xsmall count: 8 timeUnit: seconds - type: Small count: 8 timeUnit: seconds - type: Large count: 8 timeUnit: seconds - type: XLarge count: 8 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: 7.0.1.6 x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.PrechecksApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.Prechecks.PerformPrechecksRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.common.PrechecksSpec;\nimport com.nutanix.dp1.lif.lifecycle.v4.operations.PrechecksApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ PrechecksApi prechecksApi = new PrechecksApi(apiClient);\n\n \ \ PrechecksSpec prechecksSpec = new PrechecksSpec();\n\n // PrechecksSpec\ \ object initializations here...\n prechecksSpec.setEntityUpdateSpecs(new\ \ ArrayList<>()); // required field\n \n boolean dryrun =\ \ true;\n\n try {\n // Pass in parameters using the request\ \ builder object associated with the operation.\n PrechecksApiResponse\ \ prechecksApiResponse = prechecksApi.performPrechecks(PerformPrechecksRequest.builder()\n\ \ .$dryrun(dryrun)\n .build(), prechecksSpec);\n\ \n System.out.println(prechecksApiResponse.toString());\n\n \ \ } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: |2 import { ApiClient, PrechecksApi, PrechecksSpec } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let prechecksApi = new PrechecksApi(apiClientInstance); function sample() { let prechecksSpec = new PrechecksSpec(); // PrechecksSpec object initializations here... prechecksSpec.setEntityUpdateSpecs([]); // required field prechecksSpec = JSON.stringify(prechecksSpec); // Construct Optional Parameters var opts = {}; opts["$dryrun"] = true; prechecksApi.performPrechecks(prechecksSpec, opts).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ prechecks_api = ntnx_lifecycle_py_client.PrechecksApi(api_client=client)\n\ \ prechecksSpec = ntnx_lifecycle_py_client.PrechecksSpec()\n\n # PrechecksSpec\ \ object initializations here...\n prechecksSpec.entity_update_specs\ \ = [] # required field\n \n dryrun = True\n\n\n try:\n \ \ api_response = prechecks_api.perform_prechecks(body=prechecksSpec, _dryrun=dryrun)\n\ \ print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/prechecks\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/common\"\ \n import2 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/prism/v4/config\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n PrechecksServiceApiInstance\ \ *api.PrechecksServiceApi\n)\n\nfunc main() {\n ApiClientInstance =\ \ client.NewApiClient()\n // IPv4/IPv6 address or FQDN of the cluster\n\ \ ApiClientInstance.Host = \"localhost\"\n // Port used for the connection.\ \ PC products typically use port 9440, while NC products typically use port\ \ 443. See the product-specific documentation for accurate configuration.\n\ \ ApiClientInstance.Port = 9440\n // Interval in ms to use during\ \ retry attempts\n ApiClientInstance.RetryInterval = 5 * time.Second\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ ApiClientInstance.MaxRetryAttempts = 5\n // UserName to connect\ \ to the cluster\n ApiClientInstance.Username = \"username\"\n //\ \ Password to connect to the cluster\n ApiClientInstance.Password = \"\ password\"\n // Please add authorization information here if needed.\n\ \ PrechecksServiceApiInstance = api.NewPrechecksServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n prechecksSpec := import1.NewPrechecksSpec()\n\ \n // PrechecksSpec object initializations here...\n\n \n dryrun_\ \ := true\n\n\n request := prechecks.PerformPrechecksRequest{ Body: prechecksSpec,\ \ Dryrun_: &dryrun_ }\n response, error := PrechecksServiceApiInstance.PerformPrechecks(ctx,\ \ &request)\n if error != nil {\n fmt.Println(error)\n \ \ return\n }\n data, _ := response.GetData().(import2.TaskReference)\n\ \ fmt.Println(data)\n\n}\n\n" - lang: cURL source: |2+ curl --request POST \ --url "https://host:port/api/lifecycle/v4.2/operations/$actions/prechecks?$dryrun=true" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'X-Cluster-Id: f66dfd3D-7bAf-cd13-CB58-adedFDc9aD21' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --data {"managementServer":{"hypervisorType":"$UNKNOWN","ip":"string","username":"admin","password":"*******","$objectType":"lifecycle.v4.common.ManagementServer"},"entityUpdateSpecs":[{"entityUuid":"string","toVersion":"5.20.0","$objectType":"lifecycle.v4.common.EntityUpdateSpec"}],"skippedPrecheckFlags":["$UNKNOWN"],"credentials":[{"credentialDetail":{"credentialExtId":"string","$objectType":"lifecycle.v4.common.CredentialReference"},"$objectType":"lifecycle.v4.common.Credential"}],"$objectType":"lifecycle.v4.common.PrechecksSpec"} \ - lang: Wget source: |2 wget --verbose \ --method POST \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'X-Cluster-Id: Fb7e8AB8-1bba-Ca3d-eaad-Ac3feecf04a1' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --body-data {"managementServer":{"hypervisorType":"$UNKNOWN","ip":"string","username":"admin","password":"*******","$objectType":"lifecycle.v4.common.ManagementServer"},"entityUpdateSpecs":[{"entityUuid":"string","toVersion":"5.20.0","$objectType":"lifecycle.v4.common.EntityUpdateSpec"}],"skippedPrecheckFlags":["$UNKNOWN"],"credentials":[{"credentialDetail":{"credentialExtId":"string","$objectType":"lifecycle.v4.common.CredentialReference"},"$objectType":"lifecycle.v4.common.Credential"}],"$objectType":"lifecycle.v4.common.PrechecksSpec"} \ - "https://host:port/api/lifecycle/v4.2/operations/$actions/prechecks?$dryrun=true" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Common;\nusing Nutanix.LifSDK.Model.Lifecycle.V4.Operations;\n\ \nnamespace CsharpSdkSample\n{\n class Program\n {\n static void Main(string[]\ \ args) {\n // Configure the client\n Configuration _config =\ \ new Configuration\n {\n // UserName to connect to the cluster\n\ \ Username = \"username\",\n // Password(SecureString) to\ \ connect to the cluster \n Password = Configuration.CreateSecurePassword(\"\ password\"),\n // IPv4/IPv6 address or FQDN of the cluster\n \ \ Host = \"localhost\",\n // Port used for the connection. \n\ \ Port = 9440,\n // Backoff period in seconds (exponential\ \ backoff: 2, 4, 8... seconds)\n BackOffPeriod = 2,\n // Max\ \ retry attempts while reconnecting on a loss of connection\n MaxRetryAttempts\ \ = 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n\ \ PrechecksApi prechecksApi = new PrechecksApi(client);\n\n PrechecksSpec\ \ prechecksSpec = new PrechecksSpec();\n\n // PrechecksSpec object\ \ initializations here...\n prechecksSpec.EntityUpdateSpecs = new ArrayList();\ \ // required field\n\n boolean dryrun = true;\n\n // Create\ \ request object with parameters\n var request = new PerformPrechecksRequest\ \ {\n Body = prechecksSpec,\n Dryrun = dryrun\n \ \ };\n try {\n PrechecksApiResponse prechecksApiResponse\ \ = prechecksApi.PerformPrechecks(request);\n } catch (ApiException\ \ ex) {\n Console.WriteLine(ex.Message);\n }\n }\n\ \ }\n}\n" /lifecycle/v4.2/operations/$actions/compute-recommendations: post: tags: - Recommendations summary: Compute LCM recommendations for a set of entities. description: "Compute LCM upgrade recommendations given a set of entities to\ \ update along with a target version. The recommendations are computed based\ \ on the current state of the entities and the target version. Once the task\ \ is successfully completed, the resource identifier for the computation result\ \ is stored in the completion_details field of the task. The result can then\ \ be retrieved using the resource id via the GET recommendations/ endpoint." operationId: computeRecommendations parameters: - name: NTNX-Request-Id in: header description: | A unique identifier that is associated with each request. The provided value must be opaque and preferably in Universal Unique Identifier (UUID) format. This identifier is also used as an idempotence token for safely retrying requests in case of network errors. All the supported Nutanix API clients add this auto-generated request identifier to each request. required: true style: simple explode: false schema: type: string format: uuid example: f4bb85cb-2538-490e-a01e-1fedb6bdc1e5 - name: X-Cluster-Id in: header description: Cluster uuid on which the resource is present or operation is being performed. required: false style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 0219cfd8-8987-45f9-9ab2-a7fcfb87666f requestBody: content: application/json: schema: $ref: '#/components/schemas/lifecycle.v4.2.resources.RecommendationSpec' required: true responses: "202": description: Compute LCM recommendations for a set of entities. headers: Location: style: simple explode: false schema: pattern: "^((http[s]?|nfs):\\/)?\\/?(([a-zA-Z0-9\\-\\.]+)|(\\d{1,3}(\\\ .\\d{1,3}){3})|(\\[[0-9a-fA-F:]+\\]))(:\\d+)?(\\/[^\\s?#]*)?(\\\ ?[^#\\s]*)?(#[^\\s]*)?$" type: string description: Indicates the target of a redirection or the URL of a newly created resource. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/prism.v4.3.config.TaskReference' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/compute-recommendations Post operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/compute-recommendations Post operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/compute-recommendations Post operation x-permissions: operationName: Compute Recommendations Component deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin x-rate-limit: - type: xsmall count: 8 timeUnit: seconds - type: Small count: 8 timeUnit: seconds - type: Large count: 8 timeUnit: seconds - type: XLarge count: 8 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "6.8" x-code-samples: - lang: Java source: |2 package sample; import com.nutanix.lif.java.client.ApiClient; import com.nutanix.lif.java.client.api.RecommendationsApi; import com.nutanix.dp1.lif.lifecycle.v4.request.Recommendations.ComputeRecommendationsRequest; import com.nutanix.dp1.lif.lifecycle.v4.resources.RecommendationSpec; import com.nutanix.dp1.lif.lifecycle.v4.operations.ComputeRecommendationsApiResponse; import org.springframework.web.client.RestClientException; public class JavaSdkSample { public static void main(String[] args) { // Configure the client ApiClient apiClient = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClient.setHost("localhost"); // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClient.setPort(9440); // Interval in ms to use during retry attempts apiClient.setRetryInterval(5000); // Max retry attempts while reconnecting on a loss of connection apiClient.setMaxRetryAttempts(5); // UserName to connect to the cluster String username = "username"; // Password to connect to the cluster String password = "password"; apiClient.setUsername(username); apiClient.setPassword(password); // Please add authorization information here if needed. RecommendationsApi recommendationsApi = new RecommendationsApi(apiClient); RecommendationSpec recommendationSpec = new RecommendationSpec(); // RecommendationSpec object initializations here... recommendationSpec.setRecommendationSpec(SOME_RAW_DATA); // required field try { // Pass in parameters using the request builder object associated with the operation. ComputeRecommendationsApiResponse computeRecommendationsApiResponse = recommendationsApi.computeRecommendations(ComputeRecommendationsRequest.builder() .build(), recommendationSpec); System.out.println(computeRecommendationsApiResponse.toString()); } catch (RestClientException ex) { System.out.println(ex.getMessage()); } } } - lang: JavaScript source: |2 import { ApiClient, RecommendationsApi, RecommendationSpec } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let recommendationsApi = new RecommendationsApi(apiClientInstance); function sample() { let recommendationSpec = new RecommendationSpec(); // RecommendationSpec object initializations here... recommendationSpec.setRecommendationSpec(SOME_RAW_DATA); // required field recommendationSpec = JSON.stringify(recommendationSpec); recommendationsApi.computeRecommendations(recommendationSpec).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: |2+ import ntnx_lifecycle_py_client if __name__ == "__main__": # Configure the client config = ntnx_lifecycle_py_client.Configuration() # IPv4/IPv6 address or FQDN of the cluster config.host = "localhost" # Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. config.port = 9440 # Max retry attempts while reconnecting on a loss of connection config.max_retry_attempts = 3 # Backoff factor to use during retry attempts config.backoff_factor = 3 # UserName to connect to the cluster config.username = "username" # Password to connect to the cluster config.password = "password" # Please add authorization information here if needed. client = ntnx_lifecycle_py_client.ApiClient(configuration=config) recommendations_api = ntnx_lifecycle_py_client.RecommendationsApi(api_client=client) recommendationSpec = ntnx_lifecycle_py_client.RecommendationSpec() # RecommendationSpec object initializations here... recommendationSpec.recommendation_spec = SOME_RAW_DATA # required field try: api_response = recommendations_api.compute_recommendations(body=recommendationSpec) print(api_response) except ntnx_lifecycle_py_client.rest.ApiException as e: print(e) - lang: Go source: |2+ package main import ( "fmt" "time" "context" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/recommendations" import1 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources" import2 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/prism/v4/config" ) var ( ApiClientInstance *client.ApiClient RecommendationsServiceApiInstance *api.RecommendationsServiceApi ) func main() { ApiClientInstance = client.NewApiClient() // IPv4/IPv6 address or FQDN of the cluster ApiClientInstance.Host = "localhost" // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. ApiClientInstance.Port = 9440 // Interval in ms to use during retry attempts ApiClientInstance.RetryInterval = 5 * time.Second // Max retry attempts while reconnecting on a loss of connection ApiClientInstance.MaxRetryAttempts = 5 // UserName to connect to the cluster ApiClientInstance.Username = "username" // Password to connect to the cluster ApiClientInstance.Password = "password" // Please add authorization information here if needed. RecommendationsServiceApiInstance = api.NewRecommendationsServiceApi(ApiClientInstance) ctx := context.Background() recommendationSpec := import1.NewRecommendationSpec() // RecommendationSpec object initializations here... request := recommendations.ComputeRecommendationsRequest{ Body: recommendationSpec } response, error := RecommendationsServiceApiInstance.ComputeRecommendations(ctx, &request) if error != nil { fmt.Println(error) return } data, _ := response.GetData().(import2.TaskReference) fmt.Println(data) } - lang: cURL source: |2+ curl --request POST \ --url "https://host:port/api/lifecycle/v4.2/operations/$actions/compute-recommendations" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'X-Cluster-Id: 7FcbBebC-ADFF-9717-e1Bf-FDfcAaC4a1b9' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --data {"recommendationSpec":["$UNKNOWN"],"$objectType":"lifecycle.v4.resources.RecommendationSpec"} \ - lang: Wget source: |2 wget --verbose \ --method POST \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'X-Cluster-Id: bFA2CaF6-eAaB-E364-b146-A8cB2f9DE348' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --body-data {"recommendationSpec":["$UNKNOWN"],"$objectType":"lifecycle.v4.resources.RecommendationSpec"} \ - "https://host:port/api/lifecycle/v4.2/operations/$actions/compute-recommendations" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\nusing Nutanix.LifSDK.Model.Lifecycle.V4.Operations;\n\ \nnamespace CsharpSdkSample\n{\n class Program\n {\n static void Main(string[]\ \ args) {\n // Configure the client\n Configuration _config =\ \ new Configuration\n {\n // UserName to connect to the cluster\n\ \ Username = \"username\",\n // Password(SecureString) to\ \ connect to the cluster \n Password = Configuration.CreateSecurePassword(\"\ password\"),\n // IPv4/IPv6 address or FQDN of the cluster\n \ \ Host = \"localhost\",\n // Port used for the connection. \n\ \ Port = 9440,\n // Backoff period in seconds (exponential\ \ backoff: 2, 4, 8... seconds)\n BackOffPeriod = 2,\n // Max\ \ retry attempts while reconnecting on a loss of connection\n MaxRetryAttempts\ \ = 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n\ \ RecommendationsApi recommendationsApi = new RecommendationsApi(client);\n\ \n RecommendationSpec recommendationSpec = new RecommendationSpec();\n\ \n // RecommendationSpec object initializations here...\n recommendationSpec.RecommendationSpec\ \ = SOME_RAW_DATA; // required field\n\n\n // Create request object\ \ with parameters\n var request = new ComputeRecommendationsRequest\ \ {\n Body = recommendationSpec\n };\n try {\n\ \ ComputeRecommendationsApiResponse computeRecommendationsApiResponse\ \ = recommendationsApi.ComputeRecommendations(request);\n } catch\ \ (ApiException ex) {\n Console.WriteLine(ex.Message);\n \ \ }\n }\n }\n}\n" /lifecycle/v4.2/resources/recommendations/{extId}: get: tags: - Recommendations summary: Get a list of update recommendations from LCM. description: Get LCM upgrade recommendation details for specified resource ID. The resource is valid for 1 hour from the time it was created using the computeRecommendations endpoint. operationId: GetRecommendationById parameters: - name: extId in: path description: UUID of LCM Upgrade recommendations resource. required: true style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 30f5c422-53e1-4625-8cc3-db3815909216 responses: "200": description: LCM update recommendations generated as per the input request. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.resources.RecommendationResult' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/recommendations/{extId}\ \ Get operation" "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/recommendations/{extId}\ \ Get operation" "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/recommendations/{extId}\ \ Get operation" x-permissions: operationName: View Recommendation Component deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin - name: Prism Viewer - name: Cluster Viewer x-rate-limit: - type: xsmall count: 10 timeUnit: seconds - type: Small count: 10 timeUnit: seconds - type: Large count: 10 timeUnit: seconds - type: XLarge count: 10 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "6.8" x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.RecommendationsApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.Recommendations.GetRecommendationByIdRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.GetRecommendationByIdApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ RecommendationsApi recommendationsApi = new RecommendationsApi(apiClient);\n\ \n \n String extId = \"a76Ef097-7A14-ADe3-68Ee-f7a2Ae5492ee\"\ ;\n\n try {\n // Pass in parameters using the request\ \ builder object associated with the operation.\n GetRecommendationByIdApiResponse\ \ getRecommendationByIdApiResponse = recommendationsApi.getRecommendationById(GetRecommendationByIdRequest.builder()\n\ \ .extId(extId)\n .build());\n\n \ \ System.out.println(getRecommendationByIdApiResponse.toString());\n\n\ \ } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: "\nimport { ApiClient, RecommendationsApi } from \"@nutanix-api/lifecycle-js-client\"\ ;\n\n// Configure the client\nlet apiClientInstance = new ApiClient();\n\ // IPv4/IPv6 address or FQDN of the cluster\napiClientInstance.host = 'localhost';\n\ // Port used for the connection. PC products typically use port 9440, while\ \ NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\napiClientInstance.port = '9440';\n// Max\ \ retry attempts while reconnecting on a loss of connection\napiClientInstance.maxRetryAttempts\ \ = 5;\n// Interval in ms to use during retry attempts\napiClientInstance.retryInterval\ \ = 5000;\n// UserName to connect to the cluster\napiClientInstance.username\ \ = 'username';\n// Password to connect to the cluster\napiClientInstance.password\ \ = 'password';\n// Please add authorization information here if needed.\n\ let recommendationsApi = new RecommendationsApi(apiClientInstance);\n\n\ function sample() {\n\n \n let extId = \"c5AB6a6a-65C2-AF7E-fA2a-3feE834C3Ad6\"\ ;\n\n\n\n\n\n recommendationsApi.getRecommendationById(extId).then(({data,\ \ response}) => {\n console.log(`API returned the following status\ \ code: ${response.status}`);\n console.log(data.getData());\n \ \ }).catch((error) => {\n console.log(`Error is: ${error}`);\n \ \ });\n\n}\nsample()\n" - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ recommendations_api = ntnx_lifecycle_py_client.RecommendationsApi(api_client=client)\n\ \ \n ext_id = \"CB66Ad7d-6f9d-fef9-4aD9-EcD8bfDdd0cb\"\n\n\n try:\n\ \ api_response = recommendations_api.get_recommendation_by_id(extId=ext_id)\n\ \ print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/recommendations\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n RecommendationsServiceApiInstance\ \ *api.RecommendationsServiceApi\n)\n\nfunc main() {\n ApiClientInstance\ \ = client.NewApiClient()\n // IPv4/IPv6 address or FQDN of the cluster\n\ \ ApiClientInstance.Host = \"localhost\"\n // Port used for the connection.\ \ PC products typically use port 9440, while NC products typically use port\ \ 443. See the product-specific documentation for accurate configuration.\n\ \ ApiClientInstance.Port = 9440\n // Interval in ms to use during\ \ retry attempts\n ApiClientInstance.RetryInterval = 5 * time.Second\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ ApiClientInstance.MaxRetryAttempts = 5\n // UserName to connect\ \ to the cluster\n ApiClientInstance.Username = \"username\"\n //\ \ Password to connect to the cluster\n ApiClientInstance.Password = \"\ password\"\n // Please add authorization information here if needed.\n\ \ RecommendationsServiceApiInstance = api.NewRecommendationsServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n extId := \"6CdBE9BE-3EBE-1bC0-6194-C4a0CFC054B1\"\ \n\n\n request := recommendations.GetRecommendationByIdRequest{ ExtId:\ \ &extId }\n response, error := RecommendationsServiceApiInstance.GetRecommendationById(ctx,\ \ &request)\n if error != nil {\n fmt.Println(error)\n \ \ return\n }\n data, _ := response.GetData().(import1.RecommendationResult)\n\ \ fmt.Println(data)\n\n}\n\n" - lang: cURL source: |2+ curl --request GET \ --url "https://host:port/api/lifecycle/v4.2/resources/recommendations/AAd6101f-e3E8-cef4-FCad-86FABc2c4ffd" \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method GET \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/recommendations/D1d0DebB-b0A2-8eFa-7eF9-Bd3bAbec4831" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ RecommendationsApi recommendationsApi = new RecommendationsApi(client);\n\ \n String extId = \"9ABeBFb1-8ce6-85da-2A97-eB6F6E50E7E8\";\n\n \ \ // Create request object with parameters\n var request = new\ \ GetRecommendationByIdRequest {\n ExtId = extId\n };\n\ \ try {\n GetRecommendationByIdApiResponse getRecommendationByIdApiResponse\ \ = recommendationsApi.GetRecommendationById(request);\n } catch\ \ (ApiException ex) {\n Console.WriteLine(ex.Message);\n \ \ }\n }\n }\n}\n" /lifecycle/v4.2/resources/status: get: tags: - Status summary: Get the LCM framework status. description: Get the LCM framework status. operationId: getStatus parameters: - name: X-Cluster-Id in: header description: Cluster uuid on which the resource is present or operation is being performed. required: false style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 08c676ff-dbb8-45f2-bbde-68e533e5287e responses: "200": description: Queried status of LCM framework. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.resources.StatusInfo' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/status Get operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/status Get operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/status Get operation x-permissions: operationName: View Status Info deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin - name: Prism Viewer - name: Cluster Viewer x-rate-limit: - type: xsmall count: 10 timeUnit: seconds - type: Small count: 10 timeUnit: seconds - type: Large count: 10 timeUnit: seconds - type: XLarge count: 10 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: "6.8" x-code-samples: - lang: Java source: |2 package sample; import com.nutanix.lif.java.client.ApiClient; import com.nutanix.lif.java.client.api.StatusApi; import com.nutanix.dp1.lif.lifecycle.v4.request.Status.GetStatusRequest; import com.nutanix.dp1.lif.lifecycle.v4.resources.GetStatusApiResponse; import org.springframework.web.client.RestClientException; public class JavaSdkSample { public static void main(String[] args) { // Configure the client ApiClient apiClient = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClient.setHost("localhost"); // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClient.setPort(9440); // Interval in ms to use during retry attempts apiClient.setRetryInterval(5000); // Max retry attempts while reconnecting on a loss of connection apiClient.setMaxRetryAttempts(5); // UserName to connect to the cluster String username = "username"; // Password to connect to the cluster String password = "password"; apiClient.setUsername(username); apiClient.setPassword(password); // Please add authorization information here if needed. StatusApi statusApi = new StatusApi(apiClient); try { // Pass in parameters using the request builder object associated with the operation. GetStatusApiResponse getStatusApiResponse = statusApi.getStatus(GetStatusRequest.builder() .build()); System.out.println(getStatusApiResponse.toString()); } catch (RestClientException ex) { System.out.println(ex.getMessage()); } } } - lang: JavaScript source: |2 import { ApiClient, StatusApi } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let statusApi = new StatusApi(apiClientInstance); function sample() { statusApi.getStatus().then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: |2+ import ntnx_lifecycle_py_client if __name__ == "__main__": # Configure the client config = ntnx_lifecycle_py_client.Configuration() # IPv4/IPv6 address or FQDN of the cluster config.host = "localhost" # Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. config.port = 9440 # Max retry attempts while reconnecting on a loss of connection config.max_retry_attempts = 3 # Backoff factor to use during retry attempts config.backoff_factor = 3 # UserName to connect to the cluster config.username = "username" # Password to connect to the cluster config.password = "password" # Please add authorization information here if needed. client = ntnx_lifecycle_py_client.ApiClient(configuration=config) status_api = ntnx_lifecycle_py_client.StatusApi(api_client=client) try: api_response = status_api.get_status() print(api_response) except ntnx_lifecycle_py_client.rest.ApiException as e: print(e) - lang: Go source: |2+ package main import ( "fmt" "time" "context" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/status" import1 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources" ) var ( ApiClientInstance *client.ApiClient StatusServiceApiInstance *api.StatusServiceApi ) func main() { ApiClientInstance = client.NewApiClient() // IPv4/IPv6 address or FQDN of the cluster ApiClientInstance.Host = "localhost" // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. ApiClientInstance.Port = 9440 // Interval in ms to use during retry attempts ApiClientInstance.RetryInterval = 5 * time.Second // Max retry attempts while reconnecting on a loss of connection ApiClientInstance.MaxRetryAttempts = 5 // UserName to connect to the cluster ApiClientInstance.Username = "username" // Password to connect to the cluster ApiClientInstance.Password = "password" // Please add authorization information here if needed. StatusServiceApiInstance = api.NewStatusServiceApi(ApiClientInstance) ctx := context.Background() request := status.GetStatusRequest{ } response, error := StatusServiceApiInstance.GetStatus(ctx, &request) if error != nil { fmt.Println(error) return } data, _ := response.GetData().(import1.StatusInfo) fmt.Println(data) } - lang: cURL source: |2+ curl --request GET \ --url "https://host:port/api/lifecycle/v4.2/resources/status" \ --header 'Accept: application/json' \ --header 'X-Cluster-Id: DeFe9ACC-3Afa-DddF-E7a0-5FfA0715dAAC' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method GET \ --header 'Accept: application/json' \ --header 'X-Cluster-Id: EcABeDBD-Fb9E-A5f8-3AF6-D8d01bc4aeb9' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/status" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ StatusApi statusApi = new StatusApi(client);\n\n\n try {\n \ \ GetStatusApiResponse getStatusApiResponse = statusApi.GetStatus();\n\ \ } catch (ApiException ex) {\n Console.WriteLine(ex.Message);\n\ \ }\n }\n }\n}\n" /lifecycle/v4.2/resources/upgrade-selections/{extId}: get: tags: - UpgradeSelections summary: Information about the upgrade selection made on the cluster description: Get upgrade selection details for upgrade selction id operationId: getUpgradeSelectionById parameters: - name: extId in: path description: ExtId of the LCM Upgrade Selection required: true style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 8a32c5e7-777c-4340-ace1-126c0024a21b responses: "200": description: Queried upgrade selection information content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.resources.UpgradeSelection' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections/{extId}\ \ Get operation" "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections/{extId}\ \ Get operation" "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections/{extId}\ \ Get operation" x-permissions: operationName: View Upgrade Selection deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin - name: Prism Viewer - name: Cluster Viewer - name: Security Dashboard Admin - name: Security Dashboard Viewer x-rate-limit: - type: xsmall count: 10 timeUnit: seconds - type: Small count: 10 timeUnit: seconds - type: Large count: 10 timeUnit: seconds - type: XLarge count: 10 timeUnit: seconds x-supported-versions: - product: PC version: "7.5" - product: PE version: 7.0.1.6 x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.UpgradeSelectionsApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.UpgradeSelections.GetUpgradeSelectionByIdRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.GetUpgradeSelectionApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ UpgradeSelectionsApi upgradeSelectionsApi = new UpgradeSelectionsApi(apiClient);\n\ \n \n String extId = \"EE1b7eb0-B4A5-fDF0-AfDF-4Af1621718a5\"\ ;\n\n try {\n // Pass in parameters using the request\ \ builder object associated with the operation.\n GetUpgradeSelectionApiResponse\ \ getUpgradeSelectionApiResponse = upgradeSelectionsApi.getUpgradeSelectionById(GetUpgradeSelectionByIdRequest.builder()\n\ \ .extId(extId)\n .build());\n\n \ \ System.out.println(getUpgradeSelectionApiResponse.toString());\n\n \ \ } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: "\nimport { ApiClient, UpgradeSelectionsApi } from \"@nutanix-api/lifecycle-js-client\"\ ;\n\n// Configure the client\nlet apiClientInstance = new ApiClient();\n\ // IPv4/IPv6 address or FQDN of the cluster\napiClientInstance.host = 'localhost';\n\ // Port used for the connection. PC products typically use port 9440, while\ \ NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\napiClientInstance.port = '9440';\n// Max\ \ retry attempts while reconnecting on a loss of connection\napiClientInstance.maxRetryAttempts\ \ = 5;\n// Interval in ms to use during retry attempts\napiClientInstance.retryInterval\ \ = 5000;\n// UserName to connect to the cluster\napiClientInstance.username\ \ = 'username';\n// Password to connect to the cluster\napiClientInstance.password\ \ = 'password';\n// Please add authorization information here if needed.\n\ let upgradeSelectionsApi = new UpgradeSelectionsApi(apiClientInstance);\n\ \nfunction sample() {\n\n \n let extId = \"2cAA4BF6-1Ef6-Afbb-A9ad-8C973f07cdfE\"\ ;\n\n\n\n\n\n upgradeSelectionsApi.getUpgradeSelectionById(extId).then(({data,\ \ response}) => {\n console.log(`API returned the following status\ \ code: ${response.status}`);\n console.log(data.getData());\n \ \ }).catch((error) => {\n console.log(`Error is: ${error}`);\n \ \ });\n\n}\nsample()\n" - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ upgrade_selections_api = ntnx_lifecycle_py_client.UpgradeSelectionsApi(api_client=client)\n\ \ \n ext_id = \"aFEBcAbB-DBc3-7C75-0974-12bDF90eceAa\"\n\n\n try:\n\ \ api_response = upgrade_selections_api.get_upgrade_selection_by_id(extId=ext_id)\n\ \ print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/upgradeselections\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n UpgradeSelectionsServiceApiInstance\ \ *api.UpgradeSelectionsServiceApi\n)\n\nfunc main() {\n ApiClientInstance\ \ = client.NewApiClient()\n // IPv4/IPv6 address or FQDN of the cluster\n\ \ ApiClientInstance.Host = \"localhost\"\n // Port used for the connection.\ \ PC products typically use port 9440, while NC products typically use port\ \ 443. See the product-specific documentation for accurate configuration.\n\ \ ApiClientInstance.Port = 9440\n // Interval in ms to use during\ \ retry attempts\n ApiClientInstance.RetryInterval = 5 * time.Second\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ ApiClientInstance.MaxRetryAttempts = 5\n // UserName to connect\ \ to the cluster\n ApiClientInstance.Username = \"username\"\n //\ \ Password to connect to the cluster\n ApiClientInstance.Password = \"\ password\"\n // Please add authorization information here if needed.\n\ \ UpgradeSelectionsServiceApiInstance = api.NewUpgradeSelectionsServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n extId := \"7fB45a7D-a7FB-f3e6-BBAF-eda5D20d7D37\"\ \n\n\n request := upgradeselections.GetUpgradeSelectionByIdRequest{ ExtId:\ \ &extId }\n response, error := UpgradeSelectionsServiceApiInstance.GetUpgradeSelectionById(ctx,\ \ &request)\n if error != nil {\n fmt.Println(error)\n \ \ return\n }\n data, _ := response.GetData().(import1.UpgradeSelection)\n\ \ fmt.Println(data)\n\n}\n\n" - lang: cURL source: |2+ curl --request GET \ --url "https://host:port/api/lifecycle/v4.2/resources/upgrade-selections/Fe69fdcf-B1d5-3BBe-d346-BCff9ADbf87A" \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method GET \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/upgrade-selections/da45eeD6-b35A-85C0-e0Cb-fb9AD2eEd4bF" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ UpgradeSelectionsApi upgradeSelectionsApi = new UpgradeSelectionsApi(client);\n\ \n String extId = \"a5ce4dcE-ba7f-fc3F-A912-bBbd54F7dc15\";\n\n \ \ // Create request object with parameters\n var request = new\ \ GetUpgradeSelectionByIdRequest {\n ExtId = extId\n };\n\ \ try {\n GetUpgradeSelectionApiResponse getUpgradeSelectionApiResponse\ \ = upgradeSelectionsApi.GetUpgradeSelectionById(request);\n } catch\ \ (ApiException ex) {\n Console.WriteLine(ex.Message);\n \ \ }\n }\n }\n}\n" delete: tags: - UpgradeSelections summary: Delete LCM upgrade selection description: Delete upgrade selection for the specified ExtId operationId: deleteUpgradeSelectionById parameters: - name: extId in: path description: ExtId of the LCM Upgrade Selection required: true style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 7206494f-4c37-4aad-ad62-c681d40e20e8 - name: NTNX-Request-Id in: header description: | A unique identifier that is associated with each request. The provided value must be opaque and preferably in Universal Unique Identifier (UUID) format. This identifier is also used as an idempotence token for safely retrying requests in case of network errors. All the supported Nutanix API clients add this auto-generated request identifier to each request. required: true style: simple explode: false schema: type: string format: uuid example: 24bff9e0-d7b5-44f5-88c7-9a4f274f0239 responses: "202": description: Deleted upgrade selection corresponding to the specified ExtId headers: Location: style: simple explode: false schema: pattern: "^((http[s]?|nfs):\\/)?\\/?(([a-zA-Z0-9\\-\\.]+)|(\\d{1,3}(\\\ .\\d{1,3}){3})|(\\[[0-9a-fA-F:]+\\]))(:\\d+)?(\\/[^\\s?#]*)?(\\\ ?[^#\\s]*)?(#[^\\s]*)?$" type: string description: Indicates the target of a redirection or the URL of a newly created resource. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/prism.v4.3.config.TaskReference' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections/{extId}\ \ Delete operation" "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections/{extId}\ \ Delete operation" "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections/{extId}\ \ Delete operation" x-permissions: operationName: Delete Upgrade Selection deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin x-rate-limit: - type: xsmall count: 8 timeUnit: seconds - type: Small count: 8 timeUnit: seconds - type: Large count: 8 timeUnit: seconds - type: XLarge count: 8 timeUnit: seconds x-supported-versions: - product: PC version: "7.5" - product: PE version: 7.0.1.6 x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.UpgradeSelectionsApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.UpgradeSelections.DeleteUpgradeSelectionByIdRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.DeleteUpgradeSelectionApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ UpgradeSelectionsApi upgradeSelectionsApi = new UpgradeSelectionsApi(apiClient);\n\ \n \n String extId = \"D2bCd5fc-22A3-6AC7-eBDD-bFaa006217Ed\"\ ;\n\n try {\n // Pass in parameters using the request\ \ builder object associated with the operation.\n DeleteUpgradeSelectionApiResponse\ \ deleteUpgradeSelectionApiResponse = upgradeSelectionsApi.deleteUpgradeSelectionById(DeleteUpgradeSelectionByIdRequest.builder()\n\ \ .extId(extId)\n .build());\n\n \ \ System.out.println(deleteUpgradeSelectionApiResponse.toString());\n\n\ \ } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: "\nimport { ApiClient, UpgradeSelectionsApi } from \"@nutanix-api/lifecycle-js-client\"\ ;\n\n// Configure the client\nlet apiClientInstance = new ApiClient();\n\ // IPv4/IPv6 address or FQDN of the cluster\napiClientInstance.host = 'localhost';\n\ // Port used for the connection. PC products typically use port 9440, while\ \ NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\napiClientInstance.port = '9440';\n// Max\ \ retry attempts while reconnecting on a loss of connection\napiClientInstance.maxRetryAttempts\ \ = 5;\n// Interval in ms to use during retry attempts\napiClientInstance.retryInterval\ \ = 5000;\n// UserName to connect to the cluster\napiClientInstance.username\ \ = 'username';\n// Password to connect to the cluster\napiClientInstance.password\ \ = 'password';\n// Please add authorization information here if needed.\n\ let upgradeSelectionsApi = new UpgradeSelectionsApi(apiClientInstance);\n\ \nfunction sample() {\n\n \n let extId = \"cE7ccAaE-bD39-a2b8-B6Dd-Af29bcffCbDe\"\ ;\n\n\n\n\n\n upgradeSelectionsApi.deleteUpgradeSelectionById(extId).then(({data,\ \ response}) => {\n console.log(`API returned the following status\ \ code: ${response.status}`);\n console.log(data.getData());\n \ \ }).catch((error) => {\n console.log(`Error is: ${error}`);\n \ \ });\n\n}\nsample()\n" - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ upgrade_selections_api = ntnx_lifecycle_py_client.UpgradeSelectionsApi(api_client=client)\n\ \ \n ext_id = \"Dbc41ca6-3dCb-d0aB-5A4d-7BEBb3d88be9\"\n\n\n try:\n\ \ api_response = upgrade_selections_api.delete_upgrade_selection_by_id(extId=ext_id)\n\ \ print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/upgradeselections\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/prism/v4/config\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n UpgradeSelectionsServiceApiInstance\ \ *api.UpgradeSelectionsServiceApi\n)\n\nfunc main() {\n ApiClientInstance\ \ = client.NewApiClient()\n // IPv4/IPv6 address or FQDN of the cluster\n\ \ ApiClientInstance.Host = \"localhost\"\n // Port used for the connection.\ \ PC products typically use port 9440, while NC products typically use port\ \ 443. See the product-specific documentation for accurate configuration.\n\ \ ApiClientInstance.Port = 9440\n // Interval in ms to use during\ \ retry attempts\n ApiClientInstance.RetryInterval = 5 * time.Second\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ ApiClientInstance.MaxRetryAttempts = 5\n // UserName to connect\ \ to the cluster\n ApiClientInstance.Username = \"username\"\n //\ \ Password to connect to the cluster\n ApiClientInstance.Password = \"\ password\"\n // Please add authorization information here if needed.\n\ \ UpgradeSelectionsServiceApiInstance = api.NewUpgradeSelectionsServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n extId := \"Bb80bf4E-7Baf-50eF-d5e7-a7dCdBBBb9Cf\"\ \n\n\n request := upgradeselections.DeleteUpgradeSelectionByIdRequest{\ \ ExtId: &extId }\n response, error := UpgradeSelectionsServiceApiInstance.DeleteUpgradeSelectionById(ctx,\ \ &request)\n if error != nil {\n fmt.Println(error)\n \ \ return\n }\n data, _ := response.GetData().(import1.TaskReference)\n\ \ fmt.Println(data)\n\n}\n\n" - lang: cURL source: |2+ curl --request DELETE \ --url "https://host:port/api/lifecycle/v4.2/resources/upgrade-selections/c3deD5cd-fbC1-4DFD-dC39-7cbcebBC17F1" \ --header 'Accept: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method DELETE \ --header 'Accept: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/upgrade-selections/8E9c61eA-d5f0-b6fe-CAEa-2Be2Dcb0FEeC" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ UpgradeSelectionsApi upgradeSelectionsApi = new UpgradeSelectionsApi(client);\n\ \n String extId = \"7CA86a1e-ADFD-fC8B-DF33-0d5dbFbabABd\";\n\n \ \ // Create request object with parameters\n var request = new\ \ DeleteUpgradeSelectionByIdRequest {\n ExtId = extId\n \ \ };\n try {\n DeleteUpgradeSelectionApiResponse deleteUpgradeSelectionApiResponse\ \ = upgradeSelectionsApi.DeleteUpgradeSelectionById(request);\n }\ \ catch (ApiException ex) {\n Console.WriteLine(ex.Message);\n\ \ }\n }\n }\n}\n" /lifecycle/v4.2/resources/upgrade-selections: get: tags: - UpgradeSelections summary: Get the LCM Upgrade Selections on the cluster description: Query list of Upgrade Selections operationId: listUpgradeSelections parameters: - name: $page in: query description: | A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results. required: false style: form explode: false schema: minimum: 0 type: integer description: | A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results. format: int32 default: 0 - name: $limit in: query description: | A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set. required: false style: form explode: false schema: maximum: 100 minimum: 1 type: integer description: | A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set. format: int32 default: 50 - name: $filter in: query description: |- A URL query parameter that allows clients to filter a collection of resources. The expression specified with $filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the $filter must conform to the [OData V4.01](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html) URL conventions. For example, filter **$filter=name eq 'karbon-ntnx-1.0'** would filter the result on cluster name 'karbon-ntnx1.0', filter **$filter=startswith(name, 'C')** would filter on cluster name starting with 'C'. required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: clusterExtId example: "https://{host}:{port}/api/lifecycle/v4.2/resources/upgrade-selections?$filter=clusterExtId\ \ eq '8c7ad7a7-07ef-41aa-86a0-af691b115512'" - name: status example: "https://{host}:{port}/api/lifecycle/v4.2/resources/upgrade-selections?$filter=status\ \ eq Lifecycle.Resources.UpgradeSelectionStatus'PENDING_UPLOAD'" - name: $orderby in: query description: "A URL query parameter that allows clients to specify the sort\ \ criteria for the returned list of objects. Resources can be sorted in\ \ ascending order using asc or descending order using desc. If asc or desc\ \ are not specified, the resources will be sorted in ascending order by\ \ default. For example, '$orderby=templateName desc' would get all templates\ \ sorted by templateName in descending order." required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: clusterExtId example: "https://{host}:{port}/api/lifecycle/v4.2/resources/upgrade-selections?$orderby=clusterExtId" - name: status example: "https://{host}:{port}/api/lifecycle/v4.2/resources/upgrade-selections?$orderby=status" - name: $select in: query description: "A URL query parameter that allows clients to request a specific\ \ set of properties for each entity or complex type. Expression specified\ \ with the $select must conform to the [OData V4.01](https://docs.oasis-open.org/odata/odata/v4.01/odata-v4.01-part1-protocol.html)\ \ URL conventions. If a $select expression consists of a single select item\ \ that is an asterisk (i.e., *), then all properties on the matching resource\ \ will be returned." required: false style: form explode: true schema: type: string example: string x-odata-fields: - name: clusterExtId example: "https://{host}:{port}/api/lifecycle/v4.2/resources/upgrade-selections?$select=clusterExtId" - name: extId example: "https://{host}:{port}/api/lifecycle/v4.2/resources/upgrade-selections?$select=extId" - name: links example: "https://{host}:{port}/api/lifecycle/v4.2/resources/upgrade-selections?$select=links" - name: selectedUpgrades example: "https://{host}:{port}/api/lifecycle/v4.2/resources/upgrade-selections?$select=selectedUpgrades" - name: status example: "https://{host}:{port}/api/lifecycle/v4.2/resources/upgrade-selections?$select=status" - name: tenantId example: "https://{host}:{port}/api/lifecycle/v4.2/resources/upgrade-selections?$select=tenantId" responses: "200": description: Paginated list of LCM Upgrade Selections content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.resources.UpgradeSelection' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections Get operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections Get operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections Get operation x-permissions: operationName: View Upgrade Selection deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin - name: Prism Viewer - name: Cluster Viewer - name: Security Dashboard Admin - name: Security Dashboard Viewer x-rate-limit: - type: xsmall count: 8 timeUnit: seconds - type: Small count: 8 timeUnit: seconds - type: Large count: 8 timeUnit: seconds - type: XLarge count: 8 timeUnit: seconds x-supported-versions: - product: PC version: "7.5" - product: PE version: 7.0.1.6 x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.UpgradeSelectionsApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.UpgradeSelections.ListUpgradeSelectionsRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.ListUpgradeSelectionsApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ UpgradeSelectionsApi upgradeSelectionsApi = new UpgradeSelectionsApi(apiClient);\n\ \n \n int page = 0;\n \n int limit = 50;\n\n\ \ try {\n // Pass in parameters using the request builder\ \ object associated with the operation.\n ListUpgradeSelectionsApiResponse\ \ listUpgradeSelectionsApiResponse = upgradeSelectionsApi.listUpgradeSelections(ListUpgradeSelectionsRequest.builder()\n\ \ .$page(page)\n .$limit(limit)\n \ \ .$filter(null)\n .$orderby(null)\n \ \ .$select(null)\n .build());\n\n System.out.println(listUpgradeSelectionsApiResponse.toString());\n\ \n } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: |2 import { ApiClient, UpgradeSelectionsApi } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let upgradeSelectionsApi = new UpgradeSelectionsApi(apiClientInstance); function sample() { // Construct Optional Parameters var opts = {}; opts["$page"] = 0; opts["$limit"] = 50; opts["$filter"] = "string_sample_data"; opts["$orderby"] = "string_sample_data"; opts["$select"] = "string_sample_data"; upgradeSelectionsApi.listUpgradeSelections(opts).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ upgrade_selections_api = ntnx_lifecycle_py_client.UpgradeSelectionsApi(api_client=client)\n\ \ \n page = 0\n \n limit = 50\n\n\n try:\n api_response\ \ = upgrade_selections_api.list_upgrade_selections(_page=page, _limit=limit)\n\ \ print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/upgradeselections\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n UpgradeSelectionsServiceApiInstance\ \ *api.UpgradeSelectionsServiceApi\n)\n\nfunc main() {\n ApiClientInstance\ \ = client.NewApiClient()\n // IPv4/IPv6 address or FQDN of the cluster\n\ \ ApiClientInstance.Host = \"localhost\"\n // Port used for the connection.\ \ PC products typically use port 9440, while NC products typically use port\ \ 443. See the product-specific documentation for accurate configuration.\n\ \ ApiClientInstance.Port = 9440\n // Interval in ms to use during\ \ retry attempts\n ApiClientInstance.RetryInterval = 5 * time.Second\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ ApiClientInstance.MaxRetryAttempts = 5\n // UserName to connect\ \ to the cluster\n ApiClientInstance.Username = \"username\"\n //\ \ Password to connect to the cluster\n ApiClientInstance.Password = \"\ password\"\n // Please add authorization information here if needed.\n\ \ UpgradeSelectionsServiceApiInstance = api.NewUpgradeSelectionsServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n page_ := 0\n \n limit_\ \ := 50\n\n\n request := upgradeselections.ListUpgradeSelectionsRequest{\ \ Page_: &page_, Limit_: &limit_, Filter_: nil, Orderby_: nil, Select_:\ \ nil }\n response, error := UpgradeSelectionsServiceApiInstance.ListUpgradeSelections(ctx,\ \ &request)\n if error != nil {\n fmt.Println(error)\n \ \ return\n }\n data, _ := response.GetData().([]import1.UpgradeSelection)\n\ \ fmt.Println(data)\n\n}\n\n" - lang: cURL source: |2+ curl --request GET \ --url "https://host:port/api/lifecycle/v4.2/resources/upgrade-selections?$filter=string_sample_data&$limit=50&$orderby=string_sample_data&$page=0&$select=string_sample_data" \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method GET \ --header 'Accept: application/json' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/upgrade-selections?$filter=string_sample_data&$limit=50&$orderby=string_sample_data&$page=0&$select=string_sample_data" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ UpgradeSelectionsApi upgradeSelectionsApi = new UpgradeSelectionsApi(client);\n\ \n int page = 0;\n int limit = 50;\n String filter = \"string_sample_data\"\ ;\n String orderby = \"string_sample_data\";\n String select =\ \ \"string_sample_data\";\n\n // Create request object with parameters\n\ \ var request = new ListUpgradeSelectionsRequest {\n Page\ \ = page,\n Limit = limit,\n Filter = filter,\n \ \ Orderby = orderby,\n Select = select\n };\n\ \ try {\n ListUpgradeSelectionsApiResponse listUpgradeSelectionsApiResponse\ \ = upgradeSelectionsApi.ListUpgradeSelections(request);\n } catch\ \ (ApiException ex) {\n Console.WriteLine(ex.Message);\n \ \ }\n }\n }\n}\n" post: tags: - UpgradeSelections summary: Create a new LCM Upgrade Selection description: Create an LCM Upgrade Selection operationId: createUpgradeSelection parameters: - name: NTNX-Request-Id in: header description: | A unique identifier that is associated with each request. The provided value must be opaque and preferably in Universal Unique Identifier (UUID) format. This identifier is also used as an idempotence token for safely retrying requests in case of network errors. All the supported Nutanix API clients add this auto-generated request identifier to each request. required: true style: simple explode: false schema: type: string format: uuid example: 0abb117b-838f-4960-9d0c-e662b02033de requestBody: content: application/json: schema: $ref: '#/components/schemas/lifecycle.v4.2.resources.UpgradeSelection' required: true responses: "202": description: Upgrade Selection create response headers: Location: style: simple explode: false schema: pattern: "^((http[s]?|nfs):\\/)?\\/?(([a-zA-Z0-9\\-\\.]+)|(\\d{1,3}(\\\ .\\d{1,3}){3})|(\\[[0-9a-fA-F:]+\\]))(:\\d+)?(\\/[^\\s?#]*)?(\\\ ?[^#\\s]*)?(#[^\\s]*)?$" type: string description: Indicates the target of a redirection or the URL of a newly created resource. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/prism.v4.3.config.TaskReference' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections Post operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections Post operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections Post operation x-permissions: operationName: Create Upgrade Selection deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin x-rate-limit: - type: xsmall count: 8 timeUnit: seconds - type: Small count: 8 timeUnit: seconds - type: Large count: 8 timeUnit: seconds - type: XLarge count: 8 timeUnit: seconds x-supported-versions: - product: PC version: "7.5" - product: PE version: 7.0.1.6 x-code-samples: - lang: Java source: |2 package sample; import com.nutanix.lif.java.client.ApiClient; import com.nutanix.lif.java.client.api.UpgradeSelectionsApi; import com.nutanix.dp1.lif.lifecycle.v4.request.UpgradeSelections.CreateUpgradeSelectionRequest; import com.nutanix.dp1.lif.lifecycle.v4.resources.UpgradeSelection; import com.nutanix.dp1.lif.lifecycle.v4.resources.CreateUpgradeSelectionApiResponse; import org.springframework.web.client.RestClientException; public class JavaSdkSample { public static void main(String[] args) { // Configure the client ApiClient apiClient = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClient.setHost("localhost"); // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClient.setPort(9440); // Interval in ms to use during retry attempts apiClient.setRetryInterval(5000); // Max retry attempts while reconnecting on a loss of connection apiClient.setMaxRetryAttempts(5); // UserName to connect to the cluster String username = "username"; // Password to connect to the cluster String password = "password"; apiClient.setUsername(username); apiClient.setPassword(password); // Please add authorization information here if needed. UpgradeSelectionsApi upgradeSelectionsApi = new UpgradeSelectionsApi(apiClient); UpgradeSelection upgradeSelection = new UpgradeSelection(); // UpgradeSelection object initializations here... upgradeSelection.setSelectedUpgrades(new ArrayList<>()); // required field try { // Pass in parameters using the request builder object associated with the operation. CreateUpgradeSelectionApiResponse createUpgradeSelectionApiResponse = upgradeSelectionsApi.createUpgradeSelection(CreateUpgradeSelectionRequest.builder() .build(), upgradeSelection); System.out.println(createUpgradeSelectionApiResponse.toString()); } catch (RestClientException ex) { System.out.println(ex.getMessage()); } } } - lang: JavaScript source: |2 import { ApiClient, UpgradeSelectionsApi, UpgradeSelection } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let upgradeSelectionsApi = new UpgradeSelectionsApi(apiClientInstance); function sample() { let upgradeSelection = new UpgradeSelection(); // UpgradeSelection object initializations here... upgradeSelection.setSelectedUpgrades([]); // required field upgradeSelection = JSON.stringify(upgradeSelection); upgradeSelectionsApi.createUpgradeSelection(upgradeSelection).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: |2+ import ntnx_lifecycle_py_client if __name__ == "__main__": # Configure the client config = ntnx_lifecycle_py_client.Configuration() # IPv4/IPv6 address or FQDN of the cluster config.host = "localhost" # Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. config.port = 9440 # Max retry attempts while reconnecting on a loss of connection config.max_retry_attempts = 3 # Backoff factor to use during retry attempts config.backoff_factor = 3 # UserName to connect to the cluster config.username = "username" # Password to connect to the cluster config.password = "password" # Please add authorization information here if needed. client = ntnx_lifecycle_py_client.ApiClient(configuration=config) upgrade_selections_api = ntnx_lifecycle_py_client.UpgradeSelectionsApi(api_client=client) upgradeSelection = ntnx_lifecycle_py_client.UpgradeSelection() # UpgradeSelection object initializations here... upgradeSelection.selected_upgrades = [] # required field try: api_response = upgrade_selections_api.create_upgrade_selection(body=upgradeSelection) print(api_response) except ntnx_lifecycle_py_client.rest.ApiException as e: print(e) - lang: Go source: |2+ package main import ( "fmt" "time" "context" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client" "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/upgradeselections" import1 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/resources" import2 "github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/prism/v4/config" ) var ( ApiClientInstance *client.ApiClient UpgradeSelectionsServiceApiInstance *api.UpgradeSelectionsServiceApi ) func main() { ApiClientInstance = client.NewApiClient() // IPv4/IPv6 address or FQDN of the cluster ApiClientInstance.Host = "localhost" // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. ApiClientInstance.Port = 9440 // Interval in ms to use during retry attempts ApiClientInstance.RetryInterval = 5 * time.Second // Max retry attempts while reconnecting on a loss of connection ApiClientInstance.MaxRetryAttempts = 5 // UserName to connect to the cluster ApiClientInstance.Username = "username" // Password to connect to the cluster ApiClientInstance.Password = "password" // Please add authorization information here if needed. UpgradeSelectionsServiceApiInstance = api.NewUpgradeSelectionsServiceApi(ApiClientInstance) ctx := context.Background() upgradeSelection := import1.NewUpgradeSelection() // UpgradeSelection object initializations here... request := upgradeselections.CreateUpgradeSelectionRequest{ Body: upgradeSelection } response, error := UpgradeSelectionsServiceApiInstance.CreateUpgradeSelection(ctx, &request) if error != nil { fmt.Println(error) return } data, _ := response.GetData().(import2.TaskReference) fmt.Println(data) } - lang: cURL source: |2+ curl --request POST \ --url "https://host:port/api/lifecycle/v4.2/resources/upgrade-selections" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --data {"tenantId":"string","extId":"string","links":[{"href":"string","rel":"string","$objectType":"common.v1.response.ApiLink"}],"selectedUpgrades":[{"entityUuid":"string","toVersion":"5.20.0","$objectType":"lifecycle.v4.common.EntityUpdateSpec"}],"clusterExtId":"string","status":"$UNKNOWN","$objectType":"lifecycle.v4.resources.UpgradeSelection"} \ - lang: Wget source: |2 wget --verbose \ --method POST \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --body-data {"tenantId":"string","extId":"string","links":[{"href":"string","rel":"string","$objectType":"common.v1.response.ApiLink"}],"selectedUpgrades":[{"entityUuid":"string","toVersion":"5.20.0","$objectType":"lifecycle.v4.common.EntityUpdateSpec"}],"clusterExtId":"string","status":"$UNKNOWN","$objectType":"lifecycle.v4.resources.UpgradeSelection"} \ - "https://host:port/api/lifecycle/v4.2/resources/upgrade-selections" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ UpgradeSelectionsApi upgradeSelectionsApi = new UpgradeSelectionsApi(client);\n\ \n UpgradeSelection upgradeSelection = new UpgradeSelection();\n\n\ \ // UpgradeSelection object initializations here...\n upgradeSelection.SelectedUpgrades\ \ = new ArrayList(); // required field\n\n\n // Create request object\ \ with parameters\n var request = new CreateUpgradeSelectionRequest\ \ {\n Body = upgradeSelection\n };\n try {\n \ \ CreateUpgradeSelectionApiResponse createUpgradeSelectionApiResponse\ \ = upgradeSelectionsApi.CreateUpgradeSelection(request);\n } catch\ \ (ApiException ex) {\n Console.WriteLine(ex.Message);\n \ \ }\n }\n }\n}\n" /lifecycle/v4.2/resources/upgrade-selections/{extId}/$actions/export: post: tags: - UpgradeSelections summary: Download the darksite upgrade orchestrator helper scripts which are packaged in the download_helper.zip file description: "Generates the download_helper.zip file which contains scripts\ \ and instructions for downloading the LCM darksite bundles required for upgrades.\ \ Once the task is successfully completed, the url to download the download_helper.zip\ \ file is stored in the completion_details field of the task." operationId: exportUpgradeSelection parameters: - name: extId in: path description: ExtId of the LCM Upgrade Selection required: true style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 5a28ab85-8d72-45af-a2ba-af0d147c7ff2 - name: NTNX-Request-Id in: header description: | A unique identifier that is associated with each request. The provided value must be opaque and preferably in Universal Unique Identifier (UUID) format. This identifier is also used as an idempotence token for safely retrying requests in case of network errors. All the supported Nutanix API clients add this auto-generated request identifier to each request. required: true style: simple explode: false schema: type: string format: uuid example: dfb81c4d-d4d0-4e76-95ee-6e1b6310a092 responses: "202": description: Exported upgrade selection details headers: Location: style: simple explode: false schema: pattern: "^((http[s]?|nfs):\\/)?\\/?(([a-zA-Z0-9\\-\\.]+)|(\\d{1,3}(\\\ .\\d{1,3}){3})|(\\[[0-9a-fA-F:]+\\]))(:\\d+)?(\\/[^\\s?#]*)?(\\\ ?[^#\\s]*)?(#[^\\s]*)?$" type: string description: Indicates the target of a redirection or the URL of a newly created resource. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/prism.v4.3.config.TaskReference' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections/{extId}/$actions/export\ \ Post operation" "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections/{extId}/$actions/export\ \ Post operation" "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections/{extId}/$actions/export\ \ Post operation" x-permissions: operationName: Export Upgrade Selection deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin x-rate-limit: - type: xsmall count: 1 timeUnit: seconds - type: Small count: 1 timeUnit: seconds - type: Large count: 1 timeUnit: seconds - type: XLarge count: 1 timeUnit: seconds x-supported-versions: - product: PC version: "7.5" - product: PE version: 7.0.1.6 x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.UpgradeSelectionsApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.UpgradeSelections.ExportUpgradeSelectionRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.resources.ExportUpgradeSelectionApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ UpgradeSelectionsApi upgradeSelectionsApi = new UpgradeSelectionsApi(apiClient);\n\ \n \n String extId = \"f8EFF602-75BB-Dbca-fDF2-b7ca31DeAda2\"\ ;\n\n try {\n // Pass in parameters using the request\ \ builder object associated with the operation.\n ExportUpgradeSelectionApiResponse\ \ exportUpgradeSelectionApiResponse = upgradeSelectionsApi.exportUpgradeSelection(ExportUpgradeSelectionRequest.builder()\n\ \ .extId(extId)\n .build());\n\n \ \ System.out.println(exportUpgradeSelectionApiResponse.toString());\n\n\ \ } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: "\nimport { ApiClient, UpgradeSelectionsApi } from \"@nutanix-api/lifecycle-js-client\"\ ;\n\n// Configure the client\nlet apiClientInstance = new ApiClient();\n\ // IPv4/IPv6 address or FQDN of the cluster\napiClientInstance.host = 'localhost';\n\ // Port used for the connection. PC products typically use port 9440, while\ \ NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\napiClientInstance.port = '9440';\n// Max\ \ retry attempts while reconnecting on a loss of connection\napiClientInstance.maxRetryAttempts\ \ = 5;\n// Interval in ms to use during retry attempts\napiClientInstance.retryInterval\ \ = 5000;\n// UserName to connect to the cluster\napiClientInstance.username\ \ = 'username';\n// Password to connect to the cluster\napiClientInstance.password\ \ = 'password';\n// Please add authorization information here if needed.\n\ let upgradeSelectionsApi = new UpgradeSelectionsApi(apiClientInstance);\n\ \nfunction sample() {\n\n \n let extId = \"69E7980B-3dAd-8ffc-38e9-6BC9EA6eDD69\"\ ;\n\n\n\n\n\n upgradeSelectionsApi.exportUpgradeSelection(extId).then(({data,\ \ response}) => {\n console.log(`API returned the following status\ \ code: ${response.status}`);\n console.log(data.getData());\n \ \ }).catch((error) => {\n console.log(`Error is: ${error}`);\n \ \ });\n\n}\nsample()\n" - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ upgrade_selections_api = ntnx_lifecycle_py_client.UpgradeSelectionsApi(api_client=client)\n\ \ \n ext_id = \"9A297a4f-def7-a3CC-e77f-b4eCA81accC6\"\n\n\n try:\n\ \ api_response = upgrade_selections_api.export_upgrade_selection(extId=ext_id)\n\ \ print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/upgradeselections\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/prism/v4/config\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n UpgradeSelectionsServiceApiInstance\ \ *api.UpgradeSelectionsServiceApi\n)\n\nfunc main() {\n ApiClientInstance\ \ = client.NewApiClient()\n // IPv4/IPv6 address or FQDN of the cluster\n\ \ ApiClientInstance.Host = \"localhost\"\n // Port used for the connection.\ \ PC products typically use port 9440, while NC products typically use port\ \ 443. See the product-specific documentation for accurate configuration.\n\ \ ApiClientInstance.Port = 9440\n // Interval in ms to use during\ \ retry attempts\n ApiClientInstance.RetryInterval = 5 * time.Second\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ ApiClientInstance.MaxRetryAttempts = 5\n // UserName to connect\ \ to the cluster\n ApiClientInstance.Username = \"username\"\n //\ \ Password to connect to the cluster\n ApiClientInstance.Password = \"\ password\"\n // Please add authorization information here if needed.\n\ \ UpgradeSelectionsServiceApiInstance = api.NewUpgradeSelectionsServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n \n extId := \"DB5adede-004b-DA9E-cebC-de2F7AdAedEB\"\ \n\n\n request := upgradeselections.ExportUpgradeSelectionRequest{ ExtId:\ \ &extId }\n response, error := UpgradeSelectionsServiceApiInstance.ExportUpgradeSelection(ctx,\ \ &request)\n if error != nil {\n fmt.Println(error)\n \ \ return\n }\n data, _ := response.GetData().(import1.TaskReference)\n\ \ fmt.Println(data)\n\n}\n\n" - lang: cURL source: |2+ curl --request POST \ --url "https://host:port/api/lifecycle/v4.2/resources/upgrade-selections/b4C00F4E-add6-7bc4-DdC4-AEdfdA62bd0d/$actions/export" \ --header 'Accept: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - lang: Wget source: |2 wget --verbose \ --method POST \ --header 'Accept: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ - "https://host:port/api/lifecycle/v4.2/resources/upgrade-selections/80AEED1E-Fa75-Cb89-7D8e-Bb2EfDba63c4/$actions/export" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Resources;\n\nnamespace CsharpSdkSample\n\ {\n class Program\n {\n static void Main(string[] args) {\n //\ \ Configure the client\n Configuration _config = new Configuration\n\ \ {\n // UserName to connect to the cluster\n Username\ \ = \"username\",\n // Password(SecureString) to connect to the cluster\ \ \n Password = Configuration.CreateSecurePassword(\"password\"),\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n Host = \"\ localhost\",\n // Port used for the connection. \n Port =\ \ 9440,\n // Backoff period in seconds (exponential backoff: 2, 4,\ \ 8... seconds)\n BackOffPeriod = 2,\n // Max retry attempts\ \ while reconnecting on a loss of connection\n MaxRetryAttempts =\ \ 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n \ \ UpgradeSelectionsApi upgradeSelectionsApi = new UpgradeSelectionsApi(client);\n\ \n String extId = \"2C4aeddD-f4CA-B6ee-EB45-B5F2cEfA3ce3\";\n\n \ \ // Create request object with parameters\n var request = new\ \ ExportUpgradeSelectionRequest {\n ExtId = extId\n };\n\ \ try {\n ExportUpgradeSelectionApiResponse exportUpgradeSelectionApiResponse\ \ = upgradeSelectionsApi.ExportUpgradeSelection(request);\n } catch\ \ (ApiException ex) {\n Console.WriteLine(ex.Message);\n \ \ }\n }\n }\n}\n" /lifecycle/v4.2/operations/$actions/upgrade: post: tags: - Upgrades summary: Perform an LCM upgrade operation. description: Perform upgrade operation to a specific target version for discovered LCM entity/entities. operationId: performUpgrade parameters: - name: NTNX-Request-Id in: header description: | A unique identifier that is associated with each request. The provided value must be opaque and preferably in Universal Unique Identifier (UUID) format. This identifier is also used as an idempotence token for safely retrying requests in case of network errors. All the supported Nutanix API clients add this auto-generated request identifier to each request. required: true style: simple explode: false schema: type: string format: uuid example: 5df01046-77c7-4e03-b0a0-995fb17978bd - name: X-Cluster-Id in: header description: Cluster uuid on which the resource is present or operation is being performed. required: false style: simple explode: false schema: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 3579c065-904c-474d-8397-d05ca5f60eae - name: $dryrun in: query description: | A URL query parameter that allows long running operations to execute in a dry-run mode providing ability to identify trouble spots and system failures without performing the actual operation. Additionally this mode also offers a summary snapshot of the resultant system in order to better understand how things fit together. The operation runs in dry-run mode only if the provided value is true. required: false style: form explode: false schema: type: boolean description: | A URL query parameter that allows long running operations to execute in a dry-run mode providing ability to identify trouble spots and system failures without performing the actual operation. Additionally this mode also offers a summary snapshot of the resultant system in order to better understand how things fit together. The operation runs in dry-run mode only if the provided value is true. example: false requestBody: content: application/json: schema: $ref: '#/components/schemas/lifecycle.v4.2.common.UpgradeSpec' required: true responses: "202": description: LCM upgrade operation on discovered entity/entities triggered with the task UUID. headers: Location: style: simple explode: false schema: pattern: "^((http[s]?|nfs):\\/)?\\/?(([a-zA-Z0-9\\-\\.]+)|(\\d{1,3}(\\\ .\\d{1,3}){3})|(\\[[0-9a-fA-F:]+\\]))(:\\d+)?(\\/[^\\s?#]*)?(\\\ ?[^#\\s]*)?(#[^\\s]*)?$" type: string description: Indicates the target of a redirection or the URL of a newly created resource. content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/prism.v4.3.config.TaskReference' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/upgrade Post operation "4XX": description: Client error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/upgrade Post operation "5XX": description: Server error response content: application/json: schema: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/upgrade Post operation x-permissions: operationName: Perform Upgrade Component deploymentList: - ON_PREM roleList: - name: Super Admin - name: Prism Admin - name: Cluster Admin x-rate-limit: - type: xsmall count: 8 timeUnit: seconds - type: Small count: 8 timeUnit: seconds - type: Large count: 8 timeUnit: seconds - type: XLarge count: 8 timeUnit: seconds x-supported-versions: - product: PC version: "7.3" - product: PE version: 7.0.1.6 x-code-samples: - lang: Java source: "\npackage sample;\n\nimport com.nutanix.lif.java.client.ApiClient;\n\ import com.nutanix.lif.java.client.api.UpgradesApi;\nimport com.nutanix.dp1.lif.lifecycle.v4.request.Upgrades.PerformUpgradeRequest;\n\ import com.nutanix.dp1.lif.lifecycle.v4.common.UpgradeSpec;\nimport com.nutanix.dp1.lif.lifecycle.v4.operations.UpgradeApiResponse;\n\ import org.springframework.web.client.RestClientException;\n\npublic class\ \ JavaSdkSample {\n public static void main(String[] args) {\n \ \ // Configure the client\n ApiClient apiClient = new ApiClient();\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n apiClient.setHost(\"\ localhost\");\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n apiClient.setPort(9440);\n\ \ // Interval in ms to use during retry attempts\n apiClient.setRetryInterval(5000);\n\ \ // Max retry attempts while reconnecting on a loss of connection\n\ \ apiClient.setMaxRetryAttempts(5);\n // UserName to connect\ \ to the cluster\n String username = \"username\";\n // Password\ \ to connect to the cluster\n String password = \"password\";\n \ \ apiClient.setUsername(username);\n apiClient.setPassword(password);\n\ \n // Please add authorization information here if needed.\n \ \ UpgradesApi upgradesApi = new UpgradesApi(apiClient);\n\n UpgradeSpec\ \ upgradeSpec = new UpgradeSpec();\n\n // UpgradeSpec object initializations\ \ here...\n \n boolean dryrun = true;\n\n try {\n \ \ // Pass in parameters using the request builder object associated\ \ with the operation.\n UpgradeApiResponse upgradeApiResponse\ \ = upgradesApi.performUpgrade(PerformUpgradeRequest.builder()\n \ \ .$dryrun(dryrun)\n .build(), upgradeSpec);\n\n\ \ System.out.println(upgradeApiResponse.toString());\n\n \ \ } catch (RestClientException ex) {\n System.out.println(ex.getMessage());\n\ \ }\n }\n}\n" - lang: JavaScript source: |2 import { ApiClient, UpgradesApi, UpgradeSpec } from "@nutanix-api/lifecycle-js-client"; // Configure the client let apiClientInstance = new ApiClient(); // IPv4/IPv6 address or FQDN of the cluster apiClientInstance.host = 'localhost'; // Port used for the connection. PC products typically use port 9440, while NC products typically use port 443. See the product-specific documentation for accurate configuration. apiClientInstance.port = '9440'; // Max retry attempts while reconnecting on a loss of connection apiClientInstance.maxRetryAttempts = 5; // Interval in ms to use during retry attempts apiClientInstance.retryInterval = 5000; // UserName to connect to the cluster apiClientInstance.username = 'username'; // Password to connect to the cluster apiClientInstance.password = 'password'; // Please add authorization information here if needed. let upgradesApi = new UpgradesApi(apiClientInstance); function sample() { let upgradeSpec = new UpgradeSpec(); // UpgradeSpec object initializations here... upgradeSpec = JSON.stringify(upgradeSpec); // Construct Optional Parameters var opts = {}; opts["$dryrun"] = true; upgradesApi.performUpgrade(upgradeSpec, opts).then(({data, response}) => { console.log(`API returned the following status code: ${response.status}`); console.log(data.getData()); }).catch((error) => { console.log(`Error is: ${error}`); }); } sample() - lang: Python source: "\nimport ntnx_lifecycle_py_client\n\nif __name__ == \"__main__\"\ :\n # Configure the client\n config = ntnx_lifecycle_py_client.Configuration()\n\ \ # IPv4/IPv6 address or FQDN of the cluster\n config.host = \"localhost\"\ \n # Port used for the connection. PC products typically use port 9440,\ \ while NC products typically use port 443. See the product-specific documentation\ \ for accurate configuration.\n config.port = 9440\n # Max retry attempts\ \ while reconnecting on a loss of connection\n config.max_retry_attempts\ \ = 3\n # Backoff factor to use during retry attempts\n config.backoff_factor\ \ = 3\n # UserName to connect to the cluster\n config.username = \"\ username\"\n # Password to connect to the cluster\n config.password\ \ = \"password\"\n # Please add authorization information here if needed.\n\ \ client = ntnx_lifecycle_py_client.ApiClient(configuration=config)\n\ \ upgrades_api = ntnx_lifecycle_py_client.UpgradesApi(api_client=client)\n\ \ upgradeSpec = ntnx_lifecycle_py_client.UpgradeSpec()\n\n # UpgradeSpec\ \ object initializations here...\n \n dryrun = True\n\n\n try:\n\ \ api_response = upgrades_api.perform_upgrade(body=upgradeSpec, _dryrun=dryrun)\n\ \ print(api_response)\n except ntnx_lifecycle_py_client.rest.ApiException\ \ as e:\n print(e)\n\n" - lang: Go source: "\npackage main\n\nimport (\n \"fmt\"\n \"time\"\n \"context\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/api\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/client\"\ \n \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/request/upgrades\"\ \n import1 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/lifecycle/v4/common\"\ \n import2 \"github.com/nutanix/ntnx-api-golang-clients/lifecycle-go-client/v4/models/prism/v4/config\"\ \n)\n\nvar (\n ApiClientInstance *client.ApiClient\n UpgradesServiceApiInstance\ \ *api.UpgradesServiceApi\n)\n\nfunc main() {\n ApiClientInstance = client.NewApiClient()\n\ \ // IPv4/IPv6 address or FQDN of the cluster\n ApiClientInstance.Host\ \ = \"localhost\"\n // Port used for the connection. PC products typically\ \ use port 9440, while NC products typically use port 443. See the product-specific\ \ documentation for accurate configuration.\n ApiClientInstance.Port\ \ = 9440\n // Interval in ms to use during retry attempts\n ApiClientInstance.RetryInterval\ \ = 5 * time.Second\n // Max retry attempts while reconnecting on a loss\ \ of connection\n ApiClientInstance.MaxRetryAttempts = 5\n // UserName\ \ to connect to the cluster\n ApiClientInstance.Username = \"username\"\ \n // Password to connect to the cluster\n ApiClientInstance.Password\ \ = \"password\"\n // Please add authorization information here if needed.\n\ \ UpgradesServiceApiInstance = api.NewUpgradesServiceApi(ApiClientInstance)\n\ \ ctx := context.Background()\n\n upgradeSpec := import1.NewUpgradeSpec()\n\ \n // UpgradeSpec object initializations here...\n\n \n dryrun_\ \ := true\n\n\n request := upgrades.PerformUpgradeRequest{ Body: upgradeSpec,\ \ Dryrun_: &dryrun_ }\n response, error := UpgradesServiceApiInstance.PerformUpgrade(ctx,\ \ &request)\n if error != nil {\n fmt.Println(error)\n \ \ return\n }\n data, _ := response.GetData().(import2.TaskReference)\n\ \ fmt.Println(data)\n\n}\n\n" - lang: cURL source: |2+ curl --request POST \ --url "https://host:port/api/lifecycle/v4.2/operations/$actions/upgrade?$dryrun=true" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'X-Cluster-Id: eCCeE7CD-edC5-a78e-EcDD-cBaDCdB1dabB' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --data {"managementServer":{"hypervisorType":"$UNKNOWN","ip":"string","username":"admin","password":"*******","$objectType":"lifecycle.v4.common.ManagementServer"},"entityUpdateSpecs":[{"entityUuid":"string","toVersion":"5.20.0","$objectType":"lifecycle.v4.common.EntityUpdateSpec"}],"skippedPrecheckFlags":["$UNKNOWN"],"credentials":[{"credentialDetail":{"credentialExtId":"string","$objectType":"lifecycle.v4.common.CredentialReference"},"$objectType":"lifecycle.v4.common.Credential"}],"autoHandleFlags":["$UNKNOWN"],"maxWaitTimeInSecs":0,"$objectType":"lifecycle.v4.common.UpgradeSpec"} \ - lang: Wget source: |2 wget --verbose \ --method POST \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'NTNX-Request-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6' \ --header 'X-Cluster-Id: E59fD6cB-da57-f4Af-c0aD-dbBb9bEAee2B' \ --header 'Authorization:Basic $APP_ACCESS_TOKEN' \ --body-data {"managementServer":{"hypervisorType":"$UNKNOWN","ip":"string","username":"admin","password":"*******","$objectType":"lifecycle.v4.common.ManagementServer"},"entityUpdateSpecs":[{"entityUuid":"string","toVersion":"5.20.0","$objectType":"lifecycle.v4.common.EntityUpdateSpec"}],"skippedPrecheckFlags":["$UNKNOWN"],"credentials":[{"credentialDetail":{"credentialExtId":"string","$objectType":"lifecycle.v4.common.CredentialReference"},"$objectType":"lifecycle.v4.common.Credential"}],"autoHandleFlags":["$UNKNOWN"],"maxWaitTimeInSecs":0,"$objectType":"lifecycle.v4.common.UpgradeSpec"} \ - "https://host:port/api/lifecycle/v4.2/operations/$actions/upgrade?$dryrun=true" - lang: Csharp source: "\n\nusing Nutanix.LifSDK.Client;\nusing Nutanix.LifSDK.Api;\nusing\ \ Nutanix.LifSDK.Model.Lifecycle.V4.Common;\nusing Nutanix.LifSDK.Model.Lifecycle.V4.Operations;\n\ \nnamespace CsharpSdkSample\n{\n class Program\n {\n static void Main(string[]\ \ args) {\n // Configure the client\n Configuration _config =\ \ new Configuration\n {\n // UserName to connect to the cluster\n\ \ Username = \"username\",\n // Password(SecureString) to\ \ connect to the cluster \n Password = Configuration.CreateSecurePassword(\"\ password\"),\n // IPv4/IPv6 address or FQDN of the cluster\n \ \ Host = \"localhost\",\n // Port used for the connection. \n\ \ Port = 9440,\n // Backoff period in seconds (exponential\ \ backoff: 2, 4, 8... seconds)\n BackOffPeriod = 2,\n // Max\ \ retry attempts while reconnecting on a loss of connection\n MaxRetryAttempts\ \ = 5\n };\n\n ApiClient client = new ApiClient(_config);\n\n\ \ UpgradesApi upgradesApi = new UpgradesApi(client);\n\n UpgradeSpec\ \ upgradeSpec = new UpgradeSpec();\n\n // UpgradeSpec object initializations\ \ here...\n\n boolean dryrun = true;\n\n // Create request object\ \ with parameters\n var request = new PerformUpgradeRequest {\n \ \ Body = upgradeSpec,\n Dryrun = dryrun\n };\n\ \ try {\n UpgradeApiResponse upgradeApiResponse = upgradesApi.PerformUpgrade(request);\n\ \ } catch (ApiException ex) {\n Console.WriteLine(ex.Message);\n\ \ }\n }\n }\n}\n" components: schemas: lifecycle.v4.2.resources.NotificationsSpec: title: LCM upgrade notification. required: - notificationsSpec type: object properties: notificationsSpec: maxItems: 2048 minItems: 0 type: array description: The computed LCM upgrade notifications for the given input. items: $ref: '#/components/schemas/lifecycle.v4.2.common.EntityUpdateSpec' credentials: maxItems: 20 minItems: 0 type: array description: Specification of credentials to be provided by the user to perform LCM operations. items: $ref: '#/components/schemas/lifecycle.v4.2.common.Credential' additionalProperties: false description: LCM upgrade notification generated for a node or cluster based on specified entity/entities and target version(s). lifecycle.v4.2.operations.ComputeNotificationsApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: prism.v4.config.TaskReference oneOf: - $ref: '#/components/schemas/prism.v4.3.config.TaskReference' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/compute-notifications Post operation lifecycle.v4.2.common.EntityUpdateSpec: title: Entity update specification. required: - entityUuid - toVersion type: object properties: entityUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: UUID of the LCM entity. example: 4c88583b-5a24-4748-8dc2-c075a40f676f toVersion: maxLength: 128 minLength: 1 type: string description: Version to upgrade to. example: 5.20.0 additionalProperties: false description: Specification for running an update operation. lifecycle.v4.2.common.Credential: title: Credential. required: - credentialDetail type: object properties: credentialDetail: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.common.CredentialReference description: Reference of pre-created credential in credential-store or raw details of credential oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.common.CredentialReference' - $ref: '#/components/schemas/lifecycle.v4.2.common.VendorManagementCredential' additionalProperties: false description: Details of credential used for performing an LCM operations. lifecycle.v4.2.common.CredentialReference: title: Credential Reference. required: - credentialExtId type: object properties: credentialExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: UUID of the credential. example: 069b4d94-9fc5-4a4e-a57d-e856414ebe06 additionalProperties: false description: Credential Reference from the Credential Store. lifecycle.v4.2.common.VendorManagementCredential: title: Vendor management credential. required: - credentialSpec type: object properties: credentialSpec: required: - $objectType properties: $objectType: type: string example: security.v4.config.IntersightCredential description: Specification of credentials to be provided by the user to perform LCM operations. oneOf: - $ref: '#/components/schemas/security.v4.1.config.IntersightCredential' - $ref: '#/components/schemas/security.v4.1.config.VcenterCredential' additionalProperties: false description: vendor management credentials for inventory operation lifecycle.v4.2.resources.RecommendationSpec: title: LCM update recommendation specification. required: - recommendationSpec type: object properties: recommendationSpec: description: Specification to get upgrade recommendations for specific UUID and target version via LCM Recommendation oneOf: - maxItems: 2 minItems: 0 type: array items: $ref: '#/components/schemas/lifecycle.v4.2.common.EntityType' - maxItems: 2048 minItems: 0 type: array items: $ref: '#/components/schemas/lifecycle.v4.2.resources.TargetEntity' - maxItems: 2048 minItems: 0 type: array items: $ref: '#/components/schemas/lifecycle.v4.2.common.EntityUpdateSpec' - maxItems: 2048 minItems: 0 type: array items: $ref: '#/components/schemas/lifecycle.v4.2.common.EntityDeploySpec' additionalProperties: false description: Specification to get upgrade recommendations for specific UUID and target version via LCM Recommendation lifecycle.v4.2.operations.ComputeRecommendationsApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: prism.v4.config.TaskReference oneOf: - $ref: '#/components/schemas/prism.v4.3.config.TaskReference' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/compute-recommendations Post operation lifecycle.v4.2.common.EntityType: title: LCM entity type. type: string description: Type of an LCM entity. enum: - SOFTWARE - FIRMWARE - $UNKNOWN - $REDACTED x-enumDescriptions: FIRMWARE: LCM entity type firmware. $UNKNOWN: | Unknown value. SOFTWARE: LCM entity type software. $REDACTED: | Redacted value. lifecycle.v4.2.resources.TargetEntity: title: LCM target entity. description: LCM target entity for which recommendations are requested. allOf: - $ref: '#/components/schemas/lifecycle.v4.2.common.EntityBaseModel' - required: - version type: object properties: version: maxLength: 128 minLength: 1 type: string description: The requested update version of an LCM entity. example: "7.0" locationInfo: $ref: '#/components/schemas/lifecycle.v4.2.common.LocationInfo' deviceId: maxLength: 128 minLength: 1 type: string description: Unique identifier of an LCM entity e.g. "HDD serial number". example: "123456" additionalProperties: false lifecycle.v4.2.common.EntityDeploySpec: title: Entity deploy specification. required: - entityIdentifier type: object properties: entityIdentifier: $ref: '#/components/schemas/lifecycle.v4.2.common.EntityBaseModel' additionalProperties: false description: A specification defining the entity being deployed and its version. lifecycle.v4.2.common.EntityBaseModel: title: LCM Entity base model. description: The list of properties that can be expanded on the LCM entity. allOf: - $ref: '#/components/schemas/common.v1.0.response.ExternalizableAbstractModel' - type: object properties: entityClass: maxLength: 256 minLength: 1 type: string description: LCM entity class. example: Core Cluster entityModel: maxLength: 256 minLength: 1 type: string description: LCM entity model. example: AOS entityType: $ref: '#/components/schemas/lifecycle.v4.2.common.EntityType' entityVersion: maxLength: 128 minLength: 1 type: string description: Current version of an LCM entity. example: 5.20.0 hardwareFamily: maxLength: 256 minLength: 1 type: string description: A hardware family for a LCM entity. example: dell_gen_12 additionalProperties: false lifecycle.v4.2.common.LocationInfo: title: Details about the location of an entity. type: object properties: uuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Location UUID of the resource. readOnly: true example: 2aef40e2-1e0e-455f-9390-2d8b06055e41 locationType: $ref: '#/components/schemas/lifecycle.v4.2.common.LocationType' locationName: maxLength: 256 minLength: 1 type: string description: Name of the location. example: node-1 additionalProperties: false description: Location info corresponds to a tuple of location type (either node/cluster) and ExtID lifecycle.v4.2.common.LocationType: title: Location type of an entity represented in LCM. type: string description: Scope of entity represented in LCM. This could be either Node or cluster type. enum: - NODE - CLUSTER - PC - $UNKNOWN - $REDACTED x-enumDescriptions: PC: Entity for which the scope is Prism Central wide. NODE: Entity that belongs to a node in the cluster. CLUSTER: Entity for which the scope is cluster wide. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.common.DeploySpec: title: Specification for deployment of entities. required: - entityDeploySpecs type: object properties: entityDeploySpecs: maxItems: 2048 minItems: 0 type: array description: List of deploy specifications for use in the recommendations API. items: $ref: '#/components/schemas/lifecycle.v4.2.common.EntityDeploySpec' additionalProperties: false description: Specification for deployment of entities. lifecycle.v4.2.operations.InventorySpec: title: Inventory specification. type: object properties: credentials: maxItems: 4 minItems: 0 type: array description: Specification of credentials to be provided by the user to perform LCM operations. items: $ref: '#/components/schemas/lifecycle.v4.2.common.Credential' additionalProperties: false description: Inventory specification for the LCM inventory operation. lifecycle.v4.2.operations.InventoryApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: prism.v4.config.TaskReference oneOf: - $ref: '#/components/schemas/prism.v4.3.config.TaskReference' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/inventory Post operation lifecycle.v4.2.common.PrechecksSpec: title: Precheck specification. required: - entityUpdateSpecs type: object properties: managementServer: $ref: '#/components/schemas/lifecycle.v4.2.common.ManagementServer' entityUpdateSpecs: maxItems: 2048 minItems: 0 type: array description: List of entity update objects for getting recommendations. items: $ref: '#/components/schemas/lifecycle.v4.2.common.EntityUpdateSpec' skippedPrecheckFlags: maxItems: 20 minItems: 0 type: array description: List of prechecks to skip. The allowed value is 'powerOffUvms' that skips the pinned VM prechecks. items: $ref: '#/components/schemas/lifecycle.v4.2.common.SystemAutoMgmtFlag' credentials: maxItems: 4 minItems: 0 type: array items: $ref: '#/components/schemas/lifecycle.v4.2.common.Credential' additionalProperties: false description: Specification for running a Precheck operation. lifecycle.v4.2.operations.PrechecksApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: prism.v4.config.TaskReference oneOf: - $ref: '#/components/schemas/prism.v4.3.config.TaskReference' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/prechecks Post operation lifecycle.v4.2.common.ManagementServer: title: Cluster management server configuration. required: - hypervisorType - ip - password - username type: object properties: hypervisorType: $ref: '#/components/schemas/lifecycle.v4.2.common.HypervisorType' ip: pattern: "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$" type: string description: IP address of the management server. example: 142.137.167.21 username: maxLength: 128 minLength: 1 type: string description: Username to login to the management server. example: admin password: maxLength: 128 minLength: 1 type: string description: Password to login to the management server. example: '*******' additionalProperties: false description: Cluster management server configuration used while updating clusters with ESX or Hyper-V. lifecycle.v4.2.common.SystemAutoMgmtFlag: type: string description: System auto-management flag to handle system operation during upgrade. enum: - POWER_OFF_UVMS - MIGRATE_POWERED_OFF_UVMS - $UNKNOWN - $REDACTED x-enumDescriptions: POWER_OFF_UVMS: Power off user virtual machines. MIGRATE_POWERED_OFF_UVMS: Migrate Powered off user virtual machines to other hosts in the cluster while entering maintenance mode during upgrade. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.common.HypervisorType: type: string description: Type of Hypervisor present in the cluster. enum: - ESX - AHV - HYPERV - $UNKNOWN - $REDACTED x-enumDescriptions: HYPERV: Hyper-V Hypervisor. ESX: ESX Hypervisor. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. AHV: Nutanix AHV Hypervisor. lifecycle.v4.2.common.PreloadSpec: title: Preload specification required: - entityUpdateSpecs type: object properties: entityUpdateSpecs: maxItems: 2048 minItems: 0 type: array description: List of entity update objects for getting recommendations. items: $ref: '#/components/schemas/lifecycle.v4.2.common.EntityUpdateSpec' additionalProperties: false description: A specification defining the entity being preloaded and its version. lifecycle.v4.2.operations.PreloadArtifactsApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: prism.v4.config.TaskReference oneOf: - $ref: '#/components/schemas/prism.v4.3.config.TaskReference' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/preload-artifacts Post operation lifecycle.v4.2.common.UpgradeSpec: title: Upgrade specification for an entity/entities. description: Specification for an upgrade operation of an entity to a particular target version. allOf: - $ref: '#/components/schemas/lifecycle.v4.2.common.PrechecksSpec' - type: object properties: autoHandleFlags: maxItems: 20 minItems: 0 type: array description: "List of automated system operations to perform, to avoid\ \ precheck failure and let the system restore state after an update\ \ is complete. The allowed flag is: - 'powerOffUvms': This allows the\ \ system to automatically power off user VMs which cannot be migrated\ \ to other hosts and power them on when the update is done. This option\ \ can avoid pinned VM precheck failure on the host which needs to enter\ \ maintenance mode during the update and allow the update to go through." items: $ref: '#/components/schemas/lifecycle.v4.2.common.SystemAutoMgmtFlag' maxWaitTimeInSecs: maximum: 86400 minimum: 60 type: integer description: Number of seconds LCM waits for the VMs to come up after exiting host maintenance mode. format: int32 example: 96 additionalProperties: false lifecycle.v4.2.operations.UpgradeApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: prism.v4.config.TaskReference oneOf: - $ref: '#/components/schemas/prism.v4.3.config.TaskReference' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/operations/$actions/upgrade Post operation lifecycle.v4.2.resources.GetBundleByIdApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.resources.Bundle oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.resources.Bundle' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/bundles/{extId}\ \ Get operation" lifecycle.v4.2.resources.DeleteBundleByIdApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: prism.v4.config.TaskReference oneOf: - $ref: '#/components/schemas/prism.v4.3.config.TaskReference' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/bundles/{extId}\ \ Delete operation" lifecycle.v4.2.resources.Bundle: title: LCM Bundle description: Details of the LCM bundle allOf: - $ref: '#/components/schemas/common.v1.0.response.ExternalizableAbstractModel' - required: - name - vendor type: object properties: name: maxLength: 128 minLength: 1 type: string description: Name of the LCM bundle example: lcm_nos_6.10.tar.gz sizeBytes: type: integer description: Size of the LCM bundle format: int64 example: 39 type: $ref: '#/components/schemas/lifecycle.v4.2.resources.BundleType' vendor: $ref: '#/components/schemas/lifecycle.v4.2.resources.BundleVendor' images: maxItems: 100 minItems: 0 type: array description: List of LCM images items: $ref: '#/components/schemas/lifecycle.v4.2.resources.Image' clusterExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Cluster uuid on which the resource is present or operation is being performed. example: 1930ba4c-ce4d-4fb4-850a-d98d9786c447 checksum: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.common.LcmSha256Sum description: SHA256 sum. oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.common.LcmSha256Sum' - $ref: '#/components/schemas/lifecycle.v4.2.common.LcmMd5Sum' additionalProperties: false lifecycle.v4.2.resources.BundleType: title: Bundle type type: string description: Type of LCM bundle being uploaded enum: - SOFTWARE - FIRMWARE - PRODUCT_META - FRAMEWORK - $UNKNOWN - $REDACTED x-enumDescriptions: PRODUCT_META: Product meta compatibility bundle FIRMWARE: LCM entity type firmware. FRAMEWORK: LCM Framework bundle $UNKNOWN: | Unknown value. SOFTWARE: LCM entity type software. $REDACTED: | Redacted value. lifecycle.v4.2.resources.BundleVendor: title: Bundle vendor type: string description: Owner or vendor of the Bundle enum: - NUTANIX - THIRD_PARTY - $UNKNOWN - $REDACTED x-enumDescriptions: NUTANIX: Nutanix created Bundle $UNKNOWN: | Unknown value. THIRD_PARTY: Third Party created Bundle $REDACTED: | Redacted value. lifecycle.v4.2.resources.Image: title: LCM image. description: LCM image (List of LCM image files). allOf: - $ref: '#/components/schemas/lifecycle.v4.2.common.EntityBaseModel' - required: - specVersion type: object properties: releaseNotes: maxLength: 1024 type: string description: Release notes for the LCM image. example: This is a release note specVersion: maxLength: 128 minLength: 1 type: string description: Version specification for image metadata JSON. writeOnly: true example: "1.0" isQualified: type: boolean description: Denotes if the thirdparty version is qualified. writeOnly: true default: false status: $ref: '#/components/schemas/lifecycle.v4.2.common.AvailableVersionStatus' files: maxItems: 100 minItems: 0 type: array description: List of files in the image. readOnly: true items: $ref: '#/components/schemas/lifecycle.v4.2.resources.ImageFile' clusterExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Cluster uuid on which the resource is present or operation is being performed. readOnly: true example: eabdea97-5517-4634-9e5c-fac19e991da8 additionalProperties: false lifecycle.v4.2.common.LcmSha256Sum: title: SHA256 sum required: - hexDigest type: object properties: hexDigest: pattern: "^([a-fA-F0-9]{64})$" type: string description: Hex digest of the SHA256 sum. example: bE4cC6D4EEA7bbFaEF37aaaafEEADd6CeE0FAbBf0ae5eCdCE2d1B3eC5D377CfF additionalProperties: false description: Sha256sum of the bundle. lifecycle.v4.2.common.LcmMd5Sum: title: MD5 sum required: - hexDigest type: object properties: hexDigest: pattern: "^[a-f0-9]{32}$" type: string description: Hex digest of the MD5 sum. example: 08e5fb5cfce8c7ae8fa3ac9fbfc463f2 additionalProperties: false description: MD5Sum of the bundle. lifecycle.v4.2.common.AvailableVersionStatus: title: Available version status. type: string description: Available version types. enum: - RECOMMENDED - CRITICAL - LATEST - DEPRECATED - EMERGENCY - AVAILABLE - LTS - STS - ESTS - $UNKNOWN - $REDACTED x-enumDescriptions: AVAILABLE: Available version. EMERGENCY: Emergency version. RECOMMENDED: Recommended version. STS: Short-term supported version. LTS: Long-term supported version. LATEST: Latest version. $UNKNOWN: | Unknown value. DEPRECATED: Deprecated version. ESTS: Extended short-term supported version CRITICAL: Critical version. $REDACTED: | Redacted value. lifecycle.v4.2.resources.ImageFile: title: LCM image file. required: - checksum - checksumType - sizeBytes type: object properties: fileLocationId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Image file global catalog item UUID. readOnly: true example: f19a8fca-e02f-4799-98e3-f1335ba46207 name: maxLength: 128 minLength: 1 type: string description: LCM image file name. example: image1.iso sizeBytes: type: integer description: LCM image file size. format: int64 example: 5 filePath: maxLength: 256 minLength: 1 type: string description: File path for the LCM image. readOnly: true example: string checksumType: $ref: '#/components/schemas/lifecycle.v4.2.common.CheckSumType' checksum: maxLength: 128 minLength: 1 type: string description: LCM image checksum. example: 3a7da7ddb974a379c5f668fdg300a49b additionalProperties: false description: Description of LCM image file. lifecycle.v4.2.common.CheckSumType: title: Checksum type for a third party image. type: string description: Checksum type for a third party image. enum: - SHASUM - HEX_MD5 - $UNKNOWN - $REDACTED x-enumDescriptions: SHASUM: SHA256 sum. HEX_MD5: Hex md5 sum $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.resources.ListBundlesApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: oneOf: - type: array items: $ref: '#/components/schemas/lifecycle.v4.2.resources.Bundle' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/bundles Get operation lifecycle.v4.2.resources.CreateBundleApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: prism.v4.config.TaskReference oneOf: - $ref: '#/components/schemas/prism.v4.3.config.TaskReference' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/bundles Post operation lifecycle.v4.2.resources.GetConfigApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.resources.Config oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.resources.Config' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/config Get operation lifecycle.v4.2.resources.Config: title: LCM configuration. description: LCM configuration on the cluster. allOf: - $ref: '#/components/schemas/common.v1.0.response.ExternalizableAbstractModel' - type: object properties: url: pattern: "^((http[s]?|nfs):\\/)?\\/?([^:\\/\\s]*)((\\/\\w+)*(:[0-9]+)*?\\\ /)([\\w\\-\\.]+[^#?\\s]+)(.*)?(#[\\w\\-]+)?$" type: string description: URL of the LCM repository. example: string isAutoInventoryEnabled: type: boolean description: Indicates if the auto inventory operation is enabled. The default value is set to False. default: false autoInventorySchedule: pattern: "^([01]\\d|2[0-3]):([0-5]\\d)$" type: string description: The scheduled time in "%H:%M" 24-hour format of the next inventory execution. Used when auto_inventory_enabled is set to True. The default schedule time is 03:00(AM). example: 13:45 version: maxLength: 128 minLength: 1 type: string description: LCM version installed on the cluster. readOnly: true example: 3.1.45678 displayVersion: maxLength: 128 minLength: 1 type: string description: User friendly display version of LCM installed on the cluster. readOnly: true example: "3.1" connectivityType: $ref: '#/components/schemas/lifecycle.v4.2.resources.ConnectivityType' isHttpsEnabled: type: boolean description: Indicates if the LCM URL has HTTPS enabled. The default value is True. default: false supportedSoftwareEntities: maxItems: 100 minItems: 0 type: array description: List of entities for which One-Click upgrades are supported. readOnly: true items: type: string example: string deprecatedSoftwareEntities: maxItems: 100 minItems: 0 type: array description: List of entities for which One-Click upgrades are not available. readOnly: true items: type: string example: string isFrameworkBundleUploaded: type: boolean description: Indicates if the bundle is uploaded or not. readOnly: true default: false hasModuleAutoUpgradeEnabled: type: boolean description: Indicates if LCM is enabled to auto-upgrade products. The default value is False. default: false additionalProperties: false lifecycle.v4.2.resources.UpdateConfigApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: prism.v4.config.TaskReference oneOf: - $ref: '#/components/schemas/prism.v4.3.config.TaskReference' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/config Put operation lifecycle.v4.2.resources.ConnectivityType: title: "LCM framework's mode of operation on the cluster. LCM operates in three\ \ modes, connected-site & darksite web server & darksite direct upload." type: string description: This field indicates whether LCM framework on the cluster is running in connected-site mode or darksite mode. enum: - CONNECTED_SITE - DARKSITE_WEB_SERVER - DARKSITE_DIRECT_UPLOAD - $UNKNOWN - $REDACTED x-enumDescriptions: CONNECTED_SITE: "In connected-site, LCM on the cluster has internet connectivity\ \ to reach configured portal for downloading LCM modules/bundles etc." DARKSITE_DIRECT_UPLOAD: LCM on the cluster does not have external connectivity and will have a facility to upload darksite bundles through LCM. DARKSITE_WEB_SERVER: LCM on the cluster does not have external connectivity and will have a connection to darksite webserver maintained by the customer. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.resources.GetEntityByIdApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.resources.Entity oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.resources.Entity' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/entities/{extId}\ \ Get operation" lifecycle.v4.2.resources.Entity: title: LCM entity. description: Details of an LCM entity. allOf: - $ref: '#/components/schemas/lifecycle.v4.2.common.EntityBaseModel' - type: object properties: entityDescription: maxLength: 256 minLength: 1 type: string description: Description of an LCM entity. readOnly: true example: Entity Description locationInfo: $ref: '#/components/schemas/lifecycle.v4.2.common.LocationInfo' targetVersion: maxLength: 128 minLength: 1 type: string description: The requested update version of an LCM entity. readOnly: true example: "7.0" lastUpdatedTime: type: string description: UTC date and time in RFC-3339 format when the task was last updated. format: date-time readOnly: true example: 2009-09-23T14:30:00-07:00 deviceId: maxLength: 128 minLength: 1 type: string description: Unique identifier of an LCM entity e.g. "HDD serial number". readOnly: true example: "123456" groupUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: UUID of the group that this LCM entity is part of. readOnly: true example: e75eef01-892c-4c2a-983e-559b73ca8048 entityDetails: maxItems: 100 minItems: 0 type: array description: "Detailed information for the LCM entity. For example, firmware\ \ entities contain additional information about NIC and so on." readOnly: true items: $ref: '#/components/schemas/common.v1.0.config.KVPair' childEntities: maxItems: 100 minItems: 0 type: array description: Component information for the payload based entity. readOnly: true items: maxLength: 1024 minLength: 1 type: string example: string availableVersions: maxItems: 100 minItems: 0 type: array description: List of available versions for an LCM entity to update. readOnly: true items: $ref: '#/components/schemas/lifecycle.v4.2.resources.AvailableVersion' subEntities: maxItems: 100 minItems: 0 type: array description: A list of sub-entities applicable to the entity. items: $ref: '#/components/schemas/lifecycle.v4.2.common.EntityBaseModel' clusterExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Cluster uuid on which the resource is present or operation is being performed. example: e965bc99-0c6f-40f4-a08b-00ae911a9a79 hardwareVendor: maxLength: 256 minLength: 1 type: string description: Hardware vendor information. example: Dell additionalProperties: false lifecycle.v4.2.resources.AvailableVersion: title: LCM available version. type: object properties: version: maxLength: 128 minLength: 1 type: string description: LCM framework version present in the LCM URL. example: "7.0" status: $ref: '#/components/schemas/lifecycle.v4.2.common.AvailableVersionStatus' isEnabled: type: boolean description: Indicates if the available update is enabled. default: true availableVersionUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Available version UUID. example: 23bfc257-a05c-4e83-83a1-5c83555ae3ad order: maximum: 10000 minimum: 1 type: integer description: Order of this available version (1 being the lowest and 6 being the highest) when multiple versions are present with different status. format: int64 example: 50 disablementReason: maxLength: 512 minLength: 1 type: string description: Reason for disabling the available version. example: This version is disabled because cluster does not meet the requirements releaseNotes: maxLength: 1024 minLength: 1 type: string description: Release notes corresponding to the update. example: This is a release note releaseDate: type: string description: Release date for the entities that need this information. format: date example: 2009-09-23 customMessage: maxLength: 512 minLength: 1 type: string description: Update custom messages other than release notes to the user about this available version. example: This version is custom version childEntities: maxItems: 100 minItems: 0 type: array description: Component information for the payload based entity. readOnly: true items: maxLength: 1024 minLength: 1 type: string example: string groupUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: UUID of the group that this LCM entity is part of. example: c3756bf8-77e2-47dc-b8dc-3ae82257b416 dependencies: maxItems: 100 minItems: 0 type: array description: List of dependencies for the available version. items: $ref: '#/components/schemas/lifecycle.v4.2.resources.DependentEntity' isImagePresent: type: boolean description: Indicates if the image is already present in the cluster to perform upgrade default: true additionalProperties: false description: LCM framework version present in the LCM URL. lifecycle.v4.2.resources.DependentEntity: title: LCM available version dependency. description: Dependency of an LCM entity available version. allOf: - $ref: '#/components/schemas/lifecycle.v4.2.common.EntityBaseModel' - type: object properties: dependentVersions: maxItems: 100 minItems: 0 type: array description: Information of the dependent entity versions for this available entity. readOnly: true items: $ref: '#/components/schemas/common.v1.0.config.KVPair' additionalProperties: false lifecycle.v4.2.resources.ListEntitiesApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: oneOf: - type: array items: $ref: '#/components/schemas/lifecycle.v4.2.resources.Entity' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/entities Get operation lifecycle.v4.2.resources.ExportInventorySpec: title: Specification for exporting inventory. required: - fileFormat type: object properties: fileFormat: $ref: '#/components/schemas/lifecycle.v4.2.common.FileFormat' additionalProperties: false description: Specification for exporting inventory. lifecycle.v4.2.resources.ExportInventoryApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: prism.v4.config.TaskReference oneOf: - $ref: '#/components/schemas/prism.v4.3.config.TaskReference' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/entities/$actions/export Post operation lifecycle.v4.2.common.FileFormat: type: string description: File format of the exported data. enum: - CSV - $UNKNOWN - $REDACTED x-enumDescriptions: CSV: Comma Separated Values (CSV) file format. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.resources.ExportHistorySpec: title: Specification for exporting histories. required: - fileFormat type: object properties: fileFormat: $ref: '#/components/schemas/lifecycle.v4.2.common.FileFormat' additionalProperties: false description: Specification for exporting histories. lifecycle.v4.2.resources.ExportHistoriesApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: prism.v4.config.TaskReference oneOf: - $ref: '#/components/schemas/prism.v4.3.config.TaskReference' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-histories/$actions/export Post operation lifecycle.v4.2.resources.GetLcmHistoryByIdApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.resources.LcmHistory oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.resources.LcmHistory' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-histories/{extId}\ \ Get operation" lifecycle.v4.2.resources.LcmHistory: title: History of LCM operations. description: Details about the history of LCM operations. allOf: - $ref: '#/components/schemas/common.v1.0.response.ExternalizableAbstractModel' - type: object properties: operationType: $ref: '#/components/schemas/lifecycle.v4.2.common.OperationType' startTime: type: string description: Start time of the operation. format: date-time example: 2009-09-23T14:30:00-07:00 endTime: type: string description: End time of the operation. format: date-time example: 2009-09-23T14:30:00-07:00 operationStatus: $ref: '#/components/schemas/lifecycle.v4.2.common.OperationStatus' operationInfo: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.resources.UploadInfo description: Detailed information about the operation performed. oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.resources.UploadInfo' - $ref: '#/components/schemas/lifecycle.v4.2.resources.UpgradeInfo' frameworkVersion: maxLength: 128 minLength: 1 type: string description: Version of LCM framework when operation was performed. example: string clusterName: maxLength: 512 minLength: 1 type: string description: Name of the cluster. example: string userInfo: $ref: '#/components/schemas/lifecycle.v4.2.resources.UserInfo' clusterExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Cluster uuid on which the resource is present or operation is being performed. example: f9d6871b-d633-4051-a1a8-d45a9603d8e9 additionalProperties: false lifecycle.v4.2.common.OperationType: title: LCM operation type. type: string description: Type of the operation tracked by the task. enum: - INVENTORY - PRECHECKS - UPGRADE - NONE - UPLOAD - $UNKNOWN - $REDACTED x-enumDescriptions: PRECHECKS: Perform LCM prechecks for the intended update operation. INVENTORY: Perform an LCM inventory operation. UPLOAD: Indicates that LCM is running Direct Upload operation. UPGRADE: Perform upgrade operation to a specific target version for discovered LCM entity/entities. NONE: Indicates that no operation is currently ongoing. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.common.OperationStatus: title: Operation status. type: string description: Current status of the operation. enum: - SUCCEEDED - FAILED - RUNNING - SUSPENDED - CANCELED - CANCELING - QUEUED - $UNKNOWN - $REDACTED x-enumDescriptions: FAILED: Indicates that the operation has failed. RUNNING: Indicates that the operation is currently running. QUEUED: Indicates that the operation is currently queued. SUSPENDED: Indicates that the operation is currently suspended. SUCCEEDED: Indicates that the operation has succeeded. CANCELED: Indicates that the operation has been canceled. CANCELING: Indicates that the operation is currently being canceled. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.resources.UploadInfo: title: Bundle upload details. type: object properties: name: maxLength: 128 minLength: 1 type: string description: LCM subrepo name. example: string type: $ref: '#/components/schemas/lifecycle.v4.2.resources.BundleType' checksum: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.common.LcmSha256Sum description: SHA256 sum. oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.common.LcmSha256Sum' - $ref: '#/components/schemas/lifecycle.v4.2.common.LcmMd5Sum' additionalProperties: false description: Details of the bundle upload relevant for History. lifecycle.v4.2.resources.UpgradeInfo: title: Upgrade operation details. type: object properties: componentDetails: maxItems: 100 minItems: 0 type: array description: Details of the component that was upgraded. items: $ref: '#/components/schemas/lifecycle.v4.2.resources.ComponentDetails' additionalProperties: false description: Details of the upgrade operation relevant for History. lifecycle.v4.2.resources.UserInfo: title: User information. type: object properties: userName: maxLength: 128 minLength: 1 type: string description: Name of the user who performed the operation. example: string userUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: User ID of the user who performed the operation. example: 72316b7c-bada-4c1c-b1cd-9ebbc158e877 additionalProperties: false description: Details of the user who performed the operation. lifecycle.v4.2.resources.ComponentDetails: title: Component upgrade details. description: Details of the component that was upgraded. allOf: - $ref: '#/components/schemas/lifecycle.v4.2.common.EntityBaseModel' - type: object properties: deviceId: maxLength: 128 minLength: 1 type: string description: Unique identifier of an LCM entity e.g. "HDD serial number". example: "123456" groupUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: UUID of the group that this LCM entity is part of. readOnly: true example: 16cbfc62-50da-49cb-a249-5398e05679b5 locationInfo: $ref: '#/components/schemas/lifecycle.v4.2.common.LocationInfo' upgradedVersion: maxLength: 128 minLength: 1 type: string description: Version to which the component was upgraded. example: "7.0" hardwareVendor: maxLength: 256 minLength: 1 type: string description: Hardware vendor information. example: Dell upgradeStatus: $ref: '#/components/schemas/lifecycle.v4.2.common.OperationStatus' additionalProperties: false lifecycle.v4.2.resources.ListLcmHistoriesApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: oneOf: - type: array items: $ref: '#/components/schemas/lifecycle.v4.2.resources.LcmHistory' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-histories Get operation lifecycle.v4.2.resources.ListImagesApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: oneOf: - type: array items: $ref: '#/components/schemas/lifecycle.v4.2.resources.Image' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/images Get operation lifecycle.v4.2.resources.GetStatusApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.resources.StatusInfo oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.resources.StatusInfo' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/status Get operation lifecycle.v4.2.resources.StatusInfo: title: LCM framework status. description: Detailed information about the current LCM framework status. allOf: - $ref: '#/components/schemas/common.v1.0.response.ExternalizableAbstractModel' - type: object properties: frameworkVersion: $ref: '#/components/schemas/lifecycle.v4.2.resources.FrameworkVersionInfo' inProgressOperation: $ref: '#/components/schemas/lifecycle.v4.2.resources.InProgressOpInfo' isCancelIntentSet: type: boolean description: Boolean that indicates if cancel intent for LCM update is set or not. default: false uploadTaskUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Upload task UUID. example: 4699c4c0-b187-448d-afd6-a5a3f8993354 isUrlAccessible: type: boolean description: Boolean that indicates if LCM url is accessible or not default: true isRestrictedMode: type: boolean description: Boolean that indicates if LCM is running in restricted mode or not default: false connectivityType: $ref: '#/components/schemas/lifecycle.v4.2.resources.ConnectivityType' restrictedModeType: $ref: '#/components/schemas/lifecycle.v4.2.resources.RestrictedModeType' additionalProperties: false lifecycle.v4.2.resources.FrameworkVersionInfo: title: LCM version information. type: object properties: currentVersion: maxLength: 128 minLength: 1 type: string description: Current LCM Version. example: 3.1.45678 availableVersion: maxLength: 128 minLength: 1 type: string description: LCM framework version present in the LCM URL. example: 3.1.1.45678 isUpdateNeeded: type: boolean description: Boolean that indicates if LCM framework update is needed. default: false additionalProperties: false description: LCM framework version information. lifecycle.v4.2.resources.InProgressOpInfo: title: LCM ongoing operation information. type: object properties: operationId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: "Root task UUID of the operation, if it is in running state." example: f6529fa1-fbea-4dd0-9cb7-fa76079445e9 operationType: $ref: '#/components/schemas/lifecycle.v4.2.common.OperationType' additionalProperties: false description: Operation type and UUID of an ongoing operation in LCM. lifecycle.v4.2.resources.RestrictedModeType: title: LCM Restricted Mode type type: string description: Indicates the type of Restricted Mode enum: - NON_UNIFORM_AHV - EMERGENCY_UPDATES - EOL_AOS - $UNKNOWN - $REDACTED x-enumDescriptions: $UNKNOWN: | Unknown value. NON_UNIFORM_AHV: Cluster has non uniform AHV versions EMERGENCY_UPDATES: Cluster has emergency update available $REDACTED: | Redacted value. EOL_AOS: Cluster is running on end of life AOS/PC version lifecycle.v4.2.resources.GetNotificationsByIdApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.resources.Notification oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.resources.Notification' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/notifications/{extId}\ \ Get operation" lifecycle.v4.2.resources.Notification: title: The computed LCM upgrade notifications. description: The computed LCM upgrade notifications for the given input. allOf: - $ref: '#/components/schemas/common.v1.0.response.ExternalizableAbstractModel' - type: object properties: notifications: maxItems: 2048 minItems: 0 type: array items: $ref: '#/components/schemas/lifecycle.v4.2.resources.NotificationItem' clusterExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Cluster uuid on which the resource is present or operation is being performed. example: d5e01ed8-8098-4f0a-9e35-a6817824e10b additionalProperties: false lifecycle.v4.2.resources.NotificationItem: title: LCM upgrade notification. description: LCM upgrade notification generated for a node or cluster based on specified entity/entities and target version(s). allOf: - $ref: '#/components/schemas/lifecycle.v4.2.common.EntityBaseModel' - type: object properties: notificationType: $ref: '#/components/schemas/lifecycle.v4.2.common.NotificationType' details: maxItems: 100 minItems: 0 type: array description: List of upgrade notifications for this entity. items: $ref: '#/components/schemas/lifecycle.v4.2.resources.NotificationDetail' toVersion: maxLength: 128 minLength: 1 type: string description: Version to upgrade to. example: "7.0" locationInfo: $ref: '#/components/schemas/lifecycle.v4.2.common.LocationInfo' hypervisorType: $ref: '#/components/schemas/lifecycle.v4.2.common.HypervisorType' additionalProperties: false lifecycle.v4.2.common.NotificationType: title: Upgrade Notifications. type: string description: "Type of LCM upgrade notification generated. It can be any one\ \ of the values like Entity, Location, Generic or Workflow. The only types\ \ supported today are Entity and Location." enum: - ENTITY - LOCATION - $UNKNOWN - $REDACTED x-enumDescriptions: LOCATION: Indicates that the upgrade notification is for type location. ENTITY: Indicates that the upgrade notification is for type entity indentified in LCM ecosystem. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.resources.NotificationDetail: title: LCM upgrade notification details. type: object properties: severityLevel: $ref: '#/components/schemas/lifecycle.v4.2.resources.SeverityLevel' message: maxLength: 512 minLength: 1 type: string description: "A message with notification details. The description of the\ \ most disruptive action that will occur on the node or the cluster. INFO,\ \ WARNING or NOTICE based message for an entity." example: This is a notification message additionalProperties: false description: Detailed LCM upgrade notification information for this entity. lifecycle.v4.2.resources.SeverityLevel: title: Notification severity. type: string description: Severity level of LCM notification. enum: - WARNING - NOTICE - INFO - $UNKNOWN - $REDACTED x-enumDescriptions: NOTICE: Severity level notice. INFO: Severity level information. $UNKNOWN: | Unknown value. WARNING: Severity level warning. $REDACTED: | Redacted value. lifecycle.v4.2.resources.GetRecommendationByIdApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.resources.RecommendationResult oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.resources.RecommendationResult' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/recommendations/{extId}\ \ Get operation" lifecycle.v4.2.resources.RecommendationResult: title: LCM update recommendations. description: Upgrade recommendations for LCM entity/entities. allOf: - $ref: '#/components/schemas/common.v1.0.response.ExternalizableAbstractModel' - type: object properties: entityUpdateSpecs: maxItems: 2048 minItems: 0 type: array description: List of entity update objects for getting recommendations. items: $ref: '#/components/schemas/lifecycle.v4.2.common.EntityUpdateSpec' skippedEntities: maxItems: 2048 minItems: 0 type: array description: List of skipped LCM entities from the input recommendations specification. items: $ref: '#/components/schemas/lifecycle.v4.2.resources.UpdatedTargetEntityResult' modifiableEntities: maxItems: 2048 minItems: 0 type: array description: List of modified LCM entities from the input recommendations specification. items: $ref: '#/components/schemas/lifecycle.v4.2.resources.UpdatedTargetEntityResult' addableEntities: maxItems: 2048 minItems: 0 type: array description: List of added LCM entities to the input recommendations specification. items: $ref: '#/components/schemas/lifecycle.v4.2.resources.UpdatedTargetEntityResult' deployableVersions: maxItems: 2048 minItems: 0 type: array description: List of deployable entities and their dependencies. items: $ref: '#/components/schemas/lifecycle.v4.2.resources.DeployableVersion' clusterExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Cluster uuid on which the resource is present or operation is being performed. example: d7ee29c4-523a-4416-a6d5-3bab16cb4008 additionalProperties: false lifecycle.v4.2.resources.UpdatedTargetEntityResult: title: Target entity error. required: - message type: object properties: targetEntity: $ref: '#/components/schemas/lifecycle.v4.2.resources.UpdatedTargetEntity' message: maxLength: 512 minLength: 1 type: string description: Error message for the target entity that failed in the input recommendations specification. example: Entity has been updated based on compatibility additionalProperties: false description: LCM error for target entity lifecycle.v4.2.resources.DeployableVersion: title: Deployable versions in recommendations. description: "List of deployable versions based on entity types, versions and\ \ its dependencies." allOf: - $ref: '#/components/schemas/lifecycle.v4.2.common.EntityBaseModel' - type: object properties: targetVersion: maxLength: 128 minLength: 1 type: string description: Entity target version. example: "7.0" updateDependencies: maxItems: 2048 minItems: 0 type: array items: $ref: '#/components/schemas/lifecycle.v4.2.common.EntityUpdateSpec' additionalProperties: false lifecycle.v4.2.resources.UpdatedTargetEntity: title: Updated LCM target entity. description: Updated LCM target entity in recommendation result. allOf: - $ref: '#/components/schemas/lifecycle.v4.2.common.EntityBaseModel' - type: object properties: locationInfo: $ref: '#/components/schemas/lifecycle.v4.2.common.LocationInfo' additionalProperties: false lifecycle.v4.2.resources.ListLcmSummariesApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: oneOf: - type: array items: $ref: '#/components/schemas/lifecycle.v4.2.resources.LcmSummary' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-summaries Get operation lifecycle.v4.2.resources.LcmSummary: title: Summary of LCM state on a cluster description: Summary of LCM state on a cluster. allOf: - $ref: '#/components/schemas/common.v1.0.response.ExternalizableAbstractModel' - type: object properties: currentVersion: maxLength: 128 minLength: 1 type: string description: Current LCM Version. example: 3.0.45678 availableVersion: maxLength: 128 minLength: 1 type: string description: LCM framework version present in the LCM URL. example: 3.1.45568 hardwareVendor: maxLength: 256 minLength: 1 type: string description: Hardware vendor information. example: Dell capabilities: maxItems: 7 minItems: 0 type: array description: List of capabilities of cluster. These capabilities are used to determine the features supported by LCM in the cluster. items: $ref: '#/components/schemas/lifecycle.v4.2.resources.Capability' inProgressOperation: $ref: '#/components/schemas/lifecycle.v4.2.common.InProgressOpDetails' clusterExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Cluster uuid on which the resource is present or operation is being performed. example: 73716ec1-2be8-4f41-a153-79a8d6a33a46 isUrlAccessible: type: boolean description: Boolean that indicates if LCM url is accessible or not default: true restrictedModeType: $ref: '#/components/schemas/lifecycle.v4.2.resources.RestrictedModeType' compatibilityBundleVersion: maxLength: 128 minLength: 1 type: string description: Installed Nutanix Compatibility version on the cluster. example: pm.2025.52201 connectivityType: $ref: '#/components/schemas/lifecycle.v4.2.resources.ConnectivityType' clusterType: $ref: '#/components/schemas/lifecycle.v4.2.common.ClusterType' additionalProperties: false lifecycle.v4.2.resources.Capability: title: Cluster capability type: string description: Details of a cluster capability. enum: - MCL_INVENTORY - MCL_UPGRADE - $UNKNOWN - $REDACTED x-enumDescriptions: MCL_UPGRADE: Capability that specifies whether the cluster supports MCL Upgrades. MCL_INVENTORY: Capability that specifies whether the cluster supports MCL inventory. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.common.InProgressOpDetails: title: In progress LCM operation details. type: object properties: taskExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Task ext id of the in progress LCM operation. example: dfe9afe8-368f-43e6-be5b-c2287685e6a6 operationType: $ref: '#/components/schemas/lifecycle.v4.2.common.OperationType' additionalProperties: false description: Details of the in progress LCM operation. lifecycle.v4.2.common.OperationCredential: title: LCM operation credential. type: object properties: credentialExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: UUID of the credential. example: 684d542d-6b9a-4968-9dd9-275c9e5a3f44 vendorManagementName: $ref: '#/components/schemas/lifecycle.v4.2.common.VendorManagementName' additionalProperties: false description: Details about credential required for running list of operations on a cluster. lifecycle.v4.2.common.ClusterType: title: The type of cluster that LCM is running on. type: string description: This field indicates LCM is running on a Prism Element or Prism Central cluster. enum: - PRISM_CENTRAL - AOS - $UNKNOWN - $REDACTED x-enumDescriptions: PRISM_CENTRAL: Prism Central Cluster. AOS: Prism Element Cluster. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.common.VendorManagementName: title: Name of the vendor management software. type: string description: Name of the vendor management software that manages fleet of servers. This could be one of Intersight or Vcenter or UCS. enum: - UCS - ISM - VCENTER - $UNKNOWN - $REDACTED x-enumDescriptions: ISM: Thirdparty vendor - Cisco Intersight management software. UCS: Thirdparty vendor - Cisco UCS server management software. VCENTER: Thirdparty vendor - ESX Vcenter Server management software. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.resources.GetLcmSummaryByIdApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.resources.LcmSummary oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.resources.LcmSummary' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/lcm-summaries/{extId}\ \ Get operation" lifecycle.v4.2.resources.GetUpgradeSelectionApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.resources.UpgradeSelection oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.resources.UpgradeSelection' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections/{extId}\ \ Get operation" lifecycle.v4.2.resources.DeleteUpgradeSelectionApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: prism.v4.config.TaskReference oneOf: - $ref: '#/components/schemas/prism.v4.3.config.TaskReference' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections/{extId}\ \ Delete operation" lifecycle.v4.2.resources.UpgradeSelection: title: LCM Upgrade Selection description: Details of LCM Upgrade Selections allOf: - $ref: '#/components/schemas/common.v1.0.response.ExternalizableAbstractModel' - required: - selectedUpgrades type: object properties: selectedUpgrades: maxItems: 2048 minItems: 0 type: array description: List of upgrades whose selection is made items: $ref: '#/components/schemas/lifecycle.v4.2.common.EntityUpdateSpec' clusterExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Cluster uuid on which the resource is present or operation is being performed. example: 8c7ad7a7-07ef-41aa-86a0-af691b115512 status: $ref: '#/components/schemas/lifecycle.v4.2.resources.UpgradeSelectionStatus' additionalProperties: false lifecycle.v4.2.resources.UpgradeSelectionStatus: title: LCM Upgrade Selection Status type: string description: Indicates the current status of the selected upgrade selections enum: - PENDING_UPLOAD - UPGRADE_READY - STALE_SELECTION - $UNKNOWN - $REDACTED x-enumDescriptions: UPGRADE_READY: All required images have been uploaded and LCM is ready for upgrade STALE_SELECTION: The saved upgrade selection in LCM is stale PENDING_UPLOAD: The selected upgrade is awaiting upload of all the images required $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.resources.ListUpgradeSelectionsApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: oneOf: - type: array items: $ref: '#/components/schemas/lifecycle.v4.2.resources.UpgradeSelection' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections Get operation lifecycle.v4.2.resources.CreateUpgradeSelectionApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: prism.v4.config.TaskReference oneOf: - $ref: '#/components/schemas/prism.v4.3.config.TaskReference' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections Post operation lifecycle.v4.2.resources.ExportUpgradeSelectionApiResponse: type: object properties: metadata: $ref: '#/components/schemas/common.v1.0.response.ApiResponseMetadata' data: required: - $objectType properties: $objectType: type: string example: prism.v4.config.TaskReference oneOf: - $ref: '#/components/schemas/prism.v4.3.config.TaskReference' - $ref: '#/components/schemas/lifecycle.v4.2.error.ErrorResponse' additionalProperties: false description: "REST response for all response codes in API path /lifecycle/v4.2/resources/upgrade-selections/{extId}/$actions/export\ \ Post operation" common.v1.0.response.ExternalizableAbstractModel: description: | A model that represents an object instance that is accessible through an API endpoint. Instances of this type get an extId field that contains the globally unique identifier for that instance. Externally accessible instances are always tenant aware and, therefore, extend the TenantAwareModel allOf: - $ref: '#/components/schemas/common.v1.0.config.TenantAwareModel' - type: object properties: extId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: | A globally unique identifier of an instance that is suitable for external consumption. nullable: true readOnly: true example: 05269c4b-cca9-46b4-b379-a6b418d44da2 links: maxItems: 20 minItems: 0 type: array description: | A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource. readOnly: true items: $ref: '#/components/schemas/common.v1.0.response.ApiLink' additionalProperties: false common.v1.0.config.TenantAwareModel: type: object properties: tenantId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: | A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this ID to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server). readOnly: true example: 8d5a8e60-6fee-4e7d-9c53-c4585f3f77a9 additionalProperties: false description: | A model base class whose instances are bound to a specific tenant. This model adds a tenantId to the base model class that it extends and is automatically set by the server. common.v1.0.response.ApiLink: type: object properties: href: type: string description: | The URL at which the entity described by the link can be accessed. example: string rel: type: string description: | A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of "self" identifies the URL for the object. example: string additionalProperties: false description: | A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource. security.v4.1.config.IntersightCredential: allOf: - $ref: '#/components/schemas/security.v4.1.config.KeyBasedAuthCredential' - title: Intersight connection. required: - deploymentType - url type: object properties: url: pattern: "^((http[s]?|nfs):\\/)?\\/?([^:\\/\\s]*)((\\/\\w+)*(:[0-9]+)*?\\\ /)([\\w\\-\\.]+[^#?\\s]+)(.*)?(#[\\w\\-]+)?$" type: string description: Intersight connection url example: string deploymentType: $ref: '#/components/schemas/security.v4.1.config.IntersightConnectionType' type: type: string description: Pre-defined type of credential. readOnly: true example: string additionalProperties: false description: Intersight connection used for authentication. security.v4.1.config.VcenterCredential: allOf: - $ref: '#/components/schemas/security.v4.1.config.BasicAuthCredential' - title: VCenter Credential. required: - address type: object properties: address: $ref: '#/components/schemas/common.v1.0.config.IPAddressOrFQDN' type: type: string description: Pre-defined type of credential. readOnly: true example: string additionalProperties: false description: A credential used for authentication with VCenter server. security.v4.1.config.KeyBasedAuthCredential: required: - credential type: object properties: credential: $ref: '#/components/schemas/security.v4.1.config.KeyBasedAuth' additionalProperties: false security.v4.1.config.IntersightConnectionType: title: Intersight connection type. type: string description: Type of Intersight connection. enum: - INTERSIGHT_SAAS - INTERSIGHT_VIRTUAL_APPLIANCE - $UNKNOWN - $REDACTED x-enumDescriptions: INTERSIGHT_VIRTUAL_APPLIANCE: Intersight Virtual Appliance connection. INTERSIGHT_SAAS: Intersight SaaS connection. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. security.v4.1.config.KeyBasedAuth: required: - apiKey - secretKey type: object properties: apiKey: maxLength: 1024 minLength: 1 type: string description: Intersight connection API key. writeOnly: true example: string secretKey: maxLength: 2048 minLength: 1 type: string description: Secret key of the Intersight connection. writeOnly: true example: string additionalProperties: false description: Secret fields of a Key based Authencation credential. common.v1.0.config.IPAddressOrFQDN: type: object properties: ipv4: $ref: '#/components/schemas/common.v1.0.config.IPv4Address' ipv6: $ref: '#/components/schemas/common.v1.0.config.IPv6Address' fqdn: $ref: '#/components/schemas/common.v1.0.config.FQDN' additionalProperties: false description: | An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name. common.v1.0.config.BasicAuth: required: - password - username type: object properties: username: maxLength: 256 minLength: 3 type: string description: | Username required for the basic auth scheme. As per [RFC 2617](https://datatracker.ietf.org/doc/html/rfc2617) usernames might be case sensitive. example: test-user password: maxLength: 256 minLength: 3 type: string description: | Password required for the basic auth scheme. format: password example: '*******' additionalProperties: false description: | An authentication scheme that requires the client to present a username and password. The server will service the request only if it can validate the user-ID and password for the protection space of the Request-URI. common.v1.0.config.IPv4Address: required: - value type: object properties: value: pattern: "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$" type: string description: | The IPv4 address of the host. example: 180.178.15.134 prefixLength: maximum: 32 minimum: 0 type: integer description: | The prefix length of the network to which this host IPv4 address belongs. format: int32 default: 32 additionalProperties: false description: | An unique address that identifies a device on the internet or a local network in IPv4 format. common.v1.0.config.IPv6Address: required: - value type: object properties: value: pattern: "^(?:(?:(?:[A-Fa-f0-9]{1,4}:){6}|(?=(?:[A-Fa-f0-9]{0,4}:){0,6}(?:[0-9]{1,3}\\\ .){3}[0-9]{1,3}$)(([0-9a-fA-F]{1,4}:){0,5}|:)((:[0-9a-fA-F]{1,4}){1,5}:|:)|::(?:[A-Fa-f0-9]{1,4}:){5})(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\\\ .){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])|(?:[A-Fa-f0-9]{1,4}:){7}[A-Fa-f0-9]{1,4}|(?=(?:[A-Fa-f0-9]{0,4}:){0,7}[A-Fa-f0-9]{0,4}$)(([0-9a-fA-F]{1,4}:){1,7}|:)((:[0-9a-fA-F]{1,4}){1,7}|:)|(?:[A-Fa-f0-9]{1,4}:){7}:|:(:[A-Fa-f0-9]{1,4}){7})$" type: string description: | The IPv6 address of the host. example: d9a6:4df8:ddfd:839c:6c4e:ae35:c0ba:4eae prefixLength: maximum: 128 minimum: 0 type: integer description: | The prefix length of the network to which this host IPv6 address belongs. format: int32 default: 128 additionalProperties: false description: | An unique address that identifies a device on the internet or a local network in IPv6 format. common.v1.0.config.FQDN: type: object properties: value: pattern: "^([a-zA-Z0-9À-ÿ]+(?:-[a-zA-Z0-9À-ÿ]+)*\\.)+[a-zA-ZÀ-ÿ]{2,63}$" type: string description: | The fully qualified domain name of the host. example: string additionalProperties: false description: | A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System. security.v4.1.config.BasicAuthCredential: required: - credential type: object properties: credential: $ref: '#/components/schemas/common.v1.0.config.BasicAuth' additionalProperties: false common.v1.0.config.KVPair: type: object properties: name: maxLength: 128 minLength: 3 type: string description: | The key of the key-value pair. example: string value: description: The value associated with the key for this key-value pair oneOf: - type: string description: | A string value in a key-value pair. example: string - type: integer description: | An integer value in a key-value pair. example: 25 - type: boolean description: | An boolean value in a key-value pair. example: true - maxItems: 100 minItems: 0 type: array description: | A value in a key-value pair that represents a list of strings. items: type: string example: string - type: object additionalProperties: type: string description: | A value in a key-value pair that represents a map of string keys and values. - maxItems: 20 minItems: 0 type: array description: | A value in a key-value pair that represents an array of maps of string keys and values. items: $ref: '#/components/schemas/common.v1.0.config.MapOfStringWrapper' - maxItems: 100 minItems: 0 type: array description: | A value in a key-value pair that represents a list of integers. items: type: integer example: 50 additionalProperties: false description: | A map describing a set of keys and their corresponding values. common.v1.0.config.MapOfStringWrapper: type: object properties: map: type: object additionalProperties: type: string description: | A map with string keys and values. additionalProperties: false description: | A wrapper schema containing a map with string keys and values. clustermgmt.v4.2.config.NonMigratableVmInfo: type: object properties: vmName: maxLength: 64 type: string description: Name of the VM. example: Test VM Name vmUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: UUID of the VM. example: ae92b1bb-d1b3-4e2a-947d-c34b5980125a nonMigratableVmReason: type: string description: Reason for a VM to be non-migratable. example: Test reason for non-migratable VM hostIp: $ref: '#/components/schemas/common.v1.0.config.IPAddress' additionalProperties: false description: Non-migratable VM details. common.v1.0.config.IPAddress: type: object properties: ipv4: $ref: '#/components/schemas/common.v1.0.config.IPv4Address' ipv6: $ref: '#/components/schemas/common.v1.0.config.IPv6Address' additionalProperties: false description: | An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format. lifecycle.v4.2.error.ErrorResponse: type: object properties: error: oneOf: - type: array items: $ref: '#/components/schemas/lifecycle.v4.2.error.AppMessage' - $ref: '#/components/schemas/lifecycle.v4.2.error.SchemaValidationError' additionalProperties: false description: An error response indicates that the operation has failed either due to a client error(4XX) or server error(5XX). Please look at the HTTP status code and namespace specific error code and error message for further details. x-platform-generated: true lifecycle.v4.2.error.AppMessage: type: object properties: message: type: string description: The message string. example: string severity: $ref: '#/components/schemas/common.v1.0.config.MessageSeverity' code: type: string description: "The code associated with this message. This string is typically\ \ prefixed with the namespace to which the endpoint belongs. For example:\ \ VMM-40000" example: string locale: type: string description: Locale for this message. The default locale would be 'en-US'. default: en_US errorGroup: type: string description: The error group associated with this message of severity ERROR. example: string argumentsMap: type: object additionalProperties: type: string description: The map of argument name to value. additionalProperties: false description: Message with associated severity describing status of the current operation. x-platform-generated: true lifecycle.v4.2.error.MessageSeverity: type: string description: Enum schema MessageSeverity enum: - INFO - WARNING - ERROR - $UNKNOWN - $REDACTED x-platform-generated: true x-codegen-hint: $any: - type: entity-identifier properties: identifiers: - value: $UNKNOWN index: 201 - value: $REDACTED index: 202 - value: INFO index: 203 - value: WARNING index: 204 - value: ERROR index: 205 lifecycle.v4.2.error.SchemaValidationError: type: object properties: timestamp: type: string description: Timestamp of the response. format: date-time example: 2009-09-23T14:30:00-07:00 statusCode: type: integer description: The HTTP status code of the response. example: 6 error: type: string description: The generic error message for the response. example: string path: type: string description: API path on which the request was made. example: string validationErrorMessages: type: array description: List of validation error messages items: $ref: '#/components/schemas/lifecycle.v4.2.error.SchemaValidationErrorMessage' additionalProperties: false description: This schema is generated from SchemaValidationError.java x-platform-generated: true lifecycle.v4.2.error.SchemaValidationErrorMessage: type: object properties: location: type: string description: "The part of the request that failed validation. Validation\ \ can fail for path, query parameters, and request body." example: string message: type: string description: The detailed message for the validation error. example: string attributePath: type: string description: The path of the attribute that failed validation in the schema. example: string additionalProperties: false description: This schema is generated from SchemaValidationErrorMessage.java x-platform-generated: true common.v1.0.response.ApiResponseMetadata: type: object properties: flags: maxItems: 20 minItems: 0 type: array description: | An array of flags that may indicate the status of the response. For example, a flag with the name 'isPaginated' and value 'false', indicates that the response is not paginated. items: $ref: '#/components/schemas/common.v1.0.config.Flag' links: maxItems: 20 minItems: 0 type: array description: | An array of HATEOAS style links for the response that may also include pagination links for list operations. items: $ref: '#/components/schemas/common.v1.0.response.ApiLink' totalAvailableResults: type: integer description: | The total number of entities that are available on the server for this type. format: int32 example: 51 messages: maxItems: 20 minItems: 0 type: array description: | Information, Warning or Error messages that might provide additional contextual information related to the operation. items: $ref: '#/components/schemas/common.v1.0.config.Message' extraInfo: maxItems: 20 minItems: 0 type: array description: | An array of entity-specific metadata items: $ref: '#/components/schemas/common.v1.0.config.KVPair' additionalProperties: false description: | The metadata associated with an API response. This value is always present and minimally contains the self-link for the API request that produced this response. It also contains pagination data for the paginated requests. prism.v4.3.config.TaskReference: type: object properties: extId: pattern: "^[a-zA-Z0-9/+]*={0,2}:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}" type: string description: A globally unique identifier for a task. example: QmFzZTY0RW5jb2RlZA==:95655340-4dd1-4deb-81a9-20cabe6f1a21 additionalProperties: false description: A reference to a task tracking an asynchronous operation. The status of the task can be queried by making a GET request to the task URI provided in the metadata section of the API response. common.v1.0.config.Flag: type: object properties: name: maxLength: 128 minLength: 3 type: string description: | Name of the flag. example: string value: type: boolean description: | Value of the flag. default: false additionalProperties: false description: | Many entities in the Nutanix APIs carry flags. This object captures all the flags associated with that entity through this object. The field that hosts this type of object must have an attribute called x-bounded-map-keys that tells which flags are actually present for that entity. common.v1.0.config.Message: type: object properties: code: type: string description: | A code that uniquely identifies a message. example: string message: type: string description: | The description of the message. example: string locale: type: string description: | The locale for the message description. default: en_US severity: $ref: '#/components/schemas/common.v1.0.config.MessageSeverity' additionalProperties: false common.v1.0.config.MessageSeverity: type: string description: | The message severity. enum: - INFO - WARNING - ERROR - $UNKNOWN - $REDACTED x-enumDescriptions: ERROR: | Error indicating failed completion. INFO: | Information about successful completion. $UNKNOWN: | Unknown value. WARNING: | Warning indicating future error. $REDACTED: | Redacted value. lifecycle.v4.2.config.Domain: allOf: - $ref: '#/components/schemas/common.v1.0.response.ExternalizableAbstractModel' - required: - bomExtId - clusterProfileExtId - type type: object properties: type: $ref: '#/components/schemas/lifecycle.v4.2.config.DomainType' domainManager: required: - $objectType properties: $objectType: type: string example: prism.v4.config.DomainManager description: "Domain Manager can be one of the following: - DomainManager\ \ object which is required to take input for creating a new domain manager\ \ (Prism Central) for App Domain PC creation. - RemoteClusterSpec is\ \ mainly required for ingestion usecase of existing PC - RemoteCluster\ \ is used for output only to show basic details of existing app domain\ \ PC" oneOf: - $ref: '#/components/schemas/prism.v4.2.config.DomainManager' - $ref: '#/components/schemas/prism.v4.2.management.RemoteClusterSpec' clusterProfileExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 2cde63f1-3c98-465f-ae8e-8e1cd1228312 bomExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 6f282bf0-e3ec-48a0-b4e5-382202fd5743 clusterExtIds: maxItems: 400 minItems: 0 type: array description: List of clusters managed by App Domain PC/ Management PC readOnly: true items: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 9efae563-8d4f-43cf-8031-7cf4e5174a64 preHookOps: maxItems: 10 minItems: 0 type: array description: List of prehook operations to be run during app domain creation workflow items: $ref: '#/components/schemas/lifecycle.v4.2.config.HookDetails' postHookOps: maxItems: 10 minItems: 0 type: array description: List of posthook operations to be run during app domain creation workflow items: $ref: '#/components/schemas/lifecycle.v4.2.config.HookDetails' createdTime: type: string description: Created Time of Domain format: date-time readOnly: true example: 2009-09-23T14:30:00-07:00 createdBy: maxLength: 200 type: string description: The user who created the Domain readOnly: true example: string additionalProperties: false description: A domain is a logical grouping of resources that provides isolation and management capabilities. lifecycle.v4.2.config.DomainType: type: string description: Domain Type is an enum having values App Domain and Management Domain enum: - MANAGEMENTDOMAIN - APPDOMAIN - $UNKNOWN - $REDACTED x-enumDescriptions: APPDOMAIN: 'App Domain (Application Domain) is a logical construct that collectively refers to App Domain PC and the clusters that are registered to it. ' MANAGEMENTDOMAIN: Management Domain is a logical construct that collectively refers to Management PC and the components deployed on its clusters $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.config.HookDetails: type: object properties: script: maxLength: 10000 type: string description: Prehook/Posthook script name example: string operationType: $ref: '#/components/schemas/lifecycle.v4.2.config.OperationType' scriptType: $ref: '#/components/schemas/lifecycle.v4.2.config.ScriptType' additionalProperties: false description: Hook is a wrapper model over prehook/post hook model to avoid duplication lifecycle.v4.2.config.Bom: description: Bill of materials which describes the various products and their versions compataible with each other allOf: - $ref: '#/components/schemas/common.v1.0.response.ExternalizableAbstractModel' - type: object properties: version: maxLength: 100 type: string description: Bill of materials version example: string content: maxLength: 4000 type: string description: Bill of materials content i.e list of products and their versions example: string additionalProperties: false lifecycle.v4.2.config.OperationType: type: string description: "Operation type is an enum which denotes which of the following\ \ operations to be run: - Create Domain Manager" enum: - CREATEDOMAINMANAGER - $UNKNOWN - $REDACTED x-enumDescriptions: CREATEDOMAINMANAGER: 'Create Domain Manager ' $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.config.ScriptType: type: string description: Script Type currently supports only Escript type which is used to run scripts on the cluster enum: - ESCRIPT - $UNKNOWN - $REDACTED x-enumDescriptions: ESCRIPT: "Escript is a type of script that is executed on the cluster, typically\ \ used for automation tasks." $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. prism.v4.2.config.DomainManager: description: Domain manager (Prism Central) details. allOf: - $ref: '#/components/schemas/common.v1.0.response.ExternalizableAbstractModel' - required: - config - network type: object properties: config: $ref: '#/components/schemas/prism.v4.2.config.DomainManagerClusterConfig' isRegisteredWithHostingCluster: type: boolean description: "Boolean value indicating if the domain manager (Prism Central)\ \ is registered with the hosting cluster, that is, Prism Element." readOnly: true example: true network: $ref: '#/components/schemas/prism.v4.2.config.DomainManagerNetwork' hostingClusterExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: The external identifier of the cluster hosting the domain manager (Prism Central) instance. example: fdf240e5-70e9-4ad9-8889-8d576c069059 shouldEnableHighAvailability: type: boolean description: This configuration enables Prism Central to be deployed in scale-out mode. default: false nodeExtIds: maxItems: 3 minItems: 1 uniqueItems: true type: array description: Domain manager (Prism Central) nodes external identifier. readOnly: true items: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 721dfd8e-ebe3-43fd-a60c-7c02cadc066c createdTime: type: string description: The timestamp when the domain manager (Prism Central) was created. format: date-time readOnly: true example: 2009-09-23T14:30:00-07:00 additionalProperties: false prism.v4.2.management.RemoteClusterSpec: required: - address - credentials type: object properties: address: $ref: '#/components/schemas/common.v1.0.config.IPAddressOrFQDN' credentials: $ref: '#/components/schemas/prism.v4.2.management.Credentials' additionalProperties: false description: "Address configuration of a remote cluster. It requires the address\ \ of the remote, that is an IP or domain name along with the basic authentication\ \ credentials." clustermgmt.v4.2.config.ClusterConfig: type: object properties: shouldEnableLockdownMode: type: boolean description: A boolean value indicating whether to enable lockdown mode for a cluster. example: false buildInfo: $ref: '#/components/schemas/clustermgmt.v4.2.config.BuildInfo' additionalProperties: false description: Cluster Configuration required for a cluster to function properly. clustermgmt.v4.2.config.ClusterNetwork: type: object properties: externalAddress: $ref: '#/components/schemas/common.v1.0.config.IPAddress' nameServers: maxItems: 1024 minItems: 0 uniqueItems: true type: array description: "List of name servers on a cluster. This is a part of payload\ \ for both clusters create and update operations. Currently, only IPv4\ \ address and FQDN (fully qualified domain name) values are supported\ \ for the create operation." items: $ref: '#/components/schemas/common.v1.0.config.IPAddressOrFQDN' ntpServers: maxItems: 1024 minItems: 0 uniqueItems: true type: array description: "List of NTP servers on a cluster. This is a part of payload\ \ for both cluster create and update operations. Currently, only IPv4\ \ address and FQDN (fully qualified domain name) values are supported\ \ for the create operation." items: $ref: '#/components/schemas/common.v1.0.config.IPAddressOrFQDN' fqdn: pattern: "^([a-zA-Z0-9À-ÿ]+(?:-[a-zA-Z0-9À-ÿ]+)*\\.)+[a-zA-ZÀ-ÿ]{2,63}$" type: string description: Cluster fully qualified domain name. This is part of payload for cluster update operation only. readOnly: true example: string httpProxyConfig: maxItems: 10 minItems: 0 type: array description: List of HTTP Proxy server configuration needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity. items: $ref: '#/components/schemas/clustermgmt.v4.2.config.HttpProxyConfig' httpProxyWhiteListConfig: maxItems: 10 minItems: 0 type: array description: Targets HTTP traffic to which is exempted from going through the configured HTTP Proxy. items: $ref: '#/components/schemas/clustermgmt.v4.2.config.HttpProxyWhiteListConfig' additionalProperties: false description: Network details of a cluster. vmm.v4.2.ahv.config.CloudInit: type: object properties: datasourceType: $ref: '#/components/schemas/vmm.v4.2.ahv.config.CloudInitDataSourceType' metadata: maxLength: 32000 type: string description: The contents of the meta_data configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded. example: string cloudInitScript: required: - $objectType properties: $objectType: type: string example: vmm.v4.ahv.config.Userdata description: The script to use for cloud-init. oneOf: - $ref: '#/components/schemas/vmm.v4.2.ahv.config.Userdata' - $ref: '#/components/schemas/vmm.v4.2.ahv.config.CustomKeyValues' additionalProperties: false description: "If this field is set, the guest will be customized using cloud-init.\ \ Either user_data or custom_key_values should be provided. If custom_key_ves\ \ are provided then the user data will be generated using these key-value\ \ pairs." common.v1.0.config.IpRange: type: object properties: begin: $ref: '#/components/schemas/common.v1.0.config.IPAddress' end: $ref: '#/components/schemas/common.v1.0.config.IPAddress' additionalProperties: false description: | Range of consecutive IP addresses that can be assigned to a specific Subnet.The size of the IP range is determined by the subnet mask. clustermgmt.v4.2.config.BuildInfo: type: object properties: version: type: string description: Software version. example: string additionalProperties: false description: Currently representing the build information to be used for the cluster creation. clustermgmt.v4.2.config.HttpProxyConfig: required: - name type: object properties: ipAddress: $ref: '#/components/schemas/common.v1.0.config.IPAddress' port: type: integer description: HTTP Proxy server port configuration needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity. format: int32 example: 68 username: maxLength: 64 type: string description: HTTP Proxy server username needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity. example: string password: type: string description: HTTP Proxy server password needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity. example: string name: maxLength: 64 type: string description: HTTP Proxy server name configuration needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity. example: string proxyTypes: maxItems: 3 minItems: 0 type: array description: List of HTTP proxy types. items: $ref: '#/components/schemas/clustermgmt.v4.2.config.HttpProxyType' additionalProperties: false description: HTTP Proxy server configuration needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity. clustermgmt.v4.2.config.HttpProxyWhiteListConfig: required: - target - targetType type: object properties: targetType: $ref: '#/components/schemas/clustermgmt.v4.2.config.HttpProxyWhiteListTargetType' target: type: string description: Target's identifier which is exempted from going through the configured HTTP Proxy. example: string additionalProperties: false description: Targets HTTP traffic to which is exempted from going through the configured HTTP Proxy. clustermgmt.v4.2.config.HttpProxyType: type: string description: HTTP proxy type which is needed to access a cluster hosted behind a HTTP Proxy. enum: - HTTP - HTTPS - SOCKS - $UNKNOWN - $REDACTED x-enumDescriptions: HTTPS: HTTPS proxy protocol type. SOCKS: SOCKS proxy protocol type. HTTP: HTTP proxy protocol type. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. clustermgmt.v4.2.config.HttpProxyWhiteListTargetType: type: string description: Type of the target which is exempted from going through the configured HTTP Proxy. enum: - IPV4_ADDRESS - IPV6_ADDRESS - IPV4_NETWORK_MASK - DOMAIN_NAME_SUFFIX - HOST_NAME - $UNKNOWN - $REDACTED x-enumDescriptions: IPV6_ADDRESS: IPV6 address. HOST_NAME: Name of the host. DOMAIN_NAME_SUFFIX: Domain Name Suffix required for http proxy whitelist. IPV4_NETWORK_MASK: Network Mask of the IpV4 family. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. IPV4_ADDRESS: IPV4 address. vmm.v4.2.ahv.config.CloudInitDataSourceType: type: string description: "Type of datasource. Default: CONFIG_DRIVE_V2" enum: - CONFIG_DRIVE_V2 - $UNKNOWN - $REDACTED x-enumDescriptions: CONFIG_DRIVE_V2: The type of datasource for cloud-init is Config Drive V2. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. vmm.v4.2.ahv.config.Userdata: type: object properties: value: maxLength: 128000 type: string description: The value for the cloud-init user_data. example: string additionalProperties: false description: "The contents of the user_data configuration for cloud-init. This\ \ can be formatted as YAML, JSON, or could be a shell script. The value must\ \ be base64 encoded." vmm.v4.2.ahv.config.CustomKeyValues: type: object properties: keyValuePairs: maxItems: 32 minItems: 0 type: array description: The list of the individual KeyValuePair elements. items: $ref: '#/components/schemas/common.v1.0.config.KVPair' additionalProperties: false description: A collection of key/value pairs. prism.v4.2.config.DomainManagerClusterConfig: required: - buildInfo - name - size description: Domain manager (Prism Central) cluster configuration details. allOf: - $ref: '#/components/schemas/clustermgmt.v4.2.config.ClusterConfig' - type: object properties: name: maxLength: 80 minLength: 1 type: string description: Name of the domain manager (Prism Central). example: pc_nutanix_01 size: $ref: '#/components/schemas/prism.v4.2.config.Size' bootstrapConfig: $ref: '#/components/schemas/prism.v4.2.config.BootstrapConfig' credentials: maxItems: 5 minItems: 1 uniqueItems: true type: array description: The credentials consist of a username and password for a particular user like admin. Users can pass the credentials of admin users currently which will be configured in the create domain manager operation. writeOnly: true items: $ref: '#/components/schemas/common.v1.0.config.BasicAuth' resourceConfig: $ref: '#/components/schemas/prism.v4.2.config.DomainManagerResourceConfig' additionalProperties: false prism.v4.2.config.DomainManagerNetwork: required: - externalNetworks - nameServers - ntpServers description: Domain manager (Prism Central) network configuration details. allOf: - $ref: '#/components/schemas/clustermgmt.v4.2.config.ClusterNetwork' - type: object properties: internalNetworks: maxItems: 10 minItems: 1 uniqueItems: true type: array description: This configuration is used to internally manage Prism Central network. writeOnly: true items: $ref: '#/components/schemas/prism.v4.2.config.BaseNetwork' externalNetworks: maxItems: 1 minItems: 1 uniqueItems: true type: array description: This configuration is used to manage Prism Central. items: $ref: '#/components/schemas/prism.v4.2.config.ExternalNetwork' capability: $ref: '#/components/schemas/prism.v4.2.config.NetworkCapability' additionalProperties: false prism.v4.2.config.Size: type: string description: "Domain manager (Prism Central) size is an enumeration of starter,\ \ small, large, or extra large starter values." enum: - STARTER - SMALL - LARGE - EXTRALARGE - $UNKNOWN - $REDACTED x-enumDescriptions: SMALL: Domain manager (Prism Central) of size small. LARGE: Domain manager (Prism Central) of size large. EXTRALARGE: Domain manager (Prism Central) of size extra large. STARTER: Domain manager (Prism Central) of size starter. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. prism.v4.2.config.BootstrapConfig: type: object properties: cloudInitConfig: maxItems: 50 minItems: 1 type: array description: List of cloud-init commands required to bootstrap the domain manager (Prism Central) cluster on a startup. writeOnly: true items: $ref: '#/components/schemas/vmm.v4.2.ahv.config.CloudInit' environmentInfo: $ref: '#/components/schemas/prism.v4.2.config.EnvironmentInfo' additionalProperties: false description: Bootstrap configuration details for the domain manager (Prism Central). prism.v4.2.config.DomainManagerResourceConfig: type: object properties: numVcpus: type: integer description: This property is used for readOnly purposes to display Prism Central number of VCPUs allocation. format: int32 readOnly: true example: 30 memorySizeBytes: type: integer description: This property is used for readOnly purposes to display Prism Central RAM allocation at the cluster level. format: int64 readOnly: true example: 63 dataDiskSizeBytes: type: integer description: This property is used for readOnly purposes to display Prism Central data disk size allocation at a cluster level. format: int64 readOnly: true example: 95 containerExtIds: maxItems: 3 minItems: 1 uniqueItems: true type: array description: The external identifier of the container that will be used to create the domain manager (Prism Central) cluster. items: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 3509d84a-1503-48c7-bda0-a85e5ba25ef3 additionalProperties: false description: "This configuration is used to provide the resource-related details\ \ like container external identifiers, number of VCPUs, memory size, data\ \ disk size of the domain manager (Prism Central). In the case of a multi-node\ \ setup, the sum of resources like number of VCPUs, memory size and data disk\ \ size are provided." prism.v4.2.config.EnvironmentInfo: type: object properties: type: $ref: '#/components/schemas/prism.v4.2.config.EnvironmentType' providerType: $ref: '#/components/schemas/prism.v4.2.config.ProviderType' provisioningType: $ref: '#/components/schemas/prism.v4.2.config.ProvisioningType' additionalProperties: false description: | An object denoting the environment information of the PC. It contains the following fields:
- type: Enums denoting the environment type of the PC.
- providerType: Enums denoting the provider of the cloud PC.
- instanceObj: Enums denoting the instance type of the cloud PC.
prism.v4.2.config.EnvironmentType: type: string description: | Enums denoting the environment type of the PC, that is, on-prem PC or cloud PC.
Following are the supported entity types: - ONPREM - NTNX_CLOUD enum: - ONPREM - NTNX_CLOUD - $UNKNOWN - $REDACTED x-enumDescriptions: NTNX_CLOUD: Nutanix cloud environment. ONPREM: On-prem environment. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. prism.v4.2.config.ProviderType: type: string description: | Enums denoting the provider of the cloud, in case of environment type a cloud PC.
The service currently supports the following providers: - NTNX - AZURE - AWS - GCP - VSPHERE enum: - NTNX - AZURE - AWS - GCP - VSPHERE - $UNKNOWN - $REDACTED x-enumDescriptions: VSPHERE: Vsphere cloud provider. AZURE: Azure cloud provider. NTNX: Nutanix cloud provider. GCP: GCP cloud provider. $UNKNOWN: | Unknown value. AWS: AWS cloud provider. $REDACTED: | Redacted value. prism.v4.2.config.ProvisioningType: type: string description: | Enums denoting the instance type of the cloud PC. It indicates whether the PC is created on bare-metal or on a cloud-provisioned VM. Hence, it supports two possible values: - NTNX - NATIVE enum: - NTNX - NATIVE - $UNKNOWN - $REDACTED x-enumDescriptions: NATIVE: Native instance. NTNX: Nutanix instance. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. prism.v4.2.config.BaseNetwork: required: - defaultGateway - subnetMask type: object properties: defaultGateway: $ref: '#/components/schemas/common.v1.0.config.IPAddressOrFQDN' subnetMask: $ref: '#/components/schemas/common.v1.0.config.IPAddressOrFQDN' ipRanges: maxItems: 15 minItems: 1 uniqueItems: true type: array description: Range of IPs used for Prism Central network setup. items: $ref: '#/components/schemas/common.v1.0.config.IpRange' ipAddresses: type: array description: List of Node (VM) IP addresses used for Prism Central network setup. readOnly: true items: $ref: '#/components/schemas/common.v1.0.config.IPAddress' additionalProperties: false description: This model would abstract away the common attributes as part of internal and external networks. prism.v4.2.config.ExternalNetwork: description: This configuration is used to manage Prism Central. allOf: - $ref: '#/components/schemas/prism.v4.2.config.BaseNetwork' - required: - networkExtId type: object properties: networkExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: The network external identifier to which Domain Manager (Prism Central) is to be deployed or is already configured. example: 3e78c184-499f-4046-9c7e-6b3315bb2429 additionalProperties: false prism.v4.2.config.NetworkCapability: type: string description: "This property represents network capability of a domain manager\ \ which consists of - Ipv4 only, dual stack and ipv6 only networks." enum: - IPV4 - DUAL_STACK - IPV6 - $UNKNOWN - $REDACTED x-enumDescriptions: DUAL_STACK: The Domain manager (Prism Central) has both IPv4 and IPv6 network configured. IPV6: The Domain manager (Prism Central) has only IPv6 network configured. IPV4: The Domain manager (Prism Central) has only IPv4 network configured. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. prism.v4.2.management.Credentials: required: - authentication type: object properties: authentication: $ref: '#/components/schemas/common.v1.0.config.BasicAuth' additionalProperties: false description: Credentials to connect to a remote cluster. lifecycle.v4.2.svcmgr.AppProtectionPolicy: title: App Protection Policy object. description: A model that represents an Application Disaster Recovery (App DR) app protection policy. allOf: - $ref: '#/components/schemas/common.v1.0.response.ExternalizableAbstractModel' - required: - name - replicationTargets - sourceCluster type: object properties: name: type: string description: Name of the app protection policy. example: string clusterExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: External identifier of the SMSP cluster to which the app protection policy is bound. readOnly: true example: 3e52d111-f4dd-47ce-8310-b5648f5678d1 sourceCluster: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.ClusterTarget' replicationTargets: maxItems: 1 type: array description: List of replication target configurations. items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.ReplicationTarget' state: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.AppProtectionPolicyState' helmApplicationInfo: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.HelmApplicationInfo' protectionTargets: type: array description: Protection targets that extend coverage across multiple namespaces. items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.ProtectionTarget' createdTime: type: string description: Object creation timestamp. format: date-time readOnly: true example: 2009-09-23T14:30:00-07:00 updatedTime: type: string description: Last update timestamp. format: date-time readOnly: true example: 2009-09-23T14:30:00-07:00 additionalProperties: false lifecycle.v4.2.svcmgr.ClusterTarget: required: - clusterExtId - domainManagerExtId type: object properties: clusterExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: External identifier of the SMSP cluster. example: 405d905b-e20f-46ce-92aa-f7afd85b2a25 domainManagerExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: External identifier of the Prism Central that owns the SMSP cluster. example: 9798db6e-31ee-467f-abf2-820dc33bc8e6 additionalProperties: false description: Reference to an SMSP cluster and the Prism Central that manages it. lifecycle.v4.2.svcmgr.ReplicationTarget: required: - replicationTargetConfig type: object properties: replicationTargetConfig: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.svcmgr.AsyncReplicationTargetConfig oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.AsyncReplicationTargetConfig' - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.SyncReplicationTargetConfig' additionalProperties: false description: Replication target definition containing either async- or sync-replication settings. lifecycle.v4.2.svcmgr.AppProtectionPolicyState: type: string description: State of the app protection policy. enum: - RUNNING - STOPPED - LOCALLY_PROTECTED - $UNKNOWN - $REDACTED x-enumDescriptions: $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.svcmgr.HelmApplicationInfo: required: - appId - appType type: object properties: appId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Identifier of the application registered in Service Manager. example: 495ccc9b-3943-4bf6-b0f2-6686c2671c89 appType: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.ApplicationType' additionalProperties: false description: Information about the Helm-managed application being protected. lifecycle.v4.2.svcmgr.ProtectionTarget: required: - name - namespace type: object properties: name: type: string description: Name of the protection target. Used when deploying NDK Application custom resource. example: string namespace: type: string description: Namespace where protected resources are located. example: string selectors: type: array description: Selectors for protected resources. Each RLS selects resources based on specified label selector and then applies excludes and includes rules for those returned resources. Omitting this will protect all the resources in the namespace. items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.ResourceLabelSelector' additionalProperties: false description: Protection target grouping Kubernetes resources to protect. lifecycle.v4.2.svcmgr.AsyncReplicationTargetConfig: description: Configuration for an asynchronous replication target. allOf: - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.BaseReplicationTargetConfig' - required: - schedule type: object properties: schedule: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.CronSchedule' snapshotRetentionCount: type: integer description: Number of most-recent snapshots to retain for asynchronous replication. format: int32 example: 26 additionalProperties: false lifecycle.v4.2.svcmgr.SyncReplicationTargetConfig: description: Configuration for a synchronous replication target. allOf: - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.BaseReplicationTargetConfig' - type: object properties: {} additionalProperties: false lifecycle.v4.2.svcmgr.BaseReplicationTargetConfig: required: - clusterExtId - domainManagerExtId type: object properties: clusterExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: External identifier of the replication-target cluster. example: e16dd616-a03d-44a7-9237-032a978669fb domainManagerExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: External identifier of the Prism Central managing the replication-target cluster. example: b3c6a59a-55d5-49e0-93ac-017fbd043996 additionalProperties: false description: Base configuration shared by all replication targets. lifecycle.v4.2.svcmgr.CronSchedule: required: - cronSchedule - timezone type: object properties: cronSchedule: type: string description: Cron expression that defines the snapshot schedule. example: 30 0 * * * startTime: type: string description: First time at which the scheduler should trigger. format: date-time readOnly: true example: 2009-09-23T14:30:00-07:00 timezone: type: string description: Time zone used to evaluate the cron expression. example: America/Los_Angeles additionalProperties: false description: Cron schedule configuration. lifecycle.v4.2.svcmgr.ApplicationType: type: string description: Type of the protected entity (application or service). enum: - APPLICATION - SERVICE - $UNKNOWN - $REDACTED x-enumDescriptions: $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.svcmgr.ResourceLabelSelector: type: object properties: labelSelector: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.LabelSelector' includeResources: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.GroupKind' excludeResources: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.GroupKind' additionalProperties: false description: Selector that filters resources based on labels and include/exclude rules. lifecycle.v4.2.svcmgr.LabelSelector: type: object properties: matchLabels: type: array description: "List of key, value pairs representing label selectors. For\ \ example, key \"app.kubernetes.io/name\", value \"test-mysql\"." items: $ref: '#/components/schemas/common.v1.0.config.KVStringPair' matchExpressions: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.LabelMatchExpression' additionalProperties: false description: A standard Kubernetes label selector used to filter resources based on their labels. lifecycle.v4.2.svcmgr.GroupKind: required: - group - kind type: object properties: group: type: string description: API group of the resource. example: apps kind: type: string description: Kind of the resource. example: Deployment additionalProperties: false description: API group and kind pair describing a Kubernetes resource. lifecycle.v4.2.svcmgr.LabelMatchExpression: type: object properties: key: type: string description: Label key that the selector applies to. example: string operator: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.LabelMatchExpressionOperator' values: type: array description: Label selector expression values. items: type: string example: string additionalProperties: false description: "List of label selector requirements, all of which must be met." lifecycle.v4.2.svcmgr.LabelMatchExpressionOperator: type: string description: Operator used in the label requirement. enum: - IN - NOT_IN - EXISTS - NOT_EXISTS - $UNKNOWN - $REDACTED x-enumDescriptions: $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.svcmgr.AppProtectionPolicyStart: title: App Protection Policy start object. type: object properties: startTime: type: string description: First time at which the scheduler should trigger. format: date-time example: 2009-09-23T14:30:00-07:00 additionalProperties: false description: A model that represents the start parameters for an App Protection Policy. lifecycle.v4.2.svcmgr.FailoverRequest: title: Failover Request payload object. required: - failoverType - replicationTargetCluster type: object properties: failoverType: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.FailoverType' replicationTargetCluster: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.ClusterTarget' preFailoverAction: maxItems: 1 type: array description: Action to execute before the failover procedure starts. items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.PrePostAction' postFailoverAction: maxItems: 1 type: array description: Action to execute after the failover procedure completes. items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.PrePostAction' snapshotName: type: string description: Name of the snapshot to fail over to (async replication only). example: string additionalProperties: false description: Payload model used to initiate a failover operation on a protection policy. lifecycle.v4.2.svcmgr.FailoverType: type: string description: Type of failover operation. enum: - UNPLANNED_FAILOVER - PLANNED_FAILOVER - ROLLBACK - $UNKNOWN - $REDACTED x-enumDescriptions: $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.svcmgr.PrePostAction: required: - actionDetails type: object properties: actionDetails: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.svcmgr.HelmJobDetails oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.HelmJobDetails' - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.APICallDetails' additionalProperties: false description: Wrapper for an action executed before or after failover. lifecycle.v4.2.svcmgr.HelmJobDetails: required: - name - version type: object properties: name: type: string description: Name of the Helm job chart. example: string version: type: string description: Version of the Helm job chart. example: string customValues: type: array description: Custom values passed to the Helm job. items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.CustomValue' additionalProperties: false description: Details of a Helm job action. lifecycle.v4.2.svcmgr.APICallDetails: required: - endpoint - host - port type: object properties: endpoint: type: string description: Endpoint path to invoke. example: string host: type: string description: Host of the API endpoint. example: string port: type: integer description: Port of the API endpoint. format: int64 example: 14 requestBody: type: string description: Request body sent with the API call. example: string additionalProperties: false description: Details of a REST API call action. lifecycle.v4.2.svcmgr.CustomValue: type: object properties: service: type: string example: security values: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.CustomValueItem' additionalProperties: false lifecycle.v4.2.svcmgr.CustomValueItem: type: object properties: key: type: string example: image.labels value: oneOf: - type: array items: type: string example: "label1, label2" - type: string example: label1 additionalProperties: false lifecycle.v4.2.svcmgr.Snapshot: title: Snapshot object. description: A model that represents an application snapshot captured by App DR. allOf: - $ref: '#/components/schemas/common.v1.0.response.ExternalizableAbstractModel' - required: - appProtectionPolicyExtId - name - status type: object properties: appProtectionPolicyExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: External identifier of the associated app protection policy. example: 34164f2a-7344-45b2-bd35-f3050158c728 name: type: string description: Name of the snapshot. example: string status: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.SnapshotStatus' metadata: type: array description: Point-in-time capture of metadata. readOnly: true items: $ref: '#/components/schemas/common.v1.0.config.KVStringPair' createdTime: type: string description: Object creation timestamp. format: date-time readOnly: true example: 2009-09-23T14:30:00-07:00 updatedTime: type: string description: Last update timestamp. format: date-time readOnly: true example: 2009-09-23T14:30:00-07:00 completedTime: type: string description: Time at which the snapshot operation completed. format: date-time readOnly: true example: 2009-09-23T14:30:00-07:00 additionalProperties: false lifecycle.v4.2.svcmgr.SnapshotStatus: type: string description: Status of the snapshot lifecycle. enum: - IN_PROGRESS - READY - FAILED - $UNKNOWN - $REDACTED x-enumDescriptions: $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.svcmgr.Install: required: - name - version type: object properties: name: type: string example: pc2020.10 version: pattern: "^(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)$" type: string example: 1.0.0 clusterID: type: string description: "Name(or UUID) of the cluster. Optional. If not specified,\ \ the default cluster(CMSP) will be used." example: smsp-cluster-01 customValues: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.CustomValue' additionalProperties: false lifecycle.v4.2.svcmgr.Application: type: object properties: name: type: string example: pc2020.10 version: pattern: "^(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)$" type: string example: 1.0.0 apptype: type: string example: Service enum: - Service - Application uuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 3de4ead5-0136-4ce7-bf3e-938deb77049f clusterUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: d4cf2235-5bb0-4355-b147-a69036d93b78 action: type: string example: Install status: type: string example: Success createdTimestamp: type: string format: date-time example: 2009-09-23T14:30:00-07:00 lastUpdatedTimestamp: type: string format: date-time example: 2009-09-23T14:30:00-07:00 isInactive: type: boolean readOnly: true example: true subServices: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.Service' additionalProperties: false lifecycle.v4.2.svcmgr.Service: type: object properties: name: type: string example: pc2020.10 version: pattern: "^(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)$" type: string example: 1.0.0 apptype: type: string example: Service enum: - Service - Application uuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: b6449f2d-5533-4029-a934-e07467656433 clusterUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 1129c9b8-5386-42b4-89f5-838fdc02f35a action: type: string example: Install status: type: string example: Success createdTimestamp: type: string format: date-time example: 2009-09-23T14:30:00-07:00 lastUpdatedTimestamp: type: string format: date-time example: 2009-09-23T14:30:00-07:00 isInactive: type: boolean readOnly: true example: false additionalProperties: false lifecycle.v4.2.svcmgr.PostAppResponse: type: object properties: appUUID: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: c7961187-3db2-463e-80a2-9f7cf54e7a4f taskUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: ce4cec27-a315-4bcf-803f-ced5ed300740 additionalProperties: false lifecycle.v4.2.svcmgr.TaskV2: type: object properties: extId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: A globally unique identifier of a task. readOnly: true example: eb145153-8cfa-4202-aa6d-d2707e8af3f3 mspUuid: type: string description: A globally unique identifier of MSP task. example: string operation: type: string description: The operation name being tracked by the task. readOnly: true example: string operationDescription: type: string description: Description of the operation being tracked by the task. readOnly: true example: string parentTask: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.TaskReferenceInternal' createdTime: type: string description: UTC date and time in RFC-3339 format when the task was created. example: string startedTime: type: string description: UTC date and time in RFC-3339 format when the task was started. example: string completedTime: type: string description: UTC date and time in RFC-3339 format when the task was completed. example: string status: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.TaskStatus' name: type: string example: string type: type: string example: Service enum: - Service - Application - Cluster progressPercentage: maximum: 100 minimum: 0 type: integer description: Task progress expressed as a percentage. format: int64 readOnly: true example: 45 entitiesAffected: maxItems: 1000 minItems: 0 type: array description: Reference to entities associated with the task. readOnly: true items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.EntityReference' subTasks: maxItems: 1000 minItems: 0 type: array description: Reference to tasks spawned as children of the current task. readOnly: true items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.TaskReferenceInternal' subSteps: maxItems: 50 minItems: 0 type: array description: List of steps completed as part of the task. readOnly: true items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.TaskStep' isCancelable: type: boolean description: Signifies if the task can be cancelled. readOnly: true example: true ownedBy: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.OwnerReference' completionDetails: maxItems: 50 minItems: 0 type: array description: Additional details on the task to aid the user with further actions post completion of the task. readOnly: true items: $ref: '#/components/schemas/common.v1.0.config.KVPair' errorMessages: maxItems: 100 minItems: 0 type: array description: Error details explaining a task failure. These would be populated only in the case of task failures. readOnly: true items: $ref: '#/components/schemas/lifecycle.v4.2.error.AppMessage' legacyErrorMessage: type: string description: Provides an error message in the absence of a well-defined error message for the tasks created through legacy APIs. readOnly: true example: string warnings: maxItems: 50 minItems: 0 type: array description: Warning messages to alert the user of issues which did not directly cause task failure. These can be populated for any task. readOnly: true items: $ref: '#/components/schemas/lifecycle.v4.2.error.AppMessage' lastUpdatedTime: type: string description: UTC date and time in RFC-3339 format when the task was last updated. example: string clusterExtIds: maxItems: 500 minItems: 0 type: array description: List of globally unique identifiers for clusters associated with the task or any of its subtasks. readOnly: true items: type: string example: string additionalProperties: false lifecycle.v4.2.svcmgr.TaskReferenceInternal: description: Reference to the parent task associated with the current task. allOf: - $ref: '#/components/schemas/common.v1.0.response.ApiLink' - type: object properties: extId: type: string description: A globally unique identifier of the task. readOnly: true example: string additionalProperties: false lifecycle.v4.2.svcmgr.TaskStatus: type: string description: Status of the task. enum: - QUEUED - RUNNING - CANCELING - SUCCEEDED - FAILED - CANCELED - SKIPPED - $UNKNOWN - $REDACTED x-enumDescriptions: $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.svcmgr.EntityReference: type: object properties: extId: type: string description: A globally unique identifier of the entity. readOnly: true example: string rel: type: string description: "Entity type identified as 'namespace:module[:submodule]:entityType'.\ \ For example - vmm:ahv:vm, where vmm is the namepsace, ahv is the module\ \ and vm is the entitytype." readOnly: true example: string additionalProperties: false description: Details of the entity. lifecycle.v4.2.svcmgr.TaskStep: type: object properties: name: type: string description: Message describing the completed steps for the task. readOnly: true example: string additionalProperties: false description: A single step in the task. lifecycle.v4.2.svcmgr.OwnerReference: type: object properties: extId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: A globally unique identifier of the task owner. readOnly: true example: 911fa82f-7a3c-42e4-9c33-a4b166b5ba7f name: type: string description: Username of the task owner. readOnly: true example: string additionalProperties: false description: Reference to the owner of the task. lifecycle.v4.2.svcmgr.Cluster: title: Service MSP Cluster object. description: A model that represents a Service Cluster for Micro Services Platform(MSP). allOf: - $ref: '#/components/schemas/common.v1.0.response.ExternalizableAbstractModel' - required: - ControlPlaneConfig - name type: object properties: name: maxLength: 32 minLength: 1 pattern: "^(([a-zA-Z]|[a-zA-Z][a-zA-Z0-9-]*[a-zA-Z0-9]))*([A-Za-z]|[A-Za-z][A-Za-z0-9-]*[A-Za-z0-9])$" type: string description: Name of the cluster. example: string description: type: string description: Brief description about the cluster. example: string status: type: string description: The status of deployed cluster. readOnly: true example: string clusterType: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.ClusterType' domain: $ref: '#/components/schemas/common.v1.0.config.FQDN' deploymentType: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.ClusterDeploymentType' managementIps: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.ClusterManagementIps' workerConfigs: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.Config' ControlPlaneConfig: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.Config' loadBalancerConfigs: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.LoadBalancerConfig' storageClasses: type: array description: The storage class specification used for creation of volumes needed for stateful services. items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.ClusterStorageClass' loggingVolumeConfig: type: array description: Configuration of the default volume to be attached to a node for logging purpose. items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.LoggingVolumeConfig' clientConfigs: type: array description: Client spec needed for VM/Network CRUD operations. items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.ClientConfig' resourceConfigs: type: array description: Resource configuration list for the VM resources. items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.ClusterResourceConfig' networkConfigs: type: array description: Network configuration of the cluster. items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.ClusterNetworkConfig' annotations: type: array description: | Key Value pairs that can be used to customize cluster deployment configuration. Supported annotations are - - Select storage provisioner service. Accepted values are csi/volume_provisioner. Key: "msp/storage/service" Value: "volume_provisioner/csi" - Disable logging add-ons on the cluster. Key: "msp/logging/disable" Value: "true" - Disable monitoring add-ons on the cluster. Key: "msp/monitoring/disable" Value: "true" items: $ref: '#/components/schemas/common.v1.0.config.KVStringPair' controllerVersion: type: string description: The controller version with which the cluster was deployed. readOnly: true example: string envoyIps: type: array description: The envoy nodes ips. readOnly: true items: type: string example: string etcdIps: type: array description: The etcd nodes ips. readOnly: true items: type: string example: string externalMasterIp: type: string description: The external master ip. readOnly: true example: string isLockedDown: type: boolean description: Boolean value indicating if cluster is locked or not. readOnly: true example: true masterIps: type: array description: The control plane node ips. readOnly: true items: type: string example: string workerIps: type: array description: The worker nodes ips. readOnly: true items: type: string example: string version: pattern: "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(-(0|[1-9]\\d*|\\\ d*[a-zA-Z-][0-9a-zA-Z-]*)(\\.(0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*)?(\\\ +[0-9a-zA-Z-]+(\\.[0-9a-zA-Z-]+)*)?$" type: string description: The version of the cluster. example: string additionalProperties: false lifecycle.v4.2.svcmgr.ClusterType: type: string description: Type of the cluster. enum: - CMSP - SMSP - $UNKNOWN - $REDACTED x-enumDescriptions: $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.svcmgr.ClusterDeploymentType: type: string description: | Enum representing the type of cluster deployment. enum: - COMBINED - SCALE_OUT - $UNKNOWN - $REDACTED x-enumDescriptions: COMBINED: Internal K8s components such as k8s master or etcd components maybe clubbed together with worker nodes. This type should be used when resources are scarce. SCALE_OUT: Internal K8s components such as k8s master or etcd components will not be clubbed together with worker nodes and instead run on their own instances. $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.svcmgr.ClusterManagementIps: type: object properties: masterVip: $ref: '#/components/schemas/common.v1.0.config.IPv4Address' mspDnsIp: $ref: '#/components/schemas/common.v1.0.config.IPv4Address' network: minLength: 1 type: string description: IPAM Name to be used for fetching static IPs that are not provided in the payload. example: objects_10.0.0.100_cluster_prod_vlan additionalProperties: false description: IPs to manage the cluster. lifecycle.v4.2.svcmgr.Config: required: - numInstances - resourceConfigName type: object properties: numInstances: maximum: 1024 minimum: 1 type: integer format: int64 example: 24 resourceConfigName: type: string description: | This describes the name of the resource to be used. Actual spec is got from cluster resource configs field using this name. example: string additionalProperties: false lifecycle.v4.2.svcmgr.LoadBalancerConfig: required: - loadBalancerConfigItems type: object properties: loadBalancerConfigItems: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.LoadBalancerConfigObject' version: type: string example: string additionalProperties: false description: "null" lifecycle.v4.2.svcmgr.ClusterStorageClass: required: - name type: object properties: name: type: string description: Unique name of the storage class. The name is used to refer to the storage class. example: string description: type: string example: string mountOptions: type: string description: "MountOptions controls the mountOptions for dynamically provisioned\ \ PersistentVolumes of this storage class. e.g. [\"ro\", \"soft\"]." example: string reclaimPolicy: type: string description: Controls the reclaimPolicy for dynamically provisioned PersistentVolumes of this storage class. example: string storageType: type: string description: Storage type for the storage class. e.g. NutanixVolumes example: string isDefaultStorageClass: type: boolean description: Whether this storage class is marked as the default one. example: false nutanixStorageClass: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.NutanixStorageClass' additionalProperties: false description: Storage Class to be used by the cluster. lifecycle.v4.2.svcmgr.LoggingVolumeConfig: required: - mountPath - sizeMb - storageConfigName type: object properties: mountPath: type: string description: Mount path of the log volume. example: string sizeMb: type: integer description: Size of the log volume in MB. example: 90 storageConfigName: maxLength: 64 minLength: 1 type: string description: Name of the storage config to be used for configuring the log volume. example: string additionalProperties: false description: Configuration of the default volume to be attached to a node for logging purpose. lifecycle.v4.2.svcmgr.ClientConfig: required: - config - name - type type: object properties: name: minLength: 1 type: string description: Name of the client configuration. example: string type: type: string description: Type of platform client. enum: - AHV - ESX config: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.svcmgr.AhvClientConfig oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.AhvClientConfig' - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.EsxClientConfig' additionalProperties: false description: Access configuration of the client used to access AHV or ESX clusters. lifecycle.v4.2.svcmgr.ClusterResourceConfig: required: - name type: object properties: name: minLength: 1 type: string description: Name of resource config. example: string resourceConfig: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.svcmgr.AhvResourceConfig oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.AhvResourceConfig' - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.EsxResourceConfig' labels: type: array description: Labels for this resource config. Its a key value pair of strings items: $ref: '#/components/schemas/common.v1.0.config.KVStringPair' client: minLength: 1 type: string description: Name of client config to use. example: string additionalProperties: false lifecycle.v4.2.svcmgr.ClusterNetworkConfig: required: - name - network type: object properties: name: minLength: 1 type: string description: Name of the network configuration. example: string dnsServers: type: array description: List of DNS servers to be used by this configuration. items: $ref: '#/components/schemas/common.v1.0.config.IPv4Address' gatewayIp: $ref: '#/components/schemas/common.v1.0.config.IPv4Address' ipRanges: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.IpRange' esxLocation: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.VcenterLocation' netmask: $ref: '#/components/schemas/common.v1.0.config.IPv4Address' network: minLength: 1 type: string description: Network managed by the IPAM (IP address management) entity. example: string additionalProperties: false description: Cluster Network configuration. lifecycle.v4.2.svcmgr.LoadBalancerConfigObject: required: - instances - name type: object properties: name: maxLength: 16 minLength: 1 pattern: "^(([a-z]|[a-z][a-z0-9-]*[a-z0-9]))*([a-z]|[a-z][a-z0-9-]*[a-z0-9])$" type: string description: Name of the Load Balancer configuration. The name should be unique for every configuration. example: string instances: maxItems: 16 minItems: 1 type: array items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.LoadBalancer' configType: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.LoadBalancerConfigType' resourceConfig: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.LoadBalancerResourceConfig' mspUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: UUID of the MSP wanting to use this LB. example: f097cd2a-9620-49b6-821f-109e3dfd1c9b type: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.LoadBalancerType' Action: type: string description: Action to be taken on load balancer. enum: - deploy Kind: type: string description: Kind of LB such as envoyproxy etc. enum: - envoyproxy additionalProperties: false description: Load balancer configuration of the cluster. lifecycle.v4.2.svcmgr.LoadBalancer: type: object properties: networkConfig: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.LoadBalancerNetworkConfig' id: type: string description: Identifier for each load balancer. This is generated during cluster creation. readOnly: true example: string additionalProperties: false description: Load balancer representing id and network config for it. lifecycle.v4.2.svcmgr.LoadBalancerConfigType: type: string description: "Defines the type of configuration, static, dynamic etc." enum: - STATIC - DYNAMIC - $UNKNOWN - $REDACTED x-enumDescriptions: $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. lifecycle.v4.2.svcmgr.LoadBalancerResourceConfig: description: load balancer vm resource configuration. allOf: - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.VmResourceConfig' - type: object properties: goldImageRef: type: string description: Gold image name/UUID. example: string goldImageVersion: type: string description: OS version of the gold image. example: string labels: type: array description: Labels for this resource configuration. Its a key value pair of strings. items: $ref: '#/components/schemas/common.v1.0.config.KVStringPair' additionalProperties: false lifecycle.v4.2.svcmgr.LoadBalancerType: type: string description: "Type of load balancer such as VM, hardware load balancer, container,\ \ etc." enum: - VM - CONTAINER_MASTERS - $UNKNOWN - $REDACTED x-enumDescriptions: VM: Load Balancer instance should run on a separate VM. $UNKNOWN: | Unknown value. CONTAINER_MASTERS: Load Balancer instance should run as a container on the same node as K8s master. $REDACTED: | Redacted value. lifecycle.v4.2.svcmgr.LoadBalancerNetworkConfig: required: - accessInterfaces type: object properties: vmNetworkConfig: required: - $objectType properties: $objectType: type: string example: lifecycle.v4.svcmgr.AhvNetworkResourceConfig oneOf: - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.AhvNetworkResourceConfig' - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.EsxNetworkResourceConfig' accessInterfaces: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.LoadBalancerAccessInterface' client: type: string description: Name of the client configuration for the load balancer. example: string additionalProperties: false description: Network configuration of the load balancer instance. lifecycle.v4.2.svcmgr.AhvNetworkResourceConfig: required: - clusterId description: Network resources for Ahv. allOf: - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.VmNetworkResourceConfig' - type: object properties: nicType: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.NicType' nics: type: array description: Define multiple NICs for AHV Platform. items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.AhvNic' additionalProperties: false lifecycle.v4.2.svcmgr.EsxNetworkResourceConfig: description: Network resources for Esx. allOf: - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.VmNetworkResourceConfig' - type: object properties: location: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.VcenterLocation' nics: type: array description: Define multiple NICs for ESX Platform. items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.EsxNic' additionalProperties: false lifecycle.v4.2.svcmgr.LoadBalancerAccessInterface: required: - network - subnet type: object properties: cidr: pattern: "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$" type: string description: CIDR (Classless Inter-Domain Routing) address of the load balancer. example: string ips: type: array description: Access Interface IPs of the load balancer. items: $ref: '#/components/schemas/common.v1.0.config.IPv4Address' subnet: type: string description: Subnet configuration of the load balancer. example: sub1 network: type: string description: Network identifier of the load balancer. example: string additionalProperties: false description: | An access interface is a user's notion of a named load balancer network. It abstracts out the network details from developers and service deployers (dev-ops). The name should be something that defines the positioning of the load balancer in the data center. e.g. "corp", "wan", "dc", "it", "it-hr". Currently in a given subdomain - the interface should be unique - which greatly simplifies what the service deployer has to specify to expose the service. A single load balancer defines one or more interfaces at load balancer creation time. lifecycle.v4.2.svcmgr.VmNetworkResourceConfig: required: - network type: object properties: network: minLength: 1 type: string description: Network id to be used for this vm config. example: string clusterId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Cluster Id of the Prism Element which hosts the Kubernetes cluster. example: 86298673-5cec-4200-8f96-d2caa1c2d168 additionalProperties: false description: Network resources for Vm. lifecycle.v4.2.svcmgr.NicType: type: string description: Defines the type of NIC used for the network configuration. enum: - NORMAL - DIRECT - $UNKNOWN - $REDACTED x-enumDescriptions: $UNKNOWN: | Unknown value. DIRECT: NICs are inserted in br0. NORMAL: NICs are are inserted in br0.local. $REDACTED: | Redacted value. lifecycle.v4.2.svcmgr.AhvNic: allOf: - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.Nic' - type: object properties: nicType: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.NicType' numQueues: type: integer format: int64 example: 23 additionalProperties: false lifecycle.v4.2.svcmgr.Nic: type: object properties: network: type: string example: string nicUsage: minItems: 1 type: array items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.NicUsage' additionalProperties: false lifecycle.v4.2.svcmgr.NicUsage: type: string description: "Nic usage is used to signify the purpose of Nic. It can be one\ \ of MANAGEMENT, DATA, ALL, UNMANAGED, INFRASTRUCTURE." enum: - MANAGEMENT - DATA - ALL - UNMANAGED - INFRASTRUCTURE - $UNKNOWN - $REDACTED x-enumDescriptions: ALL: ALL MANAGEMENT: MANAGEMENT DATA: DATA INFRASTRUCTURE: INFRASTRUCTURE $UNKNOWN: | Unknown value. $REDACTED: | Redacted value. UNMANAGED: UNMANAGED lifecycle.v4.2.svcmgr.VcenterLocation: type: object properties: clusterName: minLength: 1 type: string description: Cluster name in Vcenter. example: string datacenter: minLength: 1 type: string description: Data center name in Vcenter. example: string vcenterIp: $ref: '#/components/schemas/common.v1.0.config.IPv4Address' vcenterPort: pattern: "^((6553[0-5])|(655[0-2][0-9])|(65[0-4][0-9]{2})|(6[0-4][0-9]{3})|([1-5][0-9]{4})|([0-5]{0,5})|([0-9]{1,4}))$" type: integer description: Vcenter Port. example: 3260 additionalProperties: false description: Location configuration of the VCenter server. lifecycle.v4.2.svcmgr.EsxNic: allOf: - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.Nic' - type: object additionalProperties: false lifecycle.v4.2.svcmgr.VmResourceConfig: type: object properties: cpu: minimum: 1 type: integer description: Number of VCPUs to be allocated to the vm. format: int64 example: 4 diskMib: type: integer description: Memory requirements of VM. format: int64 example: 40960 memoryMib: type: integer description: Memory requirements of VM. format: int64 example: 8192 additionalProperties: false description: Resource configuration for the vm. lifecycle.v4.2.svcmgr.NutanixStorageClass: required: - clusterRef type: object properties: clusterRef: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: Nutanix Cluster Reference. example: 78617396-8caf-48c2-b98d-1c3224305cbb isFlashMode: type: boolean example: true fileSystem: type: string description: File system of the storage volume. example: string storageContainer: type: string description: Name of the storage container to be used. example: string isHypervisorAttached: type: boolean description: Indicates if the storage class uses hypervisor-attached mode in CSI 3.x. example: false additionalProperties: false lifecycle.v4.2.svcmgr.AhvClientConfig: required: - prismIp - prismPort description: Ahv client configuration. allOf: - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.BaseClientConfig' - type: object properties: prismIp: $ref: '#/components/schemas/common.v1.0.config.IPv4Address' prismPort: pattern: "^((6553[0-5])|(655[0-2][0-9])|(65[0-4][0-9]{2})|(6[0-4][0-9]{3})|([1-5][0-9]{4})|([0-5]{0,5})|([0-9]{1,4}))$" type: integer description: Prism Element Port. format: int64 example: 3260 serviceName: type: string example: string caChain: type: string description: client config CA (Certificate Authority) chain. example: string additionalProperties: false lifecycle.v4.2.svcmgr.EsxClientConfig: required: - vcenterIp - vcenterPort description: Esx client configuration. allOf: - $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.BaseClientConfig' - type: object properties: vcenterIp: $ref: '#/components/schemas/common.v1.0.config.IPv4Address' vcenterPort: pattern: "^((6553[0-5])|(655[0-2][0-9])|(65[0-4][0-9]{2})|(6[0-4][0-9]{3})|([1-5][0-9]{4})|([0-5]{0,5})|([0-9]{1,4}))$" type: integer description: Vcenter Port. example: 3260 extensionKey: minLength: 1 type: string description: VCenter extension Key. example: string isInsecure: type: boolean description: For insecure tls connection. example: false thumbPrint: minLength: 1 type: string description: TLS certificate thumbprint. example: string additionalProperties: false lifecycle.v4.2.svcmgr.BaseClientConfig: type: object properties: certificate: type: string description: X.509 certificate to be used for accessing the cluster. example: string key: type: string description: X.509 key to be used for accessing the cluster. example: string username: minLength: 1 type: string description: UserName to be used for accessing the cluster. example: string password: type: string description: Password to be used for accessing the cluster. example: string additionalProperties: false lifecycle.v4.2.svcmgr.AhvResourceConfig: required: - networkResource type: object properties: vmResource: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.VmResourceConfig' networkResource: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.AhvNetworkResourceConfig' additionalProperties: false description: AHV platform specific config. lifecycle.v4.2.svcmgr.EsxResourceConfig: required: - networkResource type: object properties: vmResource: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.VmResourceConfig' networkResource: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.EsxNetworkResourceConfig' additionalProperties: false description: ESX platform specific config. lifecycle.v4.2.svcmgr.IpRange: required: - endIp - startIp type: object properties: startIp: $ref: '#/components/schemas/common.v1.0.config.IPv4Address' endIp: $ref: '#/components/schemas/common.v1.0.config.IPv4Address' additionalProperties: false description: Range of Ips that can be used by the configuration. lifecycle.v4.2.svcmgr.ClusterUpgradeInfo: required: - clusterExtId - compatibleVersions - currentVersion type: object properties: clusterExtId: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: External identifier of the cluster. example: f6db3e87-e356-493a-b5ec-414ab8ca36a4 currentVersion: type: string description: Current version of the cluster. example: string compatibleVersions: type: array description: List of compatible versions for the cluster. items: type: string example: string additionalProperties: false description: Cluster upgrade information. lifecycle.v4.2.svcmgr.Health: type: object properties: status: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.Status' healthComponents: type: array items: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.HealthComponent' additionalProperties: false lifecycle.v4.2.svcmgr.Status: type: string description: Status of the service. example: "[\"UP\",\"DOWN\"]" enum: - UP - DOWN - $UNKNOWN lifecycle.v4.2.svcmgr.HealthComponent: type: object properties: name: type: string description: Name of the component. example: string status: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.Status' details: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.ComponentDetails' additionalProperties: false description: Health of the Component. lifecycle.v4.2.svcmgr.ComponentDetails: type: object properties: messages: type: array description: Messages published by the component. items: type: string example: string errorMessage: type: string description: Error details if any. example: string timestamp: type: string description: Time when the health is checked. format: date-time example: 2009-09-23T14:30:00-07:00 numFailures: type: integer description: Number of failures since the last success. example: 4 firstFailureTime: type: string description: Time when the first health failure is seen. format: date-time example: 2009-09-23T14:30:00-07:00 additionalProperties: false lifecycle.v4.2.svcmgr.History: type: object properties: name: type: string example: pc2020.10 version: pattern: "^(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)$" type: string example: 1.0.0 apptype: type: string example: Service enum: - Service - Application clusterUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 17c7d6ff-8d53-4726-bd01-07877a718420 uuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: ed24af80-9880-434d-9a13-132fe438c4a7 parentAppUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 4ddad9d7-b3fe-42fb-9437-f8cc3b9f03ab action: type: string example: Install status: type: string example: Success message: type: string example: string taskUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 8d051998-8aef-4b98-97b9-d05b0dc19ee3 createdTimestamp: type: string format: date-time example: 2009-09-23T14:30:00-07:00 additionalProperties: false lifecycle.v4.2.svcmgr.Info: type: object properties: environment: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.Environment' chartRepositoryUri: pattern: "^((http[s]?):\\/)?\\/?([^:\\/\\s]*)((\\/\\w+)*(:[0-9]+)*?\\/)([\\\ w\\-\\.]+[^#?\\s]+)(.*)?(#[\\w\\-]+)?$" type: string example: https://github.com/nutanix-core/releases-helm-staging deployment: $ref: '#/components/schemas/lifecycle.v4.2.svcmgr.Deployment' isAirGapEnabled: type: boolean example: false airGapServerUri: pattern: "^((http[s]?):\\/)?\\/?([^:\\/\\s]*)((\\/\\w+)*(:[0-9]+)*?\\/)([\\\ w\\-\\.]+[^#?\\s]+)(.*)?(#[\\w\\-]+)?$" type: string example: https://www.example-corp.com:1173?query=quis version: pattern: "^(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)$" type: string example: 1.0.25 additionalProperties: false lifecycle.v4.2.svcmgr.Environment: type: string example: "[\"DEV\",\"STAGING\",\"RELEASE\"]" enum: - DEV - STAGING - RELEASE - $UNKNOWN lifecycle.v4.2.svcmgr.Deployment: type: string example: "[\"ONPREM\",\"AZURE\",\"AWS\",\"GCP\"]" enum: - ONPREM - AZURE - AWS - GCP - $UNKNOWN lifecycle.v4.2.svcmgr.RegistryBundle: required: - filepath type: object properties: filepath: type: string example: https://download.nutanix.com/lcm/2.0 clusterUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string description: "UUID of a cluster, optional. If not specified, the default\ \ controller_msp will be used" example: d8e27651-e47b-492b-9f92-82b71197bddd additionalProperties: false lifecycle.v4.2.svcmgr.PostServiceResponse: type: object properties: serviceUUID: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 966e5bea-6b71-4314-b769-a250243692a9 taskUuid: pattern: "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" type: string example: 7447205a-997e-4f9e-a4e2-c3bf5f116c3b additionalProperties: false common.v1.0.config.KVStringPair: type: object properties: name: maxLength: 128 minLength: 3 type: string description: The key of this key-value string pair example: string value: type: string description: The value associated with the key for this key-value string pair default: "" additionalProperties: false securitySchemes: basicAuthScheme: type: http scheme: basic apiKeyAuthScheme: type: apiKey name: X-ntnx-api-key in: header