Last updated: 04-20-2026
Download OpenAPI specification:
Nutanix Move (Move) is a cross-hypervisor mobility solution to move VMs with minimal downtime. Move helps streamline 'lift-and-shift' virtual machine (VM) migrations to a Nutanix Enterprise Cloud. Move provides:
This document covers APIs that are available in Move-6.2.0.
Refer to the Move user guide for more information related to the supported source to target migration details.
Note: Since the infrastructure underneath is completely different, a small downtime is incurred during cutover from any of the above sources to targets.
Move uses JWT token based bearer authentication.
The user provides username and password once to generate an authentication token (using the login API). This authentication token is added as an HTTP Authorization header every time a request is sent.
It is advised that the user revoke the authentication token using the Revoke API after completing required tasks.
Error codes
List of HTTP Status codes returned by Move application:
| Error codes | Messages |
|---|---|
| 200 | Successful operation |
| 201 | Created |
| 202 | Accepted |
| 204 | No Content |
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 409 | Conflict |
| 422 | Unprocessable Entity |
| 500 | Internal Server Error |
| 501 | Not Implemented |
| 503 | Service unavailable |
This documentation helps in familiarizing with Nutanix Move V2 API workflow. The API's need to be executed in the following sequence to successfully migrate a VM using the Move application.
Authentication:
Inventory:
Migration:
Create a Migration plan by providing source information, target information, network mappings, schedule settings, and workload.
Prepare the VMs for Migration– in manual or automatic mode. If the preparation mode is set to 'manual', OS specific scripts are to be executed manually to prepare the source VMs.
Perform readiness checks to confirm if that particular migration plan is ready to start.
Start the Migration plan and wait for VMs to reach the cutover state. User can view workload details for a migration plan and the list of actions that can be performed on the current VM.
Perform cutover. The cutover process begins immediately and takes a few minutes. Once the cutover is complete, the VM is ready for use in the target provider.
Application:
Check if an upgrade is available and initiate an upgrade Users can also upload files to do an offline upgrade of the Move application.
In case of issues, the support bundle can be downloaded to provide logs and information about the current state of the VM.
Fetch information on the given supported agent provided as a query parameter.
| name required | string Value: "nwagent" The type of agents whose information is to be fetched. |
| checkConnectivity | boolean Check if a connection can be established at the moment. |
curl --request GET \ --url https://www.nutanix.dev//move/v2/agent \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "APIVersion": "2.2.0",
- "AgentType": "nwagent",
- "AgentVersion": "1.0"
}Change Move appliance NTP servers configurations
Sample API Syntax: https://move.address/move/v2/configurations/appliance/ntpservers
Move provider configurations to be changed.
| FailedNTPServers | Array of strings List of all failed NTP servers. |
| NTPServers | Array of strings List of all available NTP servers. |
curl --request PUT \ --url https://www.nutanix.dev//move/v2/configurations/appliance/ntpservers \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "FailedNTPServers": [ "string" ], "NTPServers": [ "string" ] }'
{- "Spec": {
- "FailedNTPServers": [
- "0.",
- ""
], - "NTPServers": [
- "pool.ntp.org",
- "time.google.com"
]
}
}Change Move appliance snapshot configurations
Sample API Syntax: https://move.address/move/v2/configurations/appliance/providers/snapshots
Move provider configurations to be changed.
| CycleDurationAHV | string Snapshot cycle duration for AHV. |
| CycleDurationAWS | string Snapshot cycle duration for AWS. |
| CycleDurationAzure | string Snapshot cycle duration for Azure. |
| CycleDurationESX | string Snapshot cycle duration for ESX. |
| CycleDurationHyperV | string Snapshot cycle duration for Hyper V. |
curl --request PUT \ --url https://www.nutanix.dev//move/v2/configurations/appliance/providers/snapshots \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "CycleDurationAHV": "string", "CycleDurationAWS": "string", "CycleDurationAzure": "string", "CycleDurationESX": "string", "CycleDurationHyperV": "string" }'
{- "Spec": {
- "CycleDurationAHV": "600s",
- "CycleDurationAWS": "600s",
- "CycleDurationAzure": "600s",
- "CycleDurationESX": "600s",
- "CycleDurationHyperV": "600s"
}
}Changes the Move application information. Details such as Telemetry on, Eula Accepted and more can be edited using this API.
Sample API Syntax: https://move.address/move/v2/appinfo
Move application information to be changed.
| APIVersion | string Move API Version. |
object (AppInfo) Move application Information. |
curl --request PUT \ --url https://www.nutanix.dev//move/v2/appinfo \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "APIVersion": "string", "Spec": { "CbtApiVersion": "string", "CbtDriverLinVersion": "string", "CbtDriverWinVersion": "string", "CbtVerifyVersion": "string", "DiskRdrVersion": "string", "EulaAccepted": true, "LinuxOfflineBundleMD5": "string", "Reverse": true, "SSLExpiry": "string", "State": 0, "TelemetryOn": true, "TimezoneAbbr": "string", "UTCOffsetHHMM": "string", "Version": "string", "WindowsOfflineBundleMD5": "string" } }'
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Spec": {
- "password": "string",
- "username": "string"
}, - "Status": {
- "CbtApiVersion": "string",
- "CbtDriverLinVersion": "string",
- "CbtDriverWinVersion": "string",
- "CbtVerifyVersion": "string",
- "DiskRdrVersion": "string",
- "EulaAccepted": true,
- "LinuxOfflineBundleMD5": "string",
- "Reverse": true,
- "SSLExpiry": "string",
- "State": 0,
- "TelemetryOn": true,
- "TimezoneAbbr": "string",
- "UTCOffsetHHMM": "string",
- "Version": "string",
- "WindowsOfflineBundleMD5": "string"
}
}Configures the Move application properties. For example:
Move application properties to be configured.
| APIVersion | string Move API version. |
object (Configuration) Move application configuration information. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/configure \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "APIVersion": "string", "Spec": { "EulaAccepted": true, "TelemetryOn": true } }'
{- "Error": {
- "Message": "Invalid input parameter."
}
}GET /move/v2/supportbundle API downloads the support bundle requested earlier.
GET /move/v2/supportbundle/status API tracks the status of bundling. Once ready, use the POST /move/v2/supportbundle API to trigger the download of the support bundle containing information about the current state of the VM and logs.
Sample API Syntax: https://move.address/move/v2/supportbundle
curl --request GET \ --url https://www.nutanix.dev//move/v2/supportbundle \ --header 'Accept: application/json, application/x-gzip' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
"string"Gets the Move appliance configurations.
Sample API Syntax: https://move.address/move/v2/configurations/appliance
curl --request GET \ --url https://www.nutanix.dev//move/v2/configurations/appliance \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \
{- "Spec": {
- "DockerIP": "172.17.0.11",
- "NTPServers": [
- "pool.ntp.org",
- "time.google.com"
], - "ProviderConfig": {
- "ConfigurationsAHV": {
- "CycleDuration": "600s"
}, - "ConfigurationsAWS": {
- "CycleDuration": "600s"
}, - "ConfigurationsAzure": {
- "CycleDuration": "600s"
}, - "ConfigurationsESX": {
- "CycleDuration": "600s"
}, - "ConfigurationsHyperV": {
- "CycleDuration": "600s"
}
}
}
}Gets the Move appliance docker bridge IP.
Sample API Syntax: https://move.address/move/v2/configurations/appliance/dockerip
curl --request GET \ --url https://www.nutanix.dev//move/v2/configurations/appliance/dockerip \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \
{- "Spec": {
- "DockerIp": "172.17.0.1"
}
}Gets the Move appliance hostname. Sample API syntax: https://move.address/move/v2/configurations/appliance/ntpservers
curl --request GET \ --url https://www.nutanix.dev//move/v2/configurations/appliance/hostname \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \
{- "Spec": {
- "Hostname": "xtract-move"
}
}Gets the Move appliance NTP servers.
Sample API Syntax: https://move.address/move/v2/configurations/appliance/ntpservers
curl --request GET \ --url https://www.nutanix.dev//move/v2/configurations/appliance/ntpservers \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \
{- "Spec": {
- "NTPServers": [
- "pool.ntp.org",
- "time.google.com"
]
}
}Gets the Move appliance snapshots configurations.
Sample API Syntax: https://move.address/move/v2/configurations/appliance/providers/snapshots
curl --request GET \ --url https://www.nutanix.dev//move/v2/configurations/appliance/providers/snapshots \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \
{- "Spec": {
- "CycleDurationAHV": "600s",
- "CycleDurationAWS": "600s",
- "CycleDurationAzure": "600s",
- "CycleDurationESX": "600s",
- "CycleDurationHyperV": "600s"
}
}Gets the Move appliance SSL certificate.
Sample API syntax: https://move.address/move/v2/configurations/appliance/sslcertificate
curl --request GET \ --url https://www.nutanix.dev//move/v2/configurations/appliance/sslcertificate \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \
{- "Spec": {
- "CommonName": "nutanix.local",
- "Country": "US",
- "Expiry": "Jul 17 08:20:38 2025 GMT",
- "KeyType": "rsaEncryption(2048 bit)",
- "Location": "San Jose",
- "Organization": "Nutanix",
- "OrganizationUnit": "Manageability",
- "SigningAlgorithm": "sha256WithRSAEncryption",
- "State": "CA",
- "Warning": "Certificate will expire soon"
}
}Gets the Move application information such as:
curl --request GET \ --url https://www.nutanix.dev//move/v2/appinfo \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \
{- "Status": {
- "CbtApiVersion": "3.5.0",
- "CbtDriverLinVersion": "3.5.0",
- "CbtDriverWinVersion": "3.5.0",
- "CbtVerifyVersion": "3.5.0",
- "DiskRdrVersion": "3.5.0",
- "EulaAccepted": true,
- "GrafanaServiceGroupState": "RUNNING",
- "Reverse": true,
- "State": 1,
- "TelemetryOn": true,
- "Timezone": "Pacific Standard Time",
- "TimezoneAbbr": "PST",
- "UTCOffsetHHMM": "-08:00",
- "Version": "3.5.2"
}
}Tracks the status of support bundle containing information about the current state of the VM and logs.
Sample API Syntax: https://move.address/move/v2/supportbundle/status
curl --request GET \ --url https://www.nutanix.dev//move/v2/supportbundle/status \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "SupportBundleResponse": {
- "State": "InProgress"
}
}Gets the state of Move appliance docker services or service groups.
Sample API syntax: https://move.address/move/v2/configurations/appliance/services
| svc | Array of strings Comma-separated name(s) of the service(s) for which the status is to be fetched. |
| svcgrp | Array of strings Comma-separated name(s) of the service group(s) for which the status is to be fetched. |
curl --request GET \ --url https://www.nutanix.dev//move/v2/configurations/appliance/services \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "ServiceGroups": [
- {
- "Action": [
- "START"
], - "Error": "string",
- "ServiceGroupName": "string",
- "State": "RUNNING"
}
], - "Services": [
- {
- "Action": [
- "START"
], - "Error": "string",
- "ServiceName": "string",
- "State": "RUNNING"
}
]
}POST /move/v2/supportbundle API requests the support bundle containing information about the current state of the VM and logs.
Related APIs
curl --request POST \ --url https://www.nutanix.dev//move/v2/supportbundle \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}Update Move appliance SSL certificate configurations.
Sample API syntax: https://move.address/move/v2/configurations/appliance/sslcertificate
| Action required | string Move appliance SSL certificate actions. |
| PrivateKey | string <binary> The private key to be updated. |
| SSLCertificate | string <binary> The SSL certificate to be updated. |
| SSLCertificateChain | string <binary> The SSL certificate chain to be updated. |
curl --request PUT \ --url https://www.nutanix.dev//move/v2/configurations/appliance/sslcertificate \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: multipart/form-data' \ --data '{ "Action": "string", "PrivateKey": null, "SSLCertificate": null, "SSLCertificateChain": null }'
{- "Spec": {
- "CommonName": "nutanix.local",
- "Country": "US",
- "Expiry": "Jul 17 08:20:38 2025 GMT",
- "KeyType": "rsaEncryption(2048 bit)",
- "Location": "San Jose",
- "Organization": "Nutanix",
- "OrganizationUnit": "Manageability",
- "SigningAlgorithm": "sha256WithRSAEncryption",
- "State": "CA",
- "Warning": "Certificate will expire soon"
}
}Update the state of the Move appliance docker service(s) or service group(s).
Sample API syntax: https://move.address/move/v2/configurations/appliance/service
Service(s) or service group(s) with their states to be changed.
Array of objects List of service group(s) with action to perform. | |
Array of objects List of service(s) with action to perform. |
curl --request PUT \ --url https://www.nutanix.dev//move/v2/configurations/appliance/services \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "ServiceGroups": [ {} ], "Services": [ {} ] }'
{- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}Updates Move appliance hostname configurations.
Sample API syntax: https://move.address/move/v2/configurations/appliance/ntpservers
Move provider configurations to be updated.
| Hostname | string Hostname. |
curl --request PUT \ --url https://www.nutanix.dev//move/v2/configurations/appliance/hostname \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "Hostname": "string" }'
{- "Spec": {
- "Hostname": "xtract-move"
}
}Create a new bandwidth capacity policy
The bandwidth capacity policy details
| IsActive | boolean Default: true Indicates if the policy is active or not. |
| MatchExpression required | string The expression used to determine if the policy applies to a particular VM. |
| Name required | string Name of the policy. |
required | Array of objects (BandwidthCapSchedule) The list of cron schedules |
required | Array of objects (BandwidthCapWindowSchedule) The list of cron schedules with start and end time details. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/bwcap/policies \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "IsActive": true, "MatchExpression": "string", "Name": "string", "Schedules": [ { "BwcapMbps": 0, "CronExpr": "string" } ], "WindowSchedules": [ { "BwcapMbps": 0, "DaysOfTheWeek": [ "string" ], "EndTimeHours": 0, "EndTimeMins": 0, "StartTimeHours": 0, "StartTimeMins": 0 } ] }'
{- "BandwidthCapPolicyDef": {
- "IsActive": true,
- "MatchExpression": "string",
- "Name": "string",
- "Schedules": [
- {
- "BwcapMbps": 0,
- "CronExpr": "string"
}
], - "WindowSchedules": [
- {
- "BwcapMbps": 0,
- "DaysOfTheWeek": [
- "SUN"
], - "EndTimeHours": 23,
- "EndTimeMins": 59,
- "StartTimeHours": 23,
- "StartTimeMins": 59
}
]
}, - "CreatedAt": "2019-08-24T14:15:22Z",
- "UUID": "string",
- "UpdatedAt": "2019-08-24T14:15:22Z"
}Delete a specific bandwidth capacity policy
| policyuuid required | string The UUID of the policy |
curl --request DELETE \ --url https://www.nutanix.dev//move/v2/plans/bwcap/policies/{policyuuid} \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}Get the bandwidth capacity policies
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/bwcap/policies/list \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
[- {
- "BandwidthCapPolicyDef": {
- "IsActive": true,
- "MatchExpression": "string",
- "Name": "string",
- "Schedules": [
- {
- "BwcapMbps": 0,
- "CronExpr": "string"
}
], - "WindowSchedules": [
- {
- "BwcapMbps": 0,
- "DaysOfTheWeek": [
- "SUN"
], - "EndTimeHours": 23,
- "EndTimeMins": 59,
- "StartTimeHours": 23,
- "StartTimeMins": 59
}
]
}, - "CreatedAt": "2019-08-24T14:15:22Z",
- "UUID": "string",
- "UpdatedAt": "2019-08-24T14:15:22Z"
}
]Get details of a specific bandwidth capacity policy
| policyuuid required | string The UUID of the policy |
curl --request GET \ --url https://www.nutanix.dev//move/v2/plans/bwcap/policies/{policyuuid} \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "BandwidthCapPolicyDef": {
- "IsActive": true,
- "MatchExpression": "string",
- "Name": "string",
- "Schedules": [
- {
- "BwcapMbps": 0,
- "CronExpr": "string"
}
], - "WindowSchedules": [
- {
- "BwcapMbps": 0,
- "DaysOfTheWeek": [
- "SUN"
], - "EndTimeHours": 23,
- "EndTimeMins": 59,
- "StartTimeHours": 23,
- "StartTimeMins": 59
}
]
}, - "CreatedAt": "2019-08-24T14:15:22Z",
- "UUID": "string",
- "UpdatedAt": "2019-08-24T14:15:22Z"
}Update a specific bandwidth capacity policy
| policyuuid required | string The UUID of the policy |
The bandwidth capacity policy details
| IsActive | boolean Default: true Indicates if the policy is active or not. |
| MatchExpression required | string The expression used to determine if the policy applies to a particular VM. |
| Name required | string Name of the policy. |
required | Array of objects (BandwidthCapSchedule) The list of cron schedules |
required | Array of objects (BandwidthCapWindowSchedule) The list of cron schedules with start and end time details. |
curl --request PUT \ --url https://www.nutanix.dev//move/v2/plans/bwcap/policies/{policyuuid} \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "IsActive": true, "MatchExpression": "string", "Name": "string", "Schedules": [ { "BwcapMbps": 0, "CronExpr": "string" } ], "WindowSchedules": [ { "BwcapMbps": 0, "DaysOfTheWeek": [ "string" ], "EndTimeHours": 0, "EndTimeMins": 0, "StartTimeHours": 0, "StartTimeMins": 0 } ] }'
{- "BandwidthCapPolicyDef": {
- "IsActive": true,
- "MatchExpression": "string",
- "Name": "string",
- "Schedules": [
- {
- "BwcapMbps": 0,
- "CronExpr": "string"
}
], - "WindowSchedules": [
- {
- "BwcapMbps": 0,
- "DaysOfTheWeek": [
- "SUN"
], - "EndTimeHours": 23,
- "EndTimeMins": 59,
- "StartTimeHours": 23,
- "StartTimeMins": 59
}
]
}, - "CreatedAt": "2019-08-24T14:15:22Z",
- "UUID": "string",
- "UpdatedAt": "2019-08-24T14:15:22Z"
}Gets regional pricing details for the specified Provider UUID. The information retrieved includes:
| provideruuid required | string UUID of the provider |
| region required | string The region ( one of us-east-1 or ap-south-1 ) |
curl --request GET \ --url https://www.nutanix.dev//move/v2/cloudpricing/{provideruuid}/{region} \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \
{- "CostPerThousandGetSnapShotBlockAPICalls": 0.1,
- "DataEgressCostPerGiB": 0.1,
- "DeltaSyncDataOverheadMultiplier": 0.1
}Cancels the events CSVfile download if the download is in a ready or in-progress state.
Sample API Syntax: https://move.address/move/v2/events/download/cancel
curl --request GET \ --url https://www.nutanix.dev//move/v2/events/download/cancel \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}POST /move/v2/events/download API requests to download all events as per the filter criterion
Sample API Syntax: https://move.address/move/v2/events/download
Input to download the events csv file
object (EventsFilter) Filter for listing Move Events. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/events/download \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "Filter": { "EventNames": [ "string" ], "EventStatuses": [ "string" ], "EventTypes": [ "string" ], "IamNames": [ "string" ], "MpNames": [ "string" ], "SourcePaths": [ "string" ], "TargetPaths": [ "string" ], "UserNames": [ "string" ], "VmNames": [ "string" ] } }'
{- "TaskUuid": "60e7d9b1-e34e-4d60-9bcd-0411d7a448bf"
}GET /move/v2/events/download downloads the events csv file.
GET /move/v2/download/status API tracks the status of csv file creation. Use the POST /move/v2/events/download API to trigger the events csv file creation.
Sample API Syntax: https://move.address/move/v2/events/download
curl --request GET \ --url https://www.nutanix.dev//move/v2/events/download \ --header 'Accept: application/x-gzip' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
Get the list of Move events.
Input :-
Get the list of events for the input entities
object (EventsFilter) Filter for listing Move Events. | |
required | object (PaginationCriteria) Used as input for lists with pagination |
curl --request POST \ --url https://www.nutanix.dev//move/v2/events \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "Filter": { "EventNames": [ "string" ], "EventStatuses": [ "string" ], "EventTypes": [ "string" ], "IamNames": [ "string" ], "MpNames": [ "string" ], "SourcePaths": [ "string" ], "TargetPaths": [ "string" ], "UserNames": [ "string" ], "VmNames": [ "string" ] }, "PaginationCriteria": { "PageNumber": 0, "RecordsPerPage": 0 } }'
{- "Events": [
- {
- "Event": {
- "CreatedTime": 1562818697155631000,
- "EndTime": 1562818697155631000,
- "EntityUuid": "c46daad6-16af-4ed5-9726-381a816e4abf",
- "EventCode": 2,
- "EventId": "63abd573-768b-4f7b-8aab-68c8ef311656",
- "EventName": "Create Snapshot",
- "EventStatus": 3,
- "EventType": 1,
- "FailureNotes": "Time out error",
- "IsCyclic": 1,
- "LastUpdatedTime": "1562818697155631000,",
- "MpName": "Migration plan 1",
- "MpUuid": "ab69b78b-f415-4b5a-8953-f1e083c1f379",
- "Notes": "Snapshot-1",
- "VmName": "VM1",
- "VmUuid": "c46daad6-16af-4ed5-9726-381a816e4abf"
}
}
], - "MetaData": {
- "EventsFilters": {
- "EventNames": {
- "FilterName": "EventNames",
- "Items": [
- "Delete All Move Snapshots",
- "Start VM Migration",
- "Cleanup Source"
]
}, - "EventStatuses": {
- "FilterName": "EventStatuses",
- "Items": [
- "Defunct",
- "Failed",
- "In Progress"
]
}, - "EventTypes": {
- "FilterName": "EventTypes",
- "Items": [
- "VM Migration",
- "Migration Plan",
- "Global",
- "Files Migration"
]
}, - "IamNames": {
- "FilterName": "IamNames",
- "Items": [
- "1.2.3.4"
]
}, - "MpNames": {
- "FilterName": "MpNames",
- "Items": [
- "MP-Azure",
- "MP-Aws"
]
}, - "SourcePaths": {
- "FilterName": "SourcePaths",
- "Items": [
- "nfs-share/dir1",
- "smb-share/dir2"
]
}, - "TargetPaths": {
- "FilterName": "TargetPaths",
- "Items": [
- "nfs-share/dir1",
- "smb-share/dir2"
]
}, - "UserNames": {
- "FilterName": "UserNames",
- "Items": [
- "user1",
- "abc@mail.com"
]
}, - "VmNames": {
- "FilterName": "VmNames",
- "Items": [
- "W2K12-300G-disk",
- "centos-8-vm-1"
]
}
}
}, - "PaginationDetails": {
- "PageNumber": 2,
- "RecordsPerPage": 10,
- "TotalPages": 5,
- "TotalRecords": 45
}
}Tracks the status of events csv file bundle
Sample API Syntax: https://move.address/move/v2/events/download/status
curl --request GET \ --url https://www.nutanix.dev//move/v2/events/download/status \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "EventsFileResponse": {
- "State": "InProgress"
}
}Deregisters an IAM provider from Move.
| id required | string <uuid> IAM provider UUID. |
IAM provider information required to deregister a provider.
| ForceDeregister | boolean Default: false Forcefully deregister IAM provider from Move. |
object (PcIamDeregisterInfo) Prism Central access information. |
curl --request DELETE \ --url https://www.nutanix.dev//move/v2/iamproviders/{id} \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Status": {
- "Message": "string",
- "State": "string"
}
}Displays all IAM providers registered with Move. Also, this API is used to fetch UI login details for IAM providers
curl --request GET \ --url https://www.nutanix.dev//move/v2/iamproviders/view \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \
{- "Entities": [
- {
- "UUID": "3af948bf-72ed-4fe8-90f5-f1d3cf592c7d"
}, - {
- "DisplayName": "iam_provider_name"
},
]
}Generates authentication token from user credentials, refresh token or authorization code (generated during UI authentication) using a given IAM provider.
| id required | string <uuid> IAM provider UUID. |
| grantType required | string Enum: "PASSWORD" "AUTHORIZATION_CODE" "REFRESH_TOKEN" Type of method used for generating authentication code. |
| username | string The login username. Only considered when grant type is "PASSWORD". |
| password | string The login password. Only considered when grant type is "PASSWORD". |
| authCode | string The user authorization code. Only considered when grant type is "AUTHORIZATION_CODE". |
| refreshToken | string The refresh token. Only considered when grant type is "REFRESH_TOKEN". |
curl --request POST \ --url https://www.nutanix.dev//move/v2/iamproviders/{id}/token \ --header 'Accept: application/json' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --data '{ "authCode": "string", "grantType": "PASSWORD", "password": "string", "refreshToken": "string", "username": "string" }'
{- "AccessToken": "xxx.yyy.zzz",
- "Expiry": 1704067200,
- "IamProviderUuid": "3af948bf-72ed-4fe8-90f5-f1d3cf592c7d",
- "RefreshToken": "yyy",
- "Username": "abc@mail.com"
}Gets details of the IAM provider whose UUID is specified.
| id required | string <uuid> IAM Provider UUID. |
curl --request GET \ --url https://www.nutanix.dev//move/v2/iamproviders/{id} \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \
{- "MetaData": {
- "UUID": "3af948bf-72ed-4fe8-90f5-f1d3cf592c7d"
}, - "Spec": {
- "PcInfo": {
- "IPorFQDN": "my_pc_ip"
}, - "RolesMap": [
- {
- "Role": "MoveAdmin",
- "Usernames": [
- "user1",
- "abc@mail.com"
]
}
], - "Type": "PC",
- "UUID": "3af948bf-72ed-4fe8-90f5-f1d3cf592c7d"
}
}curl --request GET \ --url https://www.nutanix.dev//move/v2/iamproviders \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "Entities": [
- {
- "PcInfo": {
- "IPorFQDN": "my_pc_ip"
}, - "RolesMap": [
- {
- "Role": "MoveAdmin",
- "Usernames": [
- "user1",
- "abc@mail.com"
]
}
], - "Type": "PC",
- "UUID": "3af948bf-72ed-4fe8-90f5-f1d3cf592c7d"
}
]
}Registers a new IAM provider with Move.
Currently, only Prism Central is supported as an IAM provider.
IAM provider information required to register a new provider.
object (PcIamRegisterInfo) Prism Central access information. | |
Array of objects (AuthRoleMap) | |
| Type required | string Value: "PC" IAM provider type. Currently only Prism Central is supported as IAM provider. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/iamproviders \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "PcIamRegisterInfo": { "IPorFQDN": "string", "Password": "string", "Username": "string" }, "RolesMap": [ { "Groups": [ "string" ], "Role": "MoveAdmin", "Usernames": [ "string" ] } ], "Type": "PC" }'
{- "MetaData": {
- "UUID": "3af948bf-72ed-4fe8-90f5-f1d3cf592c7d"
}, - "Spec": {
- "PcInfo": {
- "IPorFQDN": "my_pc_ip"
}, - "RolesMap": [
- {
- "Role": "MoveAdmin",
- "Usernames": [
- "user1",
- "abc@mail.com"
]
}
], - "Type": "PC",
- "UUID": "3af948bf-72ed-4fe8-90f5-f1d3cf592c7d"
}
}Updates details for an existing IAM provider.
Currently, only the user list update operation is allowed.
| id required | string <uuid> IAM provider UUID. |
IAM provider information to be updated.
required | Array of objects (AuthRoleMap) |
curl --request PUT \ --url https://www.nutanix.dev//move/v2/iamproviders/{id} \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "RolesMap": [ { "Groups": [ "string" ], "Role": "MoveAdmin", "Usernames": [ "string" ] } ] }'
{- "MetaData": {
- "UUID": "3af948bf-72ed-4fe8-90f5-f1d3cf592c7d"
}, - "Spec": {
- "PcInfo": {
- "IPorFQDN": "my_pc_ip"
}, - "RolesMap": [
- {
- "Role": "MoveAdmin",
- "Usernames": [
- "user1",
- "abc@mail.com"
]
}
], - "Type": "PC",
- "UUID": "3af948bf-72ed-4fe8-90f5-f1d3cf592c7d"
}
}Deletes the uploaded virtual disk development kit (VDDK) files.
Sample API Syntax: https://move.address/move/v2/vddk
| ParamKey required | string Enum: "VDDK1" "VDDK2" The key of the VDDK library to be deleted. |
curl --request DELETE \ --url https://www.nutanix.dev//move/v2/vddk \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Status": {
- "Message": "string",
- "State": "string"
}
}Fetches information about the uploaded virtual disk development kit (VDDK) libraries.
Sample API Syntax: https://move.address/move/v2/vddk
curl --request GET \ --url https://www.nutanix.dev//move/v2/vddk \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "Status": [
- {
- "LastUpdatedDateTime": 1714031921941283800,
- "LibName": "7.0.3",
- "MD5Hash": "e3043fcc1e7e7cde573b7c4ff874754e",
- "ParamKey": "VDDK1",
- "SupportedESXiHost": [
- "5.5",
- "6.0"
], - "UploadPath": "/opt/xtract-vm/sharedlib/vddk703/lib64",
- "Uploaded": true
}
]
}Upload the virtual disk development kit (VDDK) files that are needed to perform migration from the ESXi host.
Sample API Syntax: https://move.address/move/v2/vddk/upload
| VDDK1 | string <binary> The VDDK1 is used to upload VDDK 7.0.3.1 version of VDDK library. VDDK1 is required for migration from ESXi host 5.5, 6.0 and 6.5. |
| VDDK2 | string <binary> The VDDK2 is used to upload VDDK 8.0.3.2 version of VDDK library. VDDK2 is required for migration from ESXi host => 6.7. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/vddk/upload \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: multipart/form-data' \ --data '{ "VDDK1": null, "VDDK2": null }'
{- "Status": [
- {
- "FileName": "VMware-vix-disklib-7.0.3-19513565.x86_64.tar.gz",
- "LastUpdatedDateTime": 1714031921941283800,
- "LibName": "7.0.3",
- "UploadPath": "/opt/xtract-vm/sharedlib/vddk703/lib64",
- "Uploaded": true
}, - {
- "Error": "MD5 hash of uploaded file: /tmp/vddk/db_upgrade.sql: dasdas is invalid",
- "FileName": "db_upgrade.sql",
- "UploadPath": "/tmp/vddk/db_upgrade.sql"
}
]
}Configures the Move application properties
Move application password to be configured.
| APIVersion | string Move API version |
object (ChangePassword) Change password for Move application. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/changepassword \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "APIVersion": "string", "Spec": { "NewPassword": "string", "OldPassword": "string", "UserName": "string" } }'
{- "Status": {
- "APIVersion": "string",
- "AccessToken": "string",
- "AccessTokenExpiry": 0,
- "IssuedAt": 0,
- "RefreshToken": "string",
- "RefreshTokenExpiry": 0,
- "Username": "string"
}
}Generates access/refresh token from native user credentials, refresh token or authorization code (generated during UI authentication)
| grantType required | string Enum: "PASSWORD" "REFRESH_TOKEN" Type of method used for generating access/refresh code. |
| username required | string The login username. It is considered for both when the grant type is "PASSWORD" or "REFRESH_TOKEN" |
| password | string The login password. Only considered when the grant type is "PASSWORD". |
| refreshToken | string The refresh token. Only considered when the grant type is "REFRESH_TOKEN". |
| expiry | integer Optional timestamp (in seconds since epoch) to denote how long the token has to be valid, if not provided the default expiry of 15 minutes will be taken. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/token \ --header 'Accept: application/json' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --data '{ "expiry": 0, "grantType": "PASSWORD", "password": "string", "refreshToken": "string", "username": "string" }'
{- "APIVersion": "string",
- "AccessToken": "string",
- "AccessTokenExpiry": 0,
- "IssuedAt": 0,
- "RefreshToken": "string",
- "RefreshTokenExpiry": 0,
- "Username": "string"
}Revokes the authentication token. Authentication token is obtained by using POST /move/v2/users/login API. You need the token to access APIs after you log in for the first time.
Sample API Syntax: https://move.address/move/v2/token/revoke
Refresh the token that needs to be validated.
| RevokeAllAuthTokens | boolean Whether to revoke all the longer validity auth tokens |
object (Token) Authentication Token | |
| Username | string username of the user for which the tokens needs to be revoked. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/token/revoke \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "RevokeAllAuthTokens": true, "Spec": { "Token": "string" }, "Username": "string" }'
{- "AllAuthTokensRevoked": true,
- "Status": {
- "Token": "string"
}
}curl --request GET \ --url https://www.nutanix.dev//move/v2/perses/token \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "access_token": "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJudXRhbml4IiwiZXhwIjoxNzUzMjQ4MTM3LCJuYmYiOjE3NTMyNDcyMzd9.2RwgzU7tDwGcZEL",
- "expiry": "0001-01-01T00:00:00Z",
- "refresh_token": "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJudXRhbml4IiwiZXhwIjoxNzUzMjQ4MTM3LCJuYmYiOjE3NTMyNDcyMzd9.2RwgzU7tDwGcZEL",
- "token_type": "Bearer"
}Performs an action on a stage in a migration plan. It is only valid for cluster conversion.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/stage/867b4a4f-cb8c-4416-8d7e-26e033023aa4/action
| id required | string Migration plan UUID. |
| sid required | string Stage UUID. |
Request for action to be performed on the stage.
required | object Stage action spec. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/{id}/stage/{sid}/action \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "Spec": { "Action": "retry", "Entities": { "NodeUuid": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "VMUuids": [ "b4d15375-1097-4c96-a4c4-4cb5809b05bb" ] } } }'
{- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}Cancels scheduled/ongoing migration for the provided plan UUID.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/cancel
| id required | string Migration plan UUID |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/{id}/cancel \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json, application/octet-stream' \
{- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}Creates a new migration plan.
Information required to create a migration plan include:
Information required to create new migration plan.
| APIVersion | string Move API version |
object (MetaData) Metadata information | |
object (Plan) Plan information | |
| Type | string Migration Plan type |
{- "MetaData": {
- "Actions": [
- "START",
- "EDIT",
- "DELETE"
], - "CreatedTime": 1695975103130976000,
- "DataInBytes": 4404476945,
- "ElapsedTime": { },
- "ErrorReasons": null,
- "FilesStateCounts": { },
- "FilesStatus": null,
- "Name": "mp-1695975048515649",
- "NumEntities": 1,
- "NumVMs": 1,
- "Schedule": {
- "ScheduleAtEpochSec": -1
}, - "SourceInfo": {
- "Name": "10.46.17.155",
- "Type": "VMWARE_ESXI_VCENTER",
- "UUID": "8479b87b-bf1d-4cc0-b9a7-cdfbf1ecb06f"
}, - "StateString": "MigrationPlanStateUninitialized",
- "StatusString": "StatusUnknown",
- "TargetInfo": {
- "Cluster": {
- "Name": "auto_cluster_prod_aketi_pushkaram_4f392f35f214",
- "Type": "AOS_AHV_PE",
- "UUID": "0005d054-6866-fff1-0000-000000029844"
}, - "Name": "10.46.17.178",
- "Type": "AOS_AHV_PE",
- "UUID": "f5524029-156f-4ce5-a29c-082f681b211d"
}, - "UUID": "2df12bd0-2399-49ec-ac85-740963b9ed0b",
- "VMStateCounts": { },
- "VMStatus": null,
- "ValidationWarnings": null
}, - "Spec": {
- "Name": "mp-1695975048515649",
- "NetworkMappings": [
- {
- "SourceNetworkID": "static",
- "TargetNetworkID": "0380048f-cb9e-40ee-8437-1103ea9d130b",
- "TargetSecurityGroupIDs": null,
- "TestNetworkID": "af013a14-f9d3-44b1-82bd-32ba1db2a6cb",
- "TestSecurityGroupIDs": null
}, - {
- "SourceNetworkID": "Net-115",
- "TargetNetworkID": "b3b4dd7b-5a63-4b2f-a4b1-10562193504d",
- "TargetSecurityGroupIDs": null,
- "TestNetworkID": "af013a14-f9d3-44b1-82bd-32ba1db2a6cb",
- "TestSecurityGroupIDs": null
}, - {
- "SourceNetworkID": "VM Network",
- "TargetNetworkID": "c4b44de7-a123-4391-a1ca-d78c733ba2a1",
- "TargetSecurityGroupIDs": null,
- "TestNetworkID": "af013a14-f9d3-44b1-82bd-32ba1db2a6cb",
- "TestSecurityGroupIDs": null
}
], - "SourceInfo": {
- "ProviderUUID": "8479b87b-bf1d-4cc0-b9a7-cdfbf1ecb06f"
}, - "TargetInfo": {
- "AOSProviderAttrs": {
- "ClusterUUID": "0005d054-6866-fff1-0000-000000029844",
- "ContainerUUID": "3f1023bb-6255-424c-9c40-d1fb0963d08a"
}, - "ProviderUUID": "f5524029-156f-4ce5-a29c-082f681b211d"
}, - "UUID": "2df12bd0-2399-49ec-ac85-740963b9ed0b",
- "Workload": {
- "Shares": null,
- "Type": "VM",
- "VMs": [
- {
- "AllowUVMOps": true,
- "DiskConfig": {
- "AddCdrom": false
}, - "GuestPrepMode": "auto",
- "InstallNGT": true,
- "PowerOffForpRDMtovRDMConversion": true,
- "UninstallGuestTools": true,
- "VMCustomizeType": "static",
- "VMPriority": "Medium",
- "VMReference": {
- "UUID": "61a0e007-05c9-5df7-bf3f-2cd67ee10e43",
- "VMID": "vm-39419"
}
}
]
}
}, - "Status": { }
}Given a migration plan UUID and a valid workload UUID, this API updates customizable workload properties in target.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/workloads/91cea36d-c857-4092-b232-d46484ee3205/custom
| id required | string Migration plan UUID |
| wid required | string Workload UUID |
Information required to update workload custom properties
curl --request PUT \ --url https://www.nutanix.dev//move/v2/plans/{id}/workloads/{wid}/custom \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "APIVersion": "string", "CustomProperties": { "Type": "VmCustomPropertiesInfo", "VmCustomPropertiesInfo": { "Source": { "GenericVmCustomProperties": { "Memory": 0, "Name": "string", "NumCDROMs": 0, "NumCoresPerSocket": 0, "NumDisks": 0, "NumNICs": 0, "NumvCPUs": 0, "PowerState": "PoweredOn" }, "MimicGenericVmCustomProperties": {}, "Type": "GenericVmCustomProperties" }, "Target": { "GenericVmCustomProperties": { "Memory": 0, "Name": "string", "NumCDROMs": 0, "NumCoresPerSocket": 0, "NumDisks": 0, "NumNICs": 0, "NumvCPUs": 0, "PowerState": "PoweredOn" }, "MimicGenericVmCustomProperties": {}, "Type": "GenericVmCustomProperties" }, "VMCustomizeType": "replicate" } }, "MetaData": { "Version": "string" } }'
{- "APIVersion": "2.2.0",
- "CustomProperties": {
- "Type": "VmCustomPropertiesInfo",
- "VmCustomPropertiesInfo": {
- "OrderOfProperties": [
- {
- "DisplayName": "Name",
- "SourceName": "Name",
- "TargetName": "Name"
}, - {
- "DisplayName": "Power State",
- "SourceName": "PowerState",
- "TargetName": "PowerState"
}, - {
- "DisplayName": "vCPU(s)",
- "SourceName": "NumvCPUs",
- "TargetName": "NumvCPUs"
}, - {
- "DisplayName": "Number Of Cores Per vCPU",
- "SourceName": "NumCoresPerSocket",
- "TargetName": "NumCoresPerSocket"
}, - {
- "DisplayName": "Memory",
- "SourceName": "Memory",
- "TargetName": "Memory"
}, - {
- "DisplayName": "Number of disks",
- "SourceName": "NumDisks",
- "TargetName": "NumDisks"
}, - {
- "DisplayName": "Number of CD-ROMs",
- "SourceName": "NumCDROMs",
- "TargetName": "NumCDROMs"
}, - {
- "DisplayName": "Number of NICs",
- "SourceName": "NumNICs",
- "TargetName": "NumNICs"
}
], - "Source": {
- "CustomizableProperties": [ ],
- "GenericVmCustomProperties": {
- "Memory": 1073741824,
- "Name": "ajc-ce72-dnd",
- "NumCDROMs": 1,
- "NumCoresPerSocket": 1,
- "NumDisks": 1,
- "NumNICs": 1,
- "NumvCPUs": 1,
- "PowerState": "PoweredOn"
}, - "Type": "GenericVmCustomProperties"
}, - "Target": {
- "CustomizableProperties": [
- "Name",
- "PowerState",
- "NumvCPUs",
- "NumCoresPerSocket",
- "Memory"
], - "GenericVmCustomProperties": {
- "Memory": 1073741824,
- "Name": "ajc-ce72-dnd",
- "NumCDROMs": 1,
- "NumCoresPerSocket": 1,
- "NumDisks": 1,
- "NumNICs": 1,
- "NumvCPUs": 1,
- "PowerState": "PoweredOn"
}, - "Type": "GenericVmCustomProperties"
}, - "VMCustomizeType": "replicate"
}
}, - "MetaData": {
- "Version": "1.1.0"
}
}Deletes the migration plan by providing Migration Plan UUID as input.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/
| id required | string Migration plan UUID. |
curl --request DELETE \ --url https://www.nutanix.dev//move/v2/plans/{id} \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Status": {
- "Message": "string",
- "State": "string"
}
}Federates the migration plan
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/federate
| id required | string Migration plan UUID. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/{id}/federate \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Status": {
- "Message": "string",
- "State": "string"
}
}Get the migration plan details for the provided plan UUID. The details fetched include:
| id required | string Migration plan UUID. |
| IncludeVMDetails | boolean Include VM details in the API response from each migration plan in MigrationPlanSummary (deprecated). |
| IncludeEntityDetails | boolean Include entity details in the API response from each migration plan in MigrationPlanSummary (Higher priority than IncludeVMDetails). |
curl --request GET \ --url https://www.nutanix.dev//move/v2/plans/{id} \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \
{- "MetaData": {
- "Actions": [
- "START",
- "EDIT",
- "DELETE"
], - "CreatedTime": 1562818697155631000,
- "DataInBytes": 10737418240,
- "ElapsedTime": { },
- "ErrorReason": null,
- "Name": "MP-MR-_ap-south-1_AUTO_EC2_CX_SRC_DMP_S1_1",
- "NumVMs": 1,
- "Schedule": {
- "ScheduleAtEpochSec": -1
}, - "UUID": "5ef6a270-2dc1-4f71-91bb-2b7564205d1b",
- "VMStateCounts": { }
}, - "Spec": {
- "Name": "MP-MR-_ap-south-1_AUTO_EC2_CX_SRC_DMP_S1_1",
- "NetworkMappings": {
- "SourceNetworkID": "vpc-8e1c3de7",
- "TargetNetworkID": "343eaa8f-a251-4ec0-8ede-729c97f7cddc",
- "TestNetworkID": "DM_Nutest_Net"
}, - "Settings": {
- "Schedule": {
- "ScheduleAtEpochSec": -1
}
}, - "SourceInfo": {
- "AWSProviderAttrs": {
- "RegionID": "ap-south-1"
}, - "ProviderUUID": "b26dd394-8bbf-4233-86bd-79a27f1a86be"
}, - "TargetInfo": {
- "AOSProviderAttrs": {
- "ClusterUUID": "00058576-cf00-2cf4-0000-000000005bbc",
- "ContainerUUID": "0ec46875-a905-4a48-81a1-2264b3d228a0"
}, - "ProviderUUID": "bd63c6ff-46f2-4174-934c-31d7902b9e96"
}, - "UUID": "5ef6a270-2dc1-4f71-91bb-2b7564205d1b",
- "Workload": {
- "Type": "VM",
- "VMs": [
- {
- "VMReference": {
- "UUID": "00000000-0000-0000-aeeb-f788350ca00c",
- "VMID": "i-0aeebf788350ca00c"
}
}
]
}
}
}Retrieves details of the ISO file required for uploading to a conversion plan.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/iso/getdetails
| id required | string Migration plan UUID. |
| HypervisorType required | string Default: "kvm" Enum: "kvm" "esx" Hypervisor type for which the ISO details are required. |
curl --request GET \ --url https://www.nutanix.dev//move/v2/plans/{id}/iso/getdetails \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "HypervisorType": "string",
- "IsIsoUploadRequired": true,
- "IsoVersions": [
- "string"
]
}Given a migration plan UUID and a valid workload UUID, this API gets the custom-view details of the workload.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/workloads/91cea36d-c857-4092-b232-d46484ee3205/custom
| id required | string Migration plan UUID |
| wid required | string Workload UUID |
curl --request GET \ --url https://www.nutanix.dev//move/v2/plans/{id}/workloads/{wid}/custom \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "APIVersion": "2.0.0",
- "CustomProperties": {
- "Type": "VmCustomPropertiesInfo",
- "VmCustomPropertiesInfo": {
- "OrderOfProperties": [
- {
- "DisplayName": "Name",
- "SourceName": "Name",
- "TargetName": "Name"
}, - {
- "DisplayName": "OS Type",
- "SourceName": "OSType",
- "TargetName": "OSType"
}, - {
- "DisplayName": "Power State",
- "SourceName": "PowerState",
- "TargetName": "PowerState"
}, - {
- "DisplayName": "vCPU(s)",
- "SourceName": "NumvCPUs",
- "TargetName": "NumvCPUs"
}, - {
- "DisplayName": "Number Of Cores Per vCPU",
- "SourceName": "NumCoresPerSocket",
- "TargetName": "NumCoresPerSocket"
}, - {
- "DisplayName": "Memory",
- "SourceName": "Memory",
- "TargetName": "Memory"
}, - {
- "DisplayName": "Number of disks",
- "SourceName": "NumDisks",
- "TargetName": "NumDisks"
}, - {
- "DisplayName": "Number of CD-ROMs",
- "SourceName": "NumCDROMs",
- "TargetName": "NumCDROMs"
}, - {
- "DisplayName": "Number of NICs",
- "SourceName": "NumNICs",
- "TargetName": "NumNICs"
}
], - "Source": {
- "CustomizableProperties": [ ],
- "GenericVmCustomProperties": {
- "Memory": 3221225472,
- "Name": "ajc-ce73-dnd",
- "NumCDROMs": 1,
- "NumCoresPerSocket": 1,
- "NumDisks": 2,
- "NumNICs": 1,
- "NumvCPUs": 2,
- "OSType": "centos64Guest",
- "PowerState": "PoweredOff"
}, - "Type": "GenericVMCustomProperties"
}, - "Target": {
- "CustomizableProperties": [
- "Name",
- "PowerState",
- "NumvCPUs",
- "NumCoresPerSocket",
- "Memory"
], - "GenericVmCustomProperties": {
- "Memory": 3221225472,
- "Name": "ajc-ce73-dnd",
- "NumCDROMs": 1,
- "NumCoresPerSocket": 1,
- "NumDisks": 2,
- "NumNICs": 1,
- "NumvCPUs": 2,
- "OSType": "centos64Guest"
}, - "Type": "GenericVMCustomProperties"
}
}
}, - "MetaData": {
- "Version": "1.0.0"
}
}Fetches the custom-view IP configuration details of the workload for the specified migration plan UUID and workload UUID.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/workloads/91cea36d-c857-4092-b232-d46484ee3205/customips
| id required | string Migration plan UUID |
| wid required | string Workload UUID |
curl --request GET \ --url https://www.nutanix.dev//move/v2/plans/{id}/workloads/{wid}/customips \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "APIVersion": "2.2.0",
- "Data": {
- "MetaInfo": {
- "ConfigMode": "custom",
- "IsConfigured": true,
- "VmUuid": "b315e2ad-5a3b-51d2-a2a0-afefb1d69970"
}, - "NicsInfo": [
- {
- "IpsInfo": [
- {
- "DnsIps": "8.8.8.8",
- "Gateway": "10.46.56.1",
- "PrefixLength": 22,
- "SourceIpAddress": "10.46.57.67",
- "TargetIpAddress": "10.46.57.70"
}, - {
- "DnsIps": "8.8.8.8",
- "PrefixLength": 22,
- "SourceIpAddress": "10.46.57.68",
- "TargetIpAddress": "10.46.57.71"
}, - {
- "DnsIps": "8.8.8.8",
- "PrefixLength": 22,
- "SourceIpAddress": "10.46.57.66",
- "TargetIpAddress": "10.46.57.69"
}
], - "Mac": "00:50:56:b3:4c:97",
- "NetworkName": "static"
}, - {
- "IpsInfo": [
- {
- "DnsIps": "10.40.64.16,10.22.64.16",
- "Gateway": "10.15.168.1",
- "PrefixLength": 21,
- "SourceIpAddress": "10.15.169.194",
- "TargetIpAddress": "10.15.169.194"
}
], - "Mac": "00:50:56:b3:c5:29",
- "NetworkName": "Net-115"
}, - {
- "IpsInfo": [
- {
- "DnsIps": "10.40.64.16,10.22.64.16",
- "Gateway": "10.46.60.1",
- "PrefixLength": 22,
- "SourceIpAddress": "10.46.60.211",
- "TargetIpAddress": "10.46.60.211"
}
], - "Mac": "00:50:56:b3:ea:41",
- "NetworkName": "VM Network"
}
]
}, - "MetaData": {
- "Version": "1.0.0"
}
}Get the preparation details of the plan.
| id required | string Migration plan UUID. |
curl --request GET \ --url https://www.nutanix.dev//move/v2/plans/{id}/prepare \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Spec": {
- "CommonCredentials": {
- "LinuxPassword": "string",
- "LinuxUserName": "string",
- "PemFile": "string",
- "WindowsPassword": "string",
- "WindowsUserName": "string"
}, - "GuestPrepMode": "manual",
- "RePrepareVMs": true,
- "Region": "string",
- "RunInBackground": true,
- "VMInventory": {
- "property1": {
- "VMSpec": {
- "AdditionalProperties": {
- "property1": "string",
- "property2": "string"
}, - "AssociatedCategories": [
- "string"
], - "AssociatedPolicies": [
- {
- "FnsSplitPoliciesNames": [
- "string"
], - "Nsx": {
- "PolicyName": "string",
- "PolicyUuid": "string"
}
}
], - "Categories": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "ClusterName": "string",
- "DatacenterName": "string",
- "ErrorMessages": [
- "string"
], - "HostName": "string",
- "HostUuid": "7bf6113d-25df-4b56-9152-eef636a7e385",
- "HypervisorType": "string",
- "InternalUuid": "string",
- "MemoryMB": 0,
- "MigrationSupportStatus": 0,
- "MigrationSupportWarningStatus": 0,
- "Networks": [
- {
- "Devices": [
- 0
], - "ID": "string",
- "IpAddresses": [
- "string"
], - "MacIDs": [
- "string"
], - "Name": "string",
- "VPC": {
- "ID": "string",
- "Name": "string"
}
}
], - "Nics": {
- "NicsInfo": [
- {
- "IpsConf": [
- {
- "DnsIps": null,
- "Gateway": null,
- "IpAddress": null,
- "PrefixLength": null
}
], - "Mac": "string",
- "NetworkName": "string"
}
]
}, - "NumCDROMs": 0,
- "NumCPU": 0,
- "NumCoresPerSocket": 0,
- "NumEthernetCards": 0,
- "OSType": "string",
- "OverallCpuDemandInMHz": 0,
- "PowerState": "string",
- "RecID": 0,
- "SourceUuid": "string",
- "StorageAllocatedInBytes": 0,
- "StorageUsedInBytes": 0,
- "VMName": "string",
- "VMUuid": "string",
- "VmID": "string",
- "WarningMessages": [
- "string"
]
}
}, - "property2": {
- "VMSpec": {
- "AdditionalProperties": {
- "property1": "string",
- "property2": "string"
}, - "AssociatedCategories": [
- "string"
], - "AssociatedPolicies": [
- {
- "FnsSplitPoliciesNames": [
- "string"
], - "Nsx": {
- "PolicyName": "string",
- "PolicyUuid": "string"
}
}
], - "Categories": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "ClusterName": "string",
- "DatacenterName": "string",
- "ErrorMessages": [
- "string"
], - "HostName": "string",
- "HostUuid": "7bf6113d-25df-4b56-9152-eef636a7e385",
- "HypervisorType": "string",
- "InternalUuid": "string",
- "MemoryMB": 0,
- "MigrationSupportStatus": 0,
- "MigrationSupportWarningStatus": 0,
- "Networks": [
- {
- "Devices": [
- 0
], - "ID": "string",
- "IpAddresses": [
- "string"
], - "MacIDs": [
- "string"
], - "Name": "string",
- "VPC": {
- "ID": "string",
- "Name": "string"
}
}
], - "Nics": {
- "NicsInfo": [
- {
- "IpsConf": [
- {
- "DnsIps": null,
- "Gateway": null,
- "IpAddress": null,
- "PrefixLength": null
}
], - "Mac": "string",
- "NetworkName": "string"
}
]
}, - "NumCDROMs": 0,
- "NumCPU": 0,
- "NumCoresPerSocket": 0,
- "NumEthernetCards": 0,
- "OSType": "string",
- "OverallCpuDemandInMHz": 0,
- "PowerState": "string",
- "RecID": 0,
- "SourceUuid": "string",
- "StorageAllocatedInBytes": 0,
- "StorageUsedInBytes": 0,
- "VMName": "string",
- "VMUuid": "string",
- "VmID": "string",
- "WarningMessages": [
- "string"
]
}
}
}, - "VMs": [
- {
- "GuestPrepMode": "manual",
- "Password": "string",
- "PemFile": "string",
- "SkipIpRetention": true,
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "UserName": "string",
- "VMId": "string"
}
]
}, - "Type": "string"
}Given a migration plan's UUID and a valid workload's UUID, this API gets the migration plan's workload information.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/workloads/91cea36d-c857-4092-b232-d46484ee3205
| id required | string Migration plan UUID |
| wid required | string Workload UUID |
curl --request GET \ --url https://www.nutanix.dev//move/v2/plans/{id}/workloads/{wid} \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "Status": {
- "Actions": [
- "ABORT"
], - "ID": "i-0d263e46e6063a",
- "State": 4,
- "Status": 1,
- "SubEvents": [
- {
- "Description": "Creating snapshot MOVESnap-0 on host provider.",
- "Name": "Create Snapshot (MOVESnap-0)",
- "State": 4,
- "Status": 3
}, - {
- "Description": "Copying snapshot MOVESnap-0 IO changes to target environment.",
- "Name": "Sync Snapshot (MOVESnap-0)",
- "State": 4,
- "Status": 1
}
], - "TotalDataSizeInBytes": 322122720,
- "UUID": "00000000-0000-0000-d263-e44016e6044a"
}
}Gets details of all the workloads of a plan by providing plan UUID.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/workloads/list
| id required | string Migration plan UUID. |
| NumIterations | integer <uint64> Number of iterations to be returned for a workload. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/{id}/workloads/list \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "Status": {
- "Actions": [
- "ABORT",
- "PAUSE"
], - "Name": "my_migration_plan_name",
- "State": 4,
- "Status": 1,
- "UUID": "f5445252-32a8-424a-967a-97084474d7f3",
- "VMStatus": [
- {
- "Actions": [
- "ABORT"
], - "ID": "TBD",
- "Name": "my_vm_name",
- "State": 4,
- "Status": 1,
- "SubEvents": [
- {
- "Description": "Creating snapshot MOVESnap-0 on host provider.",
- "Name": "Create Snapshot (MOVESnap-0)",
- "State": 4,
- "Status": 1
}
], - "UUID": "00000000-0000-0000-d263-e44016e6063a"
}
]
}
}Lists the details of all migration plans.
Set the includeVMdetails flag in the input for the API response to include VM details corresponding to each migration plan in the MigrationPlanSummary.
The API retrieves the following information for each migration plan:
| IncludeVMDetails | boolean Include VM details in the API response from each migration plan in MigrationPlanSummary (deprecated). |
| IncludeEntityDetails | boolean Include entity details in the API response from each migration plan in MigrationPlanSummary (Higher priority than IncludeVMDetails). |
Filter the list of migration plans by providing input migration plan object.
| EntityType | string Enum: "VM" "Files" "SecurityPolicy" "Conversion" Entity type filter. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/list \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json, application/octet-stream' \ --data '{ "EntityType": "VM" }'
{- "Entities": [
- {
- "MetaData": {
- "Actions": [
- "START",
- "EDIT",
- "DELETE"
], - "CreatedTime": 1562818697155631000,
- "DataInBytes": 10737418240,
- "ElapsedTime": { },
- "ErrorReason": null,
- "Name": "MP-MR-_ap-south-1_AUTO_EC2_CX_SRC_DMP_S1_1",
- "NumVMs": 1,
- "Schedule": {
- "ScheduleAtEpochSec": -1
}, - "UUID": "5ef6a270-2dc1-4f71-91bb-2b7564205d1b",
- "VMStateCounts": { }
}
}, - {
- "MetaData": {
- "Actions": [
- "START",
- "EDIT",
- "DELETE"
], - "CreatedTime": 1562818694528089000,
- "DataInBytes": 10737418240,
- "ElapsedTime": { },
- "ErrorReason": null,
- "Name": "MP-MR-_ap-south-1_AUTO_EC2_CX_SRC_DMP_S1_0",
- "NumVMs": 1,
- "Schedule": {
- "ScheduleAtEpochSec": -1
}, - "UUID": "f26c0d61-2fb9-49ef-82f6-8a07426e0956",
- "VMStateCounts": { }
}
}
]
}Lists the details of all migration plans with minimal information.
The API retrieves the following information for each migration plan:
Filter the list of migration plans by providing input migration plan object.
| EntityType | string Enum: "VM" "Files" "SecurityPolicy" "Conversion" Entity type filter. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/listminimal \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "EntityType": "VM" }'
{- "APIVersion": "string",
- "Entities": [
- {
- "Name": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}
]
}Lists details of the migration plan selected for generating the report. - The API retrieves the following information for each migration plan. - $ref "#/definitions/PlanReportEntities"
Get the migration plan and share details based on the respective UUIDs.
| IterationCount | integer Indicates the number of iterations in a report based on the user input. |
| MigplanUUID | string UUID of the migration plan. |
| ShareUUIDs | Array of strings UUID of the shares. |
| ShowAllIterations | boolean Indicates all the iterations. |
| ShowAllShares | boolean Indicates all the shares. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/reports \ --header 'Authorization: Bearer <your_access_token>' \
Performs readiness checks on migration plan to confirm if that particular migration plan is ready to start. On providing the plan UUID, the port and VMs status check results are received.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/readiness
| id required | string Migration plan UUID. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/{id}/readiness \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "MetaData": {
- "UUID": "3af948bf-72ed-4fe8-90f5-f1d3cf592c7d"
}, - "Status": {
- "Failed": null,
- "Passed": [
- {
- "CheckType": "PortCheck",
- "Message": "Connectivity check completed successfully for Port [8080]",
- "Status": "Ready"
}, - {
- "CheckType": "PortCheck",
- "Message": "Connectivity check completed successfully for Port [80]",
- "Status": "Ready"
}, - {
- "CheckType": "PortCheck",
- "Message": "Connectivity check completed successfully for Port [8092]",
- "Status": "Ready"
}, - {
- "CheckType": "PortCheck",
- "Message": "Connectivity check completed successfully for Port [4505]",
- "Status": "Ready"
}, - {
- "CheckType": "PortCheck",
- "Message": "Connectivity check completed successfully for Port [4506]",
- "Status": "Ready"
}
], - "VMChecksResult": {
- "Failed": null,
- "Passed": [
- {
- "Message": "User VM with id i-0b82e10ef8a0b2756 is registered successfully",
- "Status": "Registered",
- "VMId": "i-0b82e10ef8a0b2756",
- "VMName": "AUTO_EC2_W2K12R2-MAN-PREP_0"
}, - {
- "Message": "Ping to UVM succeeded",
- "Status": "Ready",
- "VMId": "i-0b82e10ef8a0b2756",
- "VMName": "AUTO_EC2_W2K12R2-MAN-PREP_0"
}, - {
- "Message": "CBT driver is loaded",
- "Status": "Ready",
- "VMId": "i-0b82e10ef8a0b2756",
- "VMName": "AUTO_EC2_W2K12R2-MAN-PREP_0"
}
]
}
}
}Performs an action on the migration plan workload. The list of available workload actions:
| id required | string Migration plan UUID |
| wid required | string Workload UUID |
Requested workload action to be performed on the VM.
| APIVersion | string Move API version |
required | object Workload action request. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/{id}/workloads/{wid}/action \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "APIVersion": "string", "Spec": { "Action": "cutover" } }'
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Status": {
- "Message": "string",
- "State": "string"
}
}Prepares the source VMs in a migration plan. For example- Install VirtIO drivers, retaining IP and so on.
If the preparation mode is set to 'manual', the API returns OS specific scripts that can be executed manually to prepare the source VMs.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/prepare
| id required | string Migration plan UUID. |
| UninstallGuestTools | boolean Uninstall guest tools flag. |
| SkipIPRetention | boolean Skip IP retention flag. |
| InstallNGT | boolean Install NGT flag |
Workload credentials to prepare the source environment.
| APIVersion | string Move API version |
object (MetaData) Metadata information | |
object (GuestOperationsInput) | |
| Type | string Guest operation type. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/{id}/prepare \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "APIVersion": "string", "MetaData": { "Count": 0, "CreationTime": "string", "Kind": "string", "LastUpdateTime": "string", "Name": "string", "SpecVersion": "string", "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb" }, "Spec": { "CommonCredentials": { "LinuxPassword": "string", "LinuxUserName": "string", "PemFile": "string", "WindowsPassword": "string", "WindowsUserName": "string" }, "GuestPrepMode": "manual", "RePrepareVMs": true, "Region": "string", "RunInBackground": true, "VMs": [ { "GuestPrepMode": "manual", "Password": "string", "PemFile": "string", "SkipIpRetention": true, "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "UserName": "string", "VMId": "string" } ] }, "Type": "string" }'
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Spec": {
- "CommonCredentials": {
- "LinuxPassword": "string",
- "LinuxUserName": "string",
- "PemFile": "string",
- "WindowsPassword": "string",
- "WindowsUserName": "string"
}, - "GuestPrepMode": "manual",
- "RePrepareVMs": true,
- "Region": "string",
- "RunInBackground": true,
- "VMInventory": {
- "property1": {
- "VMSpec": {
- "AdditionalProperties": {
- "property1": "string",
- "property2": "string"
}, - "AssociatedCategories": [
- "string"
], - "AssociatedPolicies": [
- {
- "FnsSplitPoliciesNames": [
- "string"
], - "Nsx": {
- "PolicyName": "string",
- "PolicyUuid": "string"
}
}
], - "Categories": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "ClusterName": "string",
- "DatacenterName": "string",
- "ErrorMessages": [
- "string"
], - "HostName": "string",
- "HostUuid": "7bf6113d-25df-4b56-9152-eef636a7e385",
- "HypervisorType": "string",
- "InternalUuid": "string",
- "MemoryMB": 0,
- "MigrationSupportStatus": 0,
- "MigrationSupportWarningStatus": 0,
- "Networks": [
- {
- "Devices": [
- 0
], - "ID": "string",
- "IpAddresses": [
- "string"
], - "MacIDs": [
- "string"
], - "Name": "string",
- "VPC": {
- "ID": "string",
- "Name": "string"
}
}
], - "Nics": {
- "NicsInfo": [
- {
- "IpsConf": [
- {
- "DnsIps": null,
- "Gateway": null,
- "IpAddress": null,
- "PrefixLength": null
}
], - "Mac": "string",
- "NetworkName": "string"
}
]
}, - "NumCDROMs": 0,
- "NumCPU": 0,
- "NumCoresPerSocket": 0,
- "NumEthernetCards": 0,
- "OSType": "string",
- "OverallCpuDemandInMHz": 0,
- "PowerState": "string",
- "RecID": 0,
- "SourceUuid": "string",
- "StorageAllocatedInBytes": 0,
- "StorageUsedInBytes": 0,
- "VMName": "string",
- "VMUuid": "string",
- "VmID": "string",
- "WarningMessages": [
- "string"
]
}
}, - "property2": {
- "VMSpec": {
- "AdditionalProperties": {
- "property1": "string",
- "property2": "string"
}, - "AssociatedCategories": [
- "string"
], - "AssociatedPolicies": [
- {
- "FnsSplitPoliciesNames": [
- "string"
], - "Nsx": {
- "PolicyName": "string",
- "PolicyUuid": "string"
}
}
], - "Categories": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "ClusterName": "string",
- "DatacenterName": "string",
- "ErrorMessages": [
- "string"
], - "HostName": "string",
- "HostUuid": "7bf6113d-25df-4b56-9152-eef636a7e385",
- "HypervisorType": "string",
- "InternalUuid": "string",
- "MemoryMB": 0,
- "MigrationSupportStatus": 0,
- "MigrationSupportWarningStatus": 0,
- "Networks": [
- {
- "Devices": [
- 0
], - "ID": "string",
- "IpAddresses": [
- "string"
], - "MacIDs": [
- "string"
], - "Name": "string",
- "VPC": {
- "ID": "string",
- "Name": "string"
}
}
], - "Nics": {
- "NicsInfo": [
- {
- "IpsConf": [
- {
- "DnsIps": null,
- "Gateway": null,
- "IpAddress": null,
- "PrefixLength": null
}
], - "Mac": "string",
- "NetworkName": "string"
}
]
}, - "NumCDROMs": 0,
- "NumCPU": 0,
- "NumCoresPerSocket": 0,
- "NumEthernetCards": 0,
- "OSType": "string",
- "OverallCpuDemandInMHz": 0,
- "PowerState": "string",
- "RecID": 0,
- "SourceUuid": "string",
- "StorageAllocatedInBytes": 0,
- "StorageUsedInBytes": 0,
- "VMName": "string",
- "VMUuid": "string",
- "VmID": "string",
- "WarningMessages": [
- "string"
]
}
}
}, - "VMs": [
- {
- "GuestPrepMode": "manual",
- "Password": "string",
- "PemFile": "string",
- "SkipIpRetention": true,
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "UserName": "string",
- "VMId": "string"
}
]
}, - "Status": {
- "AgentID": "string",
- "Message": "string",
- "Result": {
- "Failed": [
- {
- "Message": "string",
- "Status": "string",
- "VMId": "string",
- "VMName": "string"
}
], - "GuestScript": {
- "LinuxGuestCleanupScript": [
- "string"
], - "LinuxGuestScript": [
- "string"
], - "Region": "string",
- "WindowsGuestCleanupScript": [
- "string"
], - "WindowsGuestScript": [
- "string"
]
}, - "InstallationInProgress": true,
- "Passed": [
- {
- "Message": "string",
- "Status": "string",
- "VMId": "string",
- "VMName": "string"
}
]
}, - "State": "string"
}, - "TaskUUID": "8466acfc-5ecc-47de-81d5-49e4178d2fda"
}Resume a suspended migration plan for the provided migration plan UUID.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/resume
| id required | string Migration plan UUID |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/{id}/resume \ --header 'Accept: application/json, application/octet-stream' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json, application/octet-stream' \
{- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}Starts a migration plan by providing plan UUID and an optional snapshot frequency (in minutes).
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/start
| id required | string Migration plan UUID. |
Snapshot frequency can be specified optionally.
| APIVersion | string Move API version |
object (MetaData) Metadata information | |
object Snapshot frequency in minutes. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/{id}/start \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "APIVersion": "string", "MetaData": { "Count": 0, "CreationTime": "string", "Kind": "string", "LastUpdateTime": "string", "Name": "string", "SpecVersion": "string", "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb" }, "Spec": { "Time": 0 } }'
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Status": {
- "Message": "string",
- "State": "string"
}
}Suspends migration plan of provided plan UUID.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/suspend
| id required | string Migration plan UUID |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/{id}/suspend \ --header 'Accept: application/json, application/octet-stream' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json, application/octet-stream' \
{- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}Given a migration plan UUID and a valid workload UUID, this API selectively refreshes the source workload details and updates the plan.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/workloads/91cea36d-c857-4092-b232-d46484ee3205/refresh
| id required | string Migration plan UUID |
| wid required | string Workload UUID |
Workload refresh configuration to control the sub-operations during a selective refresh of a workload.
| forceUpdateTarget | boolean Default: false Replicate the properties of the source to the target, regardless of workload's customize-type. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/{id}/workloads/{wid}/refresh \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "forceUpdateTarget": false }'
{- "APIVersion": "string",
- "Data": {
- "Message": "string",
- "Status": "string"
}, - "MetaData": {
- "Version": "string"
}
}Updates the migration plan using the plan UUID as input. When not in progress, all migration plan entities can be updated.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/
| id required | string Migration plan UUID. |
Information required to update migration plan object.
| APIVersion | string Move API version |
| IsUpdatePlanFlow | boolean Indicates whether the update plan is called as part of the create plan. Assigned values can be False or True |
object (MigrationPlanSummary) Summary of migration plan. | |
object (Plan) Plan information | |
| Type | string Plan type. |
{- "MetaData": {
- "Actions": [
- "START",
- "EDIT",
- "DELETE"
], - "CreatedTime": 1695975103130976000,
- "DataInBytes": 4404476945,
- "ElapsedTime": { },
- "ErrorReasons": null,
- "FilesStateCounts": { },
- "FilesStatus": null,
- "Name": "mp-1695975048515649",
- "NumEntities": 1,
- "NumVMs": 1,
- "Schedule": {
- "ScheduleAtEpochSec": -1
}, - "SourceInfo": {
- "Name": "10.46.17.155",
- "Type": "VMWARE_ESXI_VCENTER",
- "UUID": "8479b87b-bf1d-4cc0-b9a7-cdfbf1ecb06f"
}, - "StateString": "MigrationPlanStateUninitialized",
- "StatusString": "StatusUnknown",
- "TargetInfo": {
- "Cluster": {
- "Name": "auto_cluster_prod_aketi_pushkaram_4f392f35f214",
- "Type": "AOS_AHV_PE",
- "UUID": "0005d054-6866-fff1-0000-000000029844"
}, - "Name": "10.46.17.178",
- "Type": "AOS_AHV_PE",
- "UUID": "f5524029-156f-4ce5-a29c-082f681b211d"
}, - "UUID": "2df12bd0-2399-49ec-ac85-740963b9ed0b",
- "VMStateCounts": { },
- "VMStatus": null,
- "ValidationWarnings": null
}
}Update node VM order for a migration plan.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/defaultnodevmorder
| id required | string Migration plan UUID. |
Request to update the node VM order for a migration plan.
| SetDefault | boolean Flag to indicate if the node VM order should be set as default. This will override the update node VM order spec. |
object (UpdateNodeVMOrderSpec) Update node VM order specifications. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/{id}/nodevmorder \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "SetDefault": true, "UpdateNodeVMOrderSpec": { "NodeVMOrderStages": [ { "Entities": { "NodeUuid": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "VMUuids": [ "b4d15375-1097-4c96-a4c4-4cb5809b05bb" ] }, "StageType": "ConvertNode" } ] } }'
{- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}Uploads the ISO file for a conversion plan.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/iso/upload
| id required | string Migration plan UUID. |
| isoFile required | string <binary> The ISO file to be uploaded. |
| md5Sum required | string MD5 hash of the ISO file. |
| hypervisorType required | string Default: "kvm" Enum: "kvm" "esx" Hypervisor type for which the ISO details are required. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/{id}/iso/upload \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: multipart/form-data' \ --data '{ "hypervisorType": "kvm", "isoFile": null, "md5Sum": "string" }'
{- "TaskUuid": "60e7d9b1-e34e-4d60-9bcd-0411d7a448bf"
}Validates the cluster for conversion in a migration plan. Returns task UUID for the operation.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/validateconversion
| id required | string Migration plan UUID |
Request to validate the cluster for conversion in a migration plan.
| ForceRetry | boolean Force retry the cluster conversion validation even if it was completed successfully earlier. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/{id}/validateconversion \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "ForceRetry": true }'
{- "TaskUuid": "60e7d9b1-e34e-4d60-9bcd-0411d7a448bf"
}Validate the hash for the ISO to be uploaded for a conversion plan.
Sample API Syntax: https://move.address/move/v2/plans/867b4a4f-cb8c-4416-8d7e-26e033023aa4/iso/validate
| id required | string Migration plan UUID |
| HypervisorType required | string Default: "kvm" Enum: "kvm" "esx" Hypervisor type for which the ISO details are required. |
| Md5Sum required | string MD5 hash of the ISO file. |
curl --request GET \ --url https://www.nutanix.dev//move/v2/plans/{id}/iso/validatehash \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "IsIsoValid": true,
- "Messages": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
]
}Adds PC credentials to an existing provider.
Sample API Syntax: https://move.address/move/v2/81b0a14d-c937-4872-b792-d46484ee8905/AddEntity
| id required | string Provider UUID. |
PC access information to add to the provider.
| IPorFQDN | string Prism Central IP Address or FQDN. |
| Password | string Prism Central password. |
| Username | string Prism Central username. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/providers/{id}/addentity \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "IPorFQDN": "string", "Password": "string", "Username": "string" }'
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Spec": {
- "AOSAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "RegisteredVCAccessInfo": [
- {
- "IPAddress": "string",
- "Password": "string",
- "Username": "string"
}
], - "Username": "string"
}, - "AOSCCAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "RegisteredVCAccessInfo": [
- {
- "IPAddress": "string",
- "Password": "string",
- "Username": "string"
}
], - "Username": "string"
}, - "AOSCCProperties": {
- "ClusterUuid": "a41276f4-8dfe-4627-8c72-a3a955f6e850"
}, - "AOSProperties": {
- "AddFNSProvider": true,
- "CategoriesMapping": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "Clusters": [
- {
- "CompatibleTargetTypes": [
- "string"
], - "Containers": [
- {
- "FreeBytes": "string",
- "IsNutanixManaged": true,
- "Name": "string",
- "TotalBytes": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "UsedBytes": "string"
}
], - "HypervisorTypes": [
- "string"
], - "IPorFQDN": "string",
- "Name": "string",
- "Networks": [
- {
- "IPPool": [
- "string"
], - "IsIpamEnabled": true,
- "Name": "string",
- "UUID": "string",
- "WarningMsg": "string"
}
], - "RegisteredVCIPAddress": "string",
- "SupportedCpuModels": [
- {
- "IsDefault": true,
- "Name": "string",
- "UUID": "string",
- "Vendor": "string"
}
], - "TargetUUID": "b91575b3-630c-4223-8216-11d24760addd",
- "Type": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "Version": "string",
- "Vpcs": [
- {
- "Name": "string",
- "UUID": "string",
- "VPCSubnets": [
- {
- "IPPool": [
- null
], - "Name": "string",
- "UUID": "string",
- "WarningMsg": "string"
}
], - "VPCTunnel": {
- "Name": "string",
- "UUID": "string"
}
}
]
}
], - "Errors": [
- {
- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}
], - "FeaturesStatus": [
- {
- "IsEnabled": true,
- "Name": "string",
- "Version": "string"
}
], - "Projects": [
- {
- "ClusterList": [
- "string"
], - "ErrorList": [
- "string"
], - "Name": "string",
- "RunbookList": [
- "string"
], - "SubnetList": [
- "string"
], - "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "UserList": [
- "string"
], - "VpcList": [
- "string"
], - "VpcTunnelList": [
- "string"
]
}
], - "Runbooks": [
- {
- "Description": "string",
- "ErrorList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "IsSupported": true,
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "ProjectUUID": "string",
- "TaskList": [
- {
- "AdditionalProperties": { },
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "Type": "string",
- "UUID": "string"
}
], - "UUID": "string",
- "VariableList": [
- {
- "DataType": "BASE",
- "Description": "string",
- "IsDynamic": true,
- "IsEditable": true,
- "IsHidden": true,
- "IsMandatory": true,
- "IsSecret": true,
- "Label": "string",
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "Options": {
- "AdditionalProperties": { },
- "Choices": [
- "string"
], - "Type": "PREDEFINED"
}, - "Regex": {
- "ShouldValidate": true,
- "Value": "string"
}, - "UUID": "string",
- "Value": "string",
- "ValueType": "STRING"
}
], - "WarningList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
]
}
], - "Users": [
- {
- "Name": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}
], - "Version": "string"
}, - "AWSAccessInfo": {
- "AccessKey": "string",
- "SecretKey": "string"
}, - "AWSProperties": {
- "AvailableRegions": [
- {
- "AvailabilityZones": [
- "string"
], - "ID": "string",
- "Name": "string",
- "Networks": [
- {
- "IsDefault": true,
- "Name": "string",
- "SecurityGroups": [
- {
- "IsDefault": true,
- "Name": "string",
- "SgID": "string",
- "VpcID": "string"
}
], - "State": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VpcId": "string"
}
]
}
], - "ContextEntries": [
- {
- "ContextKeyName": "string",
- "ContextKeyType": "string",
- "ContextKeyValues": [
- "string"
]
}
], - "RegionsWithInstances": [
- {
- "AvailabilityZones": [
- "string"
], - "ID": "string",
- "Name": "string",
- "Networks": [
- {
- "IsDefault": true,
- "Name": "string",
- "SecurityGroups": [
- {
- "IsDefault": true,
- "Name": "string",
- "SgID": "string",
- "VpcID": "string"
}
], - "State": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VpcId": "string"
}
]
}
]
}, - "AzureAccessInfo": {
- "ClientID": "string",
- "ClientSecret": "string",
- "SubscriptionID": "string",
- "TenantID": "string"
}, - "AzureProperties": {
- "AvailableRegions": [
- {
- "ID": "string",
- "Name": "string",
- "NetworkSecurityGroups": [
- {
- "Location": "string",
- "Name": "string",
- "NsgID": "string",
- "ResourceGroup": "string"
}
], - "Networks": [
- {
- "Location": "string",
- "Name": "string",
- "ResourceGroup": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VnetId": "string"
}
], - "ResourceGroups": [
- "string"
]
}
], - "RegionsWithInstances": [
- {
- "ID": "string",
- "Name": "string",
- "NetworkSecurityGroups": [
- {
- "Location": "string",
- "Name": "string",
- "NsgID": "string",
- "ResourceGroup": "string"
}
], - "Networks": [
- {
- "Location": "string",
- "Name": "string",
- "ResourceGroup": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VnetId": "string"
}
], - "ResourceGroups": [
- "string"
]
}
], - "RegisteredApplication": {
- "Application": "string",
- "Subscription": "string",
- "Tenant": "string"
}
}, - "CompatibleTargetTypes": [
- "string"
], - "ESXAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "ESXProperties": {
- "VddkProperties": [
- {
- "LibUploaded": false,
- "Version": "string"
}
], - "Version": "string"
}, - "FilesAccessInfo": {
- "IPorFQDN": "string",
- "PCAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "Password": "string",
- "Username": "string"
}, - "FilesProperties": {
- "FileserverID": "string",
- "SupportedProtocols": [
- "string"
], - "TenantID": "string"
}, - "HyperVAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "HyperVProperties": {
- "Version": "string"
}, - "HyperVSettings": {
- "OverrideAgent": true
}, - "InventoryErrors": [
- "string"
], - "IsInventoryLoading": true,
- "Name": "string",
- "NsxAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "NsxProperties": {
- "Version": "string"
}, - "OtherFilesAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "TargetName": "string",
- "TargetUUID": "b91575b3-630c-4223-8216-11d24760addd",
- "Username": "string"
}, - "OverrideType": "string",
- "PermissionsError": {
- "ErrorMsg": "string",
- "Source": [
- "string"
], - "Target": [
- "string"
]
}, - "Roles": [
- "string"
], - "SpProviderIds": [
- "string"
], - "Type": "string",
- "TypeDescription": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "Version": "string",
- "VmProviderIds": [
- "string"
]
}, - "Status": {
- "Message": "string",
- "State": "string"
}, - "TaskUuid": "string"
}Creates a new provider.
A provider is an environment (ESXi/AOS/AWS/AZURE and so on) which can act as a migration source, target or both. The provider can later be added as a source/target during the creation of migration plans. See the Move User Guide to know about supported source/target types.
Sample API Syntax: https://move.address/move/v2/providers
Provider object information required to create a new provider.
| APIVersion | string Move API version |
object (MetaData) Metadata information | |
object (Provider) Information to add provider. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/providers \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "APIVersion": "string", "MetaData": { "Count": 0, "CreationTime": "string", "Kind": "string", "LastUpdateTime": "string", "Name": "string", "SpecVersion": "string", "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb" }, "Spec": { "AOSAccessInfo": { "IPorFQDN": "string", "Password": "string", "RegisteredVCAccessInfo": [ { "IPAddress": "string", "Password": "string", "Username": "string" } ], "Username": "string" }, "AOSCCAccessInfo": { "IPorFQDN": "string", "Password": "string", "RegisteredVCAccessInfo": [ { "IPAddress": "string", "Password": "string", "Username": "string" } ], "Username": "string" }, "AOSCCProperties": { "ClusterUuid": "b4d15375-1097-4c96-a4c4-4cb5809b05bb" }, "AOSProperties": { "AddFNSProvider": true, "CategoriesMapping": { "property1": [ "string" ], "property2": [ "string" ] }, "Clusters": [ { "CompatibleTargetTypes": [ "string" ], "Containers": [ { "FreeBytes": "string", "IsNutanixManaged": true, "Name": "string", "TotalBytes": "string", "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "UsedBytes": "string" } ], "HypervisorTypes": [ "string" ], "IPorFQDN": "string", "Name": "string", "Networks": [ { "IPPool": [ "string" ], "IsIpamEnabled": true, "Name": "string", "UUID": "string", "WarningMsg": "string" } ], "RegisteredVCIPAddress": "string", "SupportedCpuModels": [ { "IsDefault": true, "Name": "string", "UUID": "string", "Vendor": "string" } ], "TargetUUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "Type": "string", "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "Version": "string", "Vpcs": [ { "Name": "string", "UUID": "string", "VPCSubnets": [ { "IPPool": [ "string" ], "Name": "string", "UUID": "string", "WarningMsg": "string" } ], "VPCTunnel": { "Name": "string", "UUID": "string" } } ] } ], "Errors": [ { "ApiVersion": "string", "Code": 0, "Kind": "string", "Message": "string", "State": "string" } ], "FeaturesStatus": [ { "IsEnabled": true, "Name": "string", "Version": "string" } ], "Projects": [ { "ClusterList": [ "string" ], "ErrorList": [ "string" ], "Name": "string", "RunbookList": [ "string" ], "SubnetList": [ "string" ], "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "UserList": [ "string" ], "VpcList": [ "string" ], "VpcTunnelList": [ "string" ] } ], "Runbooks": [ { "Description": "string", "ErrorList": [ { "Message": "string", "Title": "string", "Type": "INFO" } ], "IsSupported": true, "MessageList": [ { "Message": "string", "Title": "string", "Type": "INFO" } ], "Name": "string", "ProjectUUID": "string", "TaskList": [ { "MessageList": [ { "Message": "string", "Title": "string", "Type": "INFO" } ], "Name": "string", "Type": "string", "UUID": "string" } ], "UUID": "string", "VariableList": [ { "DataType": "BASE", "Description": "string", "IsDynamic": true, "IsEditable": true, "IsHidden": true, "IsMandatory": true, "IsSecret": true, "Label": "string", "MessageList": [ { "Message": "string", "Title": "string", "Type": "INFO" } ], "Name": "string", "Options": { "Choices": [ "string" ], "Type": "PREDEFINED" }, "Regex": { "ShouldValidate": true, "Value": "string" }, "UUID": "string", "Value": "string", "ValueType": "STRING" } ], "WarningList": [ { "Message": "string", "Title": "string", "Type": "INFO" } ] } ], "Users": [ { "Name": "string", "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb" } ], "Version": "string" }, "AWSAccessInfo": { "AccessKey": "string", "SecretKey": "string" }, "AWSProperties": { "AvailableRegions": [ { "AvailabilityZones": [ "string" ], "ID": "string", "Name": "string", "Networks": [ { "IsDefault": true, "Name": "string", "SecurityGroups": [ { "IsDefault": true, "Name": "string", "SgID": "string", "VpcID": "string" } ], "State": "string", "Subnet": { "property1": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ], "property2": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ] }, "VpcId": "string" } ] } ], "ContextEntries": [ { "ContextKeyName": "string", "ContextKeyType": "string", "ContextKeyValues": [ "string" ] } ], "RegionsWithInstances": [ { "AvailabilityZones": [ "string" ], "ID": "string", "Name": "string", "Networks": [ { "IsDefault": true, "Name": "string", "SecurityGroups": [ { "IsDefault": true, "Name": "string", "SgID": "string", "VpcID": "string" } ], "State": "string", "Subnet": { "property1": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ], "property2": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ] }, "VpcId": "string" } ] } ] }, "AzureAccessInfo": { "ClientID": "string", "ClientSecret": "string", "SubscriptionID": "string", "TenantID": "string" }, "AzureProperties": { "AvailableRegions": [ { "ID": "string", "Name": "string", "NetworkSecurityGroups": [ { "Location": "string", "Name": "string", "NsgID": "string", "ResourceGroup": "string" } ], "Networks": [ { "Location": "string", "Name": "string", "ResourceGroup": "string", "Subnet": { "property1": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ], "property2": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ] }, "VnetId": "string" } ], "ResourceGroups": [ "string" ] } ], "RegionsWithInstances": [ { "ID": "string", "Name": "string", "NetworkSecurityGroups": [ { "Location": "string", "Name": "string", "NsgID": "string", "ResourceGroup": "string" } ], "Networks": [ { "Location": "string", "Name": "string", "ResourceGroup": "string", "Subnet": { "property1": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ], "property2": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ] }, "VnetId": "string" } ], "ResourceGroups": [ "string" ] } ], "RegisteredApplication": { "Application": "string", "Subscription": "string", "Tenant": "string" } }, "CompatibleTargetTypes": [ "string" ], "ESXAccessInfo": { "IPorFQDN": "string", "Password": "string", "Username": "string" }, "ESXProperties": { "VddkProperties": [ { "LibUploaded": false, "Version": "string" } ], "Version": "string" }, "FilesAccessInfo": { "IPorFQDN": "string", "PCAccessInfo": { "IPorFQDN": "string", "Password": "string", "Username": "string" }, "Password": "string", "Username": "string" }, "FilesProperties": { "FileserverID": "string", "SupportedProtocols": [ "string" ], "TenantID": "string" }, "HyperVAccessInfo": { "IPorFQDN": "string", "Password": "string", "Username": "string" }, "HyperVProperties": { "Version": "string" }, "HyperVSettings": { "OverrideAgent": true }, "InventoryErrors": [ "string" ], "IsInventoryLoading": true, "Name": "string", "NsxAccessInfo": { "IPorFQDN": "string", "Password": "string", "Username": "string" }, "NsxProperties": { "Version": "string" }, "OtherFilesAccessInfo": { "IPorFQDN": "string", "Password": "string", "TargetName": "string", "TargetUUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "Username": "string" }, "OverrideType": "string", "PermissionsError": { "ErrorMsg": "string", "Source": [ "string" ], "Target": [ "string" ] }, "Roles": [ "string" ], "SpProviderIds": [ "string" ], "Type": "string", "TypeDescription": "string", "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "Version": "string", "VmProviderIds": [ "string" ] } }'
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Spec": {
- "AOSAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "RegisteredVCAccessInfo": [
- {
- "IPAddress": "string",
- "Password": "string",
- "Username": "string"
}
], - "Username": "string"
}, - "AOSCCAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "RegisteredVCAccessInfo": [
- {
- "IPAddress": "string",
- "Password": "string",
- "Username": "string"
}
], - "Username": "string"
}, - "AOSCCProperties": {
- "ClusterUuid": "a41276f4-8dfe-4627-8c72-a3a955f6e850"
}, - "AOSProperties": {
- "AddFNSProvider": true,
- "CategoriesMapping": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "Clusters": [
- {
- "CompatibleTargetTypes": [
- "string"
], - "Containers": [
- {
- "FreeBytes": "string",
- "IsNutanixManaged": true,
- "Name": "string",
- "TotalBytes": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "UsedBytes": "string"
}
], - "HypervisorTypes": [
- "string"
], - "IPorFQDN": "string",
- "Name": "string",
- "Networks": [
- {
- "IPPool": [
- "string"
], - "IsIpamEnabled": true,
- "Name": "string",
- "UUID": "string",
- "WarningMsg": "string"
}
], - "RegisteredVCIPAddress": "string",
- "SupportedCpuModels": [
- {
- "IsDefault": true,
- "Name": "string",
- "UUID": "string",
- "Vendor": "string"
}
], - "TargetUUID": "b91575b3-630c-4223-8216-11d24760addd",
- "Type": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "Version": "string",
- "Vpcs": [
- {
- "Name": "string",
- "UUID": "string",
- "VPCSubnets": [
- {
- "IPPool": [
- null
], - "Name": "string",
- "UUID": "string",
- "WarningMsg": "string"
}
], - "VPCTunnel": {
- "Name": "string",
- "UUID": "string"
}
}
]
}
], - "Errors": [
- {
- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}
], - "FeaturesStatus": [
- {
- "IsEnabled": true,
- "Name": "string",
- "Version": "string"
}
], - "Projects": [
- {
- "ClusterList": [
- "string"
], - "ErrorList": [
- "string"
], - "Name": "string",
- "RunbookList": [
- "string"
], - "SubnetList": [
- "string"
], - "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "UserList": [
- "string"
], - "VpcList": [
- "string"
], - "VpcTunnelList": [
- "string"
]
}
], - "Runbooks": [
- {
- "Description": "string",
- "ErrorList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "IsSupported": true,
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "ProjectUUID": "string",
- "TaskList": [
- {
- "AdditionalProperties": { },
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "Type": "string",
- "UUID": "string"
}
], - "UUID": "string",
- "VariableList": [
- {
- "DataType": "BASE",
- "Description": "string",
- "IsDynamic": true,
- "IsEditable": true,
- "IsHidden": true,
- "IsMandatory": true,
- "IsSecret": true,
- "Label": "string",
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "Options": {
- "AdditionalProperties": { },
- "Choices": [
- "string"
], - "Type": "PREDEFINED"
}, - "Regex": {
- "ShouldValidate": true,
- "Value": "string"
}, - "UUID": "string",
- "Value": "string",
- "ValueType": "STRING"
}
], - "WarningList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
]
}
], - "Users": [
- {
- "Name": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}
], - "Version": "string"
}, - "AWSAccessInfo": {
- "AccessKey": "string",
- "SecretKey": "string"
}, - "AWSProperties": {
- "AvailableRegions": [
- {
- "AvailabilityZones": [
- "string"
], - "ID": "string",
- "Name": "string",
- "Networks": [
- {
- "IsDefault": true,
- "Name": "string",
- "SecurityGroups": [
- {
- "IsDefault": true,
- "Name": "string",
- "SgID": "string",
- "VpcID": "string"
}
], - "State": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VpcId": "string"
}
]
}
], - "ContextEntries": [
- {
- "ContextKeyName": "string",
- "ContextKeyType": "string",
- "ContextKeyValues": [
- "string"
]
}
], - "RegionsWithInstances": [
- {
- "AvailabilityZones": [
- "string"
], - "ID": "string",
- "Name": "string",
- "Networks": [
- {
- "IsDefault": true,
- "Name": "string",
- "SecurityGroups": [
- {
- "IsDefault": true,
- "Name": "string",
- "SgID": "string",
- "VpcID": "string"
}
], - "State": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VpcId": "string"
}
]
}
]
}, - "AzureAccessInfo": {
- "ClientID": "string",
- "ClientSecret": "string",
- "SubscriptionID": "string",
- "TenantID": "string"
}, - "AzureProperties": {
- "AvailableRegions": [
- {
- "ID": "string",
- "Name": "string",
- "NetworkSecurityGroups": [
- {
- "Location": "string",
- "Name": "string",
- "NsgID": "string",
- "ResourceGroup": "string"
}
], - "Networks": [
- {
- "Location": "string",
- "Name": "string",
- "ResourceGroup": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VnetId": "string"
}
], - "ResourceGroups": [
- "string"
]
}
], - "RegionsWithInstances": [
- {
- "ID": "string",
- "Name": "string",
- "NetworkSecurityGroups": [
- {
- "Location": "string",
- "Name": "string",
- "NsgID": "string",
- "ResourceGroup": "string"
}
], - "Networks": [
- {
- "Location": "string",
- "Name": "string",
- "ResourceGroup": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VnetId": "string"
}
], - "ResourceGroups": [
- "string"
]
}
], - "RegisteredApplication": {
- "Application": "string",
- "Subscription": "string",
- "Tenant": "string"
}
}, - "CompatibleTargetTypes": [
- "string"
], - "ESXAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "ESXProperties": {
- "VddkProperties": [
- {
- "LibUploaded": false,
- "Version": "string"
}
], - "Version": "string"
}, - "FilesAccessInfo": {
- "IPorFQDN": "string",
- "PCAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "Password": "string",
- "Username": "string"
}, - "FilesProperties": {
- "FileserverID": "string",
- "SupportedProtocols": [
- "string"
], - "TenantID": "string"
}, - "HyperVAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "HyperVProperties": {
- "Version": "string"
}, - "HyperVSettings": {
- "OverrideAgent": true
}, - "InventoryErrors": [
- "string"
], - "IsInventoryLoading": true,
- "Name": "string",
- "NsxAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "NsxProperties": {
- "Version": "string"
}, - "OtherFilesAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "TargetName": "string",
- "TargetUUID": "b91575b3-630c-4223-8216-11d24760addd",
- "Username": "string"
}, - "OverrideType": "string",
- "PermissionsError": {
- "ErrorMsg": "string",
- "Source": [
- "string"
], - "Target": [
- "string"
]
}, - "Roles": [
- "string"
], - "SpProviderIds": [
- "string"
], - "Type": "string",
- "TypeDescription": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "Version": "string",
- "VmProviderIds": [
- "string"
]
}, - "Status": {
- "Message": "string",
- "State": "string"
}, - "TaskUuid": "string"
}Deletes a provider whose UUID is specified.
Sample API Syntax: https://move.address/move/v2/81b0a14d-c937-4872-b792-d46484ee8905
| id required | string Provider UUID. |
curl --request DELETE \ --url https://www.nutanix.dev//move/v2/providers/{id} \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Status": {
- "Message": "string",
- "State": "string"
}
}Updates PC credentials for an existing provider.
Sample API Syntax: https://move.address/move/v2/81b0a14d-c937-4872-b792-d46484ee8905/EditEntity
| id required | string Provider UUID. |
Updated PC access information for the provider.
| IPorFQDN | string Prism Central IP Address or FQDN. |
| Password | string Prism Central password. |
| Username | string Prism Central username. |
curl --request PUT \ --url https://www.nutanix.dev//move/v2/providers/{id}/editentity \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "IPorFQDN": "string", "Password": "string", "Username": "string" }'
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Spec": {
- "AOSAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "RegisteredVCAccessInfo": [
- {
- "IPAddress": "string",
- "Password": "string",
- "Username": "string"
}
], - "Username": "string"
}, - "AOSCCAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "RegisteredVCAccessInfo": [
- {
- "IPAddress": "string",
- "Password": "string",
- "Username": "string"
}
], - "Username": "string"
}, - "AOSCCProperties": {
- "ClusterUuid": "a41276f4-8dfe-4627-8c72-a3a955f6e850"
}, - "AOSProperties": {
- "AddFNSProvider": true,
- "CategoriesMapping": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "Clusters": [
- {
- "CompatibleTargetTypes": [
- "string"
], - "Containers": [
- {
- "FreeBytes": "string",
- "IsNutanixManaged": true,
- "Name": "string",
- "TotalBytes": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "UsedBytes": "string"
}
], - "HypervisorTypes": [
- "string"
], - "IPorFQDN": "string",
- "Name": "string",
- "Networks": [
- {
- "IPPool": [
- "string"
], - "IsIpamEnabled": true,
- "Name": "string",
- "UUID": "string",
- "WarningMsg": "string"
}
], - "RegisteredVCIPAddress": "string",
- "SupportedCpuModels": [
- {
- "IsDefault": true,
- "Name": "string",
- "UUID": "string",
- "Vendor": "string"
}
], - "TargetUUID": "b91575b3-630c-4223-8216-11d24760addd",
- "Type": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "Version": "string",
- "Vpcs": [
- {
- "Name": "string",
- "UUID": "string",
- "VPCSubnets": [
- {
- "IPPool": [
- null
], - "Name": "string",
- "UUID": "string",
- "WarningMsg": "string"
}
], - "VPCTunnel": {
- "Name": "string",
- "UUID": "string"
}
}
]
}
], - "Errors": [
- {
- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}
], - "FeaturesStatus": [
- {
- "IsEnabled": true,
- "Name": "string",
- "Version": "string"
}
], - "Projects": [
- {
- "ClusterList": [
- "string"
], - "ErrorList": [
- "string"
], - "Name": "string",
- "RunbookList": [
- "string"
], - "SubnetList": [
- "string"
], - "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "UserList": [
- "string"
], - "VpcList": [
- "string"
], - "VpcTunnelList": [
- "string"
]
}
], - "Runbooks": [
- {
- "Description": "string",
- "ErrorList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "IsSupported": true,
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "ProjectUUID": "string",
- "TaskList": [
- {
- "AdditionalProperties": { },
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "Type": "string",
- "UUID": "string"
}
], - "UUID": "string",
- "VariableList": [
- {
- "DataType": "BASE",
- "Description": "string",
- "IsDynamic": true,
- "IsEditable": true,
- "IsHidden": true,
- "IsMandatory": true,
- "IsSecret": true,
- "Label": "string",
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "Options": {
- "AdditionalProperties": { },
- "Choices": [
- "string"
], - "Type": "PREDEFINED"
}, - "Regex": {
- "ShouldValidate": true,
- "Value": "string"
}, - "UUID": "string",
- "Value": "string",
- "ValueType": "STRING"
}
], - "WarningList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
]
}
], - "Users": [
- {
- "Name": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}
], - "Version": "string"
}, - "AWSAccessInfo": {
- "AccessKey": "string",
- "SecretKey": "string"
}, - "AWSProperties": {
- "AvailableRegions": [
- {
- "AvailabilityZones": [
- "string"
], - "ID": "string",
- "Name": "string",
- "Networks": [
- {
- "IsDefault": true,
- "Name": "string",
- "SecurityGroups": [
- {
- "IsDefault": true,
- "Name": "string",
- "SgID": "string",
- "VpcID": "string"
}
], - "State": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VpcId": "string"
}
]
}
], - "ContextEntries": [
- {
- "ContextKeyName": "string",
- "ContextKeyType": "string",
- "ContextKeyValues": [
- "string"
]
}
], - "RegionsWithInstances": [
- {
- "AvailabilityZones": [
- "string"
], - "ID": "string",
- "Name": "string",
- "Networks": [
- {
- "IsDefault": true,
- "Name": "string",
- "SecurityGroups": [
- {
- "IsDefault": true,
- "Name": "string",
- "SgID": "string",
- "VpcID": "string"
}
], - "State": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VpcId": "string"
}
]
}
]
}, - "AzureAccessInfo": {
- "ClientID": "string",
- "ClientSecret": "string",
- "SubscriptionID": "string",
- "TenantID": "string"
}, - "AzureProperties": {
- "AvailableRegions": [
- {
- "ID": "string",
- "Name": "string",
- "NetworkSecurityGroups": [
- {
- "Location": "string",
- "Name": "string",
- "NsgID": "string",
- "ResourceGroup": "string"
}
], - "Networks": [
- {
- "Location": "string",
- "Name": "string",
- "ResourceGroup": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VnetId": "string"
}
], - "ResourceGroups": [
- "string"
]
}
], - "RegionsWithInstances": [
- {
- "ID": "string",
- "Name": "string",
- "NetworkSecurityGroups": [
- {
- "Location": "string",
- "Name": "string",
- "NsgID": "string",
- "ResourceGroup": "string"
}
], - "Networks": [
- {
- "Location": "string",
- "Name": "string",
- "ResourceGroup": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VnetId": "string"
}
], - "ResourceGroups": [
- "string"
]
}
], - "RegisteredApplication": {
- "Application": "string",
- "Subscription": "string",
- "Tenant": "string"
}
}, - "CompatibleTargetTypes": [
- "string"
], - "ESXAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "ESXProperties": {
- "VddkProperties": [
- {
- "LibUploaded": false,
- "Version": "string"
}
], - "Version": "string"
}, - "FilesAccessInfo": {
- "IPorFQDN": "string",
- "PCAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "Password": "string",
- "Username": "string"
}, - "FilesProperties": {
- "FileserverID": "string",
- "SupportedProtocols": [
- "string"
], - "TenantID": "string"
}, - "HyperVAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "HyperVProperties": {
- "Version": "string"
}, - "HyperVSettings": {
- "OverrideAgent": true
}, - "InventoryErrors": [
- "string"
], - "IsInventoryLoading": true,
- "Name": "string",
- "NsxAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "NsxProperties": {
- "Version": "string"
}, - "OtherFilesAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "TargetName": "string",
- "TargetUUID": "b91575b3-630c-4223-8216-11d24760addd",
- "Username": "string"
}, - "OverrideType": "string",
- "PermissionsError": {
- "ErrorMsg": "string",
- "Source": [
- "string"
], - "Target": [
- "string"
]
}, - "Roles": [
- "string"
], - "SpProviderIds": [
- "string"
], - "Type": "string",
- "TypeDescription": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "Version": "string",
- "VmProviderIds": [
- "string"
]
}, - "Status": {
- "Message": "string",
- "State": "string"
}, - "TaskUuid": "string"
}Gets inventory of the provider. Inventory collection gathers information about the VMs in a provider. The information retrieved includes:
| id required | string UUID of the provider. |
| targetSpProvider | string The UUID of target security policy provider to fetch customized "AssociatedCategories" for each workload. |
Workload search filter object to filter the required VM information.
| AfterOffset | integer <int64> |
| BeforeOffset | integer <int64> |
| Fields | Array of strings |
object (Filters) | |
| Limit | integer <int64> |
| Query | string |
| RefreshInventory | boolean Default: false Refresh Provider Inventory. |
| ShowVMS | string Enum: "all" "ineligiblevms" "eligiblevms" |
| SortBy | string (SortColumn) Enum: "VMName" "Cluster" "Datacenter" "OS" "HostName" "PowerState" "VCPU" "Memory" "Storage" "ShareName" "SharePath" "sequence_number" The column based on which the filter output are sorted. The permissible list of values- VMName, Cluster, Datacenter, OS, HostName, PowerState, VCPU, Memory, Storage, ShareName, SharePath. |
| SortOrderDesc | boolean |
| UpdateInventoryToPlans | boolean Default: true Update refreshed inventory details to all available plans which have the provider as the source. This flag is honored only if 'RefreshInventory' is also 'true'. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/providers/{id}/workloads/list \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "AfterOffset": 0, "BeforeOffset": 0, "Fields": [ "string" ], "Filter": { "Categories": { "property1": [ "string" ], "property2": [ "string" ] }, "Cluster": [ "string" ], "Datacenter": [ "string" ], "Host": [ "string" ], "ShareUuids": [ "b4d15375-1097-4c96-a4c4-4cb5809b05bb" ], "TargetType": "string", "VMUuids": [ "b4d15375-1097-4c96-a4c4-4cb5809b05bb" ] }, "Limit": 0, "Query": "string", "RefreshInventory": false, "ShowVMS": "all", "SortBy": "VMName", "SortOrderDesc": true, "UpdateInventoryToPlans": true }'
{- "APIVersion": "string",
- "Entities": [
- {
- "AdditionalProperties": {
- "property1": "string",
- "property2": "string"
}, - "AssociatedCategories": [
- "string"
], - "AssociatedPolicies": [
- {
- "FnsSplitPoliciesNames": [
- "string"
], - "Nsx": {
- "PolicyName": "string",
- "PolicyUuid": "string"
}
}
], - "Categories": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "ClusterName": "string",
- "DatacenterName": "string",
- "ErrorMessages": [
- "string"
], - "HostName": "string",
- "HostUuid": "7bf6113d-25df-4b56-9152-eef636a7e385",
- "HypervisorType": "string",
- "InternalUuid": "string",
- "MemoryMB": 0,
- "MigrationSupportStatus": 0,
- "MigrationSupportWarningStatus": 0,
- "Networks": [
- {
- "Devices": [
- 0
], - "ID": "string",
- "IpAddresses": [
- "string"
], - "MacIDs": [
- "string"
], - "Name": "string",
- "VPC": {
- "ID": "string",
- "Name": "string"
}
}
], - "Nics": {
- "NicsInfo": [
- {
- "IpsConf": [
- {
- "DnsIps": "string",
- "Gateway": "string",
- "IpAddress": "string",
- "PrefixLength": 32
}
], - "Mac": "string",
- "NetworkName": "string"
}
]
}, - "NumCDROMs": 0,
- "NumCPU": 0,
- "NumCoresPerSocket": 0,
- "NumEthernetCards": 0,
- "OSType": "string",
- "OverallCpuDemandInMHz": 0,
- "PowerState": "string",
- "RecID": 0,
- "SourceUuid": "string",
- "StorageAllocatedInBytes": 0,
- "StorageUsedInBytes": 0,
- "VMName": "string",
- "VMUuid": "string",
- "VmID": "string",
- "WarningMessages": [
- "string"
]
}
], - "MetaData": {
- "AfterOffset": 0,
- "BeforeOffset": 0,
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Limit": 0,
- "Name": "string",
- "NumDiscoveredWorkloads": 0,
- "NumMigratedWorkloads": 0,
- "SortBy": "string",
- "SortOrderDesc": true,
- "SpecVersion": "string",
- "UUID": "string",
- "WorkloadsFilters": {
- "Categories": {
- "FilterName": "string",
- "Items": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}
}, - "Clusters": {
- "FilterName": "string",
- "Items": [
- "string"
]
}, - "Datacenters": {
- "FilterName": "string",
- "Items": [
- "string"
]
}, - "Hosts": {
- "FilterName": "string",
- "Items": [
- "string"
]
}, - "Networks": {
- "FilterName": "string",
- "Items": [
- "string"
]
}, - "OSTypes": {
- "FilterName": "string",
- "Items": [
- "string"
]
}, - "PowerStates": {
- "FilterName": "string",
- "Items": [
- "string"
]
}
}
}, - "Nodes": {
- "Entities": [
- {
- "AdditionalProperties": {
- "property1": "string",
- "property2": "string"
}, - "CpuCapacityInHz": 0,
- "HypervisorType": "string",
- "HypervisorVersion": "string",
- "MemoryCapacityInBytes": 0,
- "NodeName": "string",
- "NodeUuid": "7a6f37b9-eac1-48e9-bf42-be0ce4a5976b",
- "NumCpuCores": 0,
- "NumCpuSockets": 0,
- "NumCpuThreads": 0,
- "NumVms": 0,
- "RecID": 0,
- "ServiceVmIp": "string",
- "SourceUuid": "f2fb35f9-f9aa-4fe2-9bc6-168f8121aa0b",
- "StorageCapacityInBytes": 0,
- "UsedStorageInBytes": 0
}
], - "MetaData": {
- "AfterOffset": 0,
- "BeforeOffset": 0,
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Limit": 0,
- "Name": "string",
- "NumDiscoveredWorkloads": 0,
- "NumMigratedWorkloads": 0,
- "SortBy": "string",
- "SortOrderDesc": true,
- "SpecVersion": "string",
- "UUID": "string",
- "WorkloadsFilters": {
- "Categories": {
- "FilterName": "string",
- "Items": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}
}, - "Clusters": {
- "FilterName": "string",
- "Items": [
- "string"
]
}, - "Datacenters": {
- "FilterName": "string",
- "Items": [
- "string"
]
}, - "Hosts": {
- "FilterName": "string",
- "Items": [
- "string"
]
}, - "Networks": {
- "FilterName": "string",
- "Items": [
- "string"
]
}, - "OSTypes": {
- "FilterName": "string",
- "Items": [
- "string"
]
}, - "PowerStates": {
- "FilterName": "string",
- "Items": [
- "string"
]
}
}
}
}, - "SecurityPolicyData": {
- "AddressGroups": {
- "property1": {
- "Description": "string",
- "Id": "string",
- "IpRanges": [
- {
- "EndIp": "string",
- "ResourceType": "string",
- "StartIp": "string"
}
], - "Ipv4Addresses": [
- {
- "PrefixLength": 0,
- "ResourceType": "string",
- "Value": "string"
}
], - "Name": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string"
}, - "property2": {
- "Description": "string",
- "Id": "string",
- "IpRanges": [
- {
- "EndIp": "string",
- "ResourceType": "string",
- "StartIp": "string"
}
], - "Ipv4Addresses": [
- {
- "PrefixLength": 0,
- "ResourceType": "string",
- "Value": "string"
}
], - "Name": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string"
}
}, - "Categories": {
- "property1": {
- "Description": "string",
- "Id": "string",
- "Key": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string",
- "Type": "string",
- "Value": "string"
}, - "property2": {
- "Description": "string",
- "Id": "string",
- "Key": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string",
- "Type": "string",
- "Value": "string"
}
}, - "Metadata": {
- "AddressGroups": {
- "Count": 0,
- "CurrOffset": 0,
- "NextOffset": 0,
- "NumDiscoveredWorkloads": 0,
- "NumMigratedWorkloads": 0,
- "OrderedWorkloads": [
- "string"
], - "PrevOffset": 0,
- "TotalCount": 0
}, - "Categories": {
- "Count": 0,
- "CurrOffset": 0,
- "NextOffset": 0,
- "NumDiscoveredWorkloads": 0,
- "NumMigratedWorkloads": 0,
- "OrderedWorkloads": [
- "string"
], - "PrevOffset": 0,
- "TotalCount": 0
}, - "NsGroups": {
- "Count": 0,
- "CurrOffset": 0,
- "NextOffset": 0,
- "NumDiscoveredWorkloads": 0,
- "NumMigratedWorkloads": 0,
- "OrderedWorkloads": [
- "string"
], - "PrevOffset": 0,
- "TotalCount": 0
}, - "NsServices": {
- "Count": 0,
- "CurrOffset": 0,
- "NextOffset": 0,
- "NumDiscoveredWorkloads": 0,
- "NumMigratedWorkloads": 0,
- "OrderedWorkloads": [
- "string"
], - "PrevOffset": 0,
- "TotalCount": 0
}, - "NsVirtualMachines": {
- "Count": 0,
- "CurrOffset": 0,
- "NextOffset": 0,
- "NumDiscoveredWorkloads": 0,
- "NumMigratedWorkloads": 0,
- "OrderedWorkloads": [
- "string"
], - "PrevOffset": 0,
- "TotalCount": 0
}, - "NsVpcs": {
- "Count": 0,
- "CurrOffset": 0,
- "NextOffset": 0,
- "NumDiscoveredWorkloads": 0,
- "NumMigratedWorkloads": 0,
- "OrderedWorkloads": [
- "string"
], - "PrevOffset": 0,
- "TotalCount": 0
}, - "SecurityPolicies": {
- "Count": 0,
- "CurrOffset": 0,
- "NextOffset": 0,
- "NumDiscoveredWorkloads": 0,
- "NumMigratedWorkloads": 0,
- "OrderedWorkloads": [
- "string"
], - "PrevOffset": 0,
- "TotalCount": 0
}
}, - "NsGroups": {
- "property1": {
- "CreateUser": "string",
- "Description": "string",
- "EffectiveMembers": {
- "IpAddresses": [
- "string"
], - "VirtualMachineIds": [
- "string"
]
}, - "Id": "string",
- "IsNestedGroup": true,
- "MemberCount": 0,
- "Name": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string",
- "SystemOwned": true
}, - "property2": {
- "CreateUser": "string",
- "Description": "string",
- "EffectiveMembers": {
- "IpAddresses": [
- "string"
], - "VirtualMachineIds": [
- "string"
]
}, - "Id": "string",
- "IsNestedGroup": true,
- "MemberCount": 0,
- "Name": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string",
- "SystemOwned": true
}
}, - "NsServices": {
- "property1": {
- "CreateUser": "string",
- "DefaultService": true,
- "Description": "string",
- "Id": "string",
- "Name": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string",
- "ServiceElements": [
- {
- "DestinationPorts": [
- "string"
], - "IcmpCode": 0,
- "IcmpType": 0,
- "MarkedForDelete": true,
- "Overridden": true,
- "Protocol": "string",
- "ResourceType": "L4PortSetServiceEntryType",
- "SourcePorts": [
- "string"
]
}
], - "SystemOwned": true
}, - "property2": {
- "CreateUser": "string",
- "DefaultService": true,
- "Description": "string",
- "Id": "string",
- "Name": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string",
- "ServiceElements": [
- {
- "DestinationPorts": [
- "string"
], - "IcmpCode": 0,
- "IcmpType": 0,
- "MarkedForDelete": true,
- "Overridden": true,
- "Protocol": "string",
- "ResourceType": "L4PortSetServiceEntryType",
- "SourcePorts": [
- "string"
]
}
], - "SystemOwned": true
}
}, - "NsVirtualMachines": {
- "property1": {
- "InternalUuid": "string",
- "Name": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string"
}, - "property2": {
- "InternalUuid": "string",
- "Name": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string"
}
}, - "SecurityPolicies": {
- "property1": {
- "Category": "string",
- "CreateUser": "string",
- "Id": "string",
- "Name": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string",
- "RuleCount": 0,
- "Rules": [
- {
- "Action": "string",
- "BoundDirection": "In",
- "BoundEntity": {
- "Addressgroups": {
- "Entities": [
- "string"
], - "EntitySubType": "Category",
- "EntityType": "VM"
}, - "Categories": {
- "Entities": [
- "string"
], - "EntitySubType": "Category",
- "EntityType": "VM"
}, - "RawIpAddresses": {
- "Entities": [
- "string"
], - "EntitySubType": "Category",
- "EntityType": "VM"
}
}, - "CreateUser": "string",
- "Description": "string",
- "DestinationGroups": [
- "string"
], - "DestinationIps": [
- "string"
], - "Direction": "string",
- "Disabled": true,
- "Id": "string",
- "IpProtocol": "string",
- "IsDestinationGroupsNegated": true,
- "IsSourceGroupsNegated": true,
- "Name": "string",
- "PolicyId": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string",
- "RuleId": 0,
- "SecuredEntity": {
- "Categories": {
- "Entities": [
- "string"
], - "EntitySubType": "Category",
- "EntityType": "VM"
}
}, - "SecuredGroupAction": "ALLOW",
- "SequenceNumber": 0,
- "ServiceEntries": [
- {
- "DestinationPorts": [
- "string"
], - "IcmpCode": 0,
- "IcmpType": 0,
- "MarkedForDelete": true,
- "Overridden": true,
- "Protocol": "string",
- "ResourceType": "L4PortSetServiceEntryType",
- "SourcePorts": [
- "string"
]
}
], - "Services": [
- "string"
], - "SourceGroups": [
- "string"
], - "SourceIps": [
- "string"
], - "Type": "APPLICATION",
- "UniqueId": "string"
}
], - "SecuredEntity": {
- "Categories": {
- "Entities": [
- "string"
], - "EntitySubType": "Category",
- "EntityType": "VM"
}
}, - "SequenceNumber": 0,
- "UniqueId": "string"
}, - "property2": {
- "Category": "string",
- "CreateUser": "string",
- "Id": "string",
- "Name": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string",
- "RuleCount": 0,
- "Rules": [
- {
- "Action": "string",
- "BoundDirection": "In",
- "BoundEntity": {
- "Addressgroups": {
- "Entities": [
- "string"
], - "EntitySubType": "Category",
- "EntityType": "VM"
}, - "Categories": {
- "Entities": [
- "string"
], - "EntitySubType": "Category",
- "EntityType": "VM"
}, - "RawIpAddresses": {
- "Entities": [
- "string"
], - "EntitySubType": "Category",
- "EntityType": "VM"
}
}, - "CreateUser": "string",
- "Description": "string",
- "DestinationGroups": [
- "string"
], - "DestinationIps": [
- "string"
], - "Direction": "string",
- "Disabled": true,
- "Id": "string",
- "IpProtocol": "string",
- "IsDestinationGroupsNegated": true,
- "IsSourceGroupsNegated": true,
- "Name": "string",
- "PolicyId": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string",
- "RuleId": 0,
- "SecuredEntity": {
- "Categories": {
- "Entities": [
- "string"
], - "EntitySubType": "Category",
- "EntityType": "VM"
}
}, - "SecuredGroupAction": "ALLOW",
- "SequenceNumber": 0,
- "ServiceEntries": [
- {
- "DestinationPorts": [
- "string"
], - "IcmpCode": 0,
- "IcmpType": 0,
- "MarkedForDelete": true,
- "Overridden": true,
- "Protocol": "string",
- "ResourceType": "L4PortSetServiceEntryType",
- "SourcePorts": [
- "string"
]
}
], - "Services": [
- "string"
], - "SourceGroups": [
- "string"
], - "SourceIps": [
- "string"
], - "Type": "APPLICATION",
- "UniqueId": "string"
}
], - "SecuredEntity": {
- "Categories": {
- "Entities": [
- "string"
], - "EntitySubType": "Category",
- "EntityType": "VM"
}
}, - "SequenceNumber": 0,
- "UniqueId": "string"
}
}, - "Vpcs": {
- "property1": {
- "AssociatedCategories": [
- {
- "Description": "string",
- "Id": "string",
- "Key": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string",
- "Type": "string",
- "Value": "string"
}
], - "Id": "string",
- "Name": "string"
}, - "property2": {
- "AssociatedCategories": [
- {
- "Description": "string",
- "Id": "string",
- "Key": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string",
- "Type": "string",
- "Value": "string"
}
], - "Id": "string",
- "Name": "string"
}
}
}, - "Shares": [
- {
- "AdditionalProperties": {
- "property1": "string",
- "property2": "string"
}, - "ProtocolTypes": [
- "string"
], - "RecID": 0,
- "ShareName": "string",
- "SharePath": "string",
- "ShareUuid": "string",
- "SourceUuid": "string"
}
]
}Retrieves the details of a specified runbook from the Prism Central provider. The runbook details include the runbook variables, tasks, and whether the runbook is supported to run with Move.
Sample API syntax: https://move.address/move/v2/81b0a14d-c937-4872-b792-d46484ee8905/runbooks/d376e450-4185-ea73-22a4-1820f3865eea
| id required | string UUID of the provider. |
| runbookid required | string UUID of the runbook. |
curl --request GET \ --url https://www.nutanix.dev//move/v2/providers/{id}/runbooks/{runbookid} \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Spec": {
- "Description": "string",
- "ErrorList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "IsSupported": true,
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "ProjectUUID": "string",
- "TaskList": [
- {
- "AdditionalProperties": { },
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "Type": "string",
- "UUID": "string"
}
], - "UUID": "string",
- "VariableList": [
- {
- "DataType": "BASE",
- "Description": "string",
- "IsDynamic": true,
- "IsEditable": true,
- "IsHidden": true,
- "IsMandatory": true,
- "IsSecret": true,
- "Label": "string",
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "Options": {
- "AdditionalProperties": { },
- "Choices": [
- "string"
], - "Type": "PREDEFINED"
}, - "Regex": {
- "ShouldValidate": true,
- "Value": "string"
}, - "UUID": "string",
- "Value": "string",
- "ValueType": "STRING"
}
], - "WarningList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
]
}
}Gets the provider information.
List the provider UUIDs in the request for details of specified list of providers. If no provider UUIDs are specified, returns the information about all providers known to the Move application. The information retrieved includes:
Filter the list of providers to be retrieved by giving input provider filter object.
| EntityType | string Enum: "VM" "Files" "SecurityPolicy" "Conversion" Entity type filter. |
| RefreshInventory | boolean Default: false Refresh Provider Inventory. |
| TargetUUID | string <uuid> Target provider UUID. |
| Type | string Provider type. |
| UUIDs | Array of strings <uuid> [ items <uuid > ] List of Provider UUIDs. |
| UpdateInventoryToPlans | boolean Default: true Update refreshed inventory details to all available plans which have the providers as the source. This flag is honored only if 'RefreshInventory' is also 'true'. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/providers/list \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "EntityType": "VM", "RefreshInventory": false, "TargetUUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "Type": "string", "UUIDs": [ "b4d15375-1097-4c96-a4c4-4cb5809b05bb" ], "UpdateInventoryToPlans": true }'
{- "Entities": [
- {
- "MetaData": {
- "CreationTime": "2019-07-11 08:51:24.853998 +0000 UTC",
- "LastUpdateTime": "2019-07-12 05:22:35.419174 +0000 UTC",
- "NumDiscoveredWorkloads": 1,
- "NumMigratedWorkloads": 1,
- "UUID": "89233dbd-7eba-4ca7-b600-119a3d336d6b"
}, - "Spec": {
- "AOSAccessInfo": {
- "IPorFQDN": "my_ahv_ip",
- "Username": "my_ahv_user_name"
}, - "AOSProperties": {
- "Clusters": [
- {
- "Containers": [
- {
- "Name": "DM_Nutest_Ctr",
- "UUID": "0ec46875-a905-4a48-81a1-2264b3d228a0"
}
], - "HypervisorTypes": [
- "kKvm"
], - "Name": "Sindhu",
- "Networks": [
- {
- "Name": "DM_Nutest_Net",
- "UUID": "343eaa8f-a251-4ec0-8ede-729c97f7cddc"
}
], - "TargetUUID": "89233dbd-7eba-4ca7-b600-119a3d336d6b",
- "UUID": "00058576-cf00-2cf4-0000-000000005bbc"
}
], - "Errors": null
}, - "Name": "my_ahv_ip",
- "Type": "AOS_AHV_PE",
- "Version": "5.11"
}
}, - {
- "MetaData": {
- "CreationTime": "2019-07-11 08:51:03.741263 +0000 UTC",
- "LastUpdateTime": "2019-07-14 11:38:05.765862 +0000 UTC",
- "NumDiscoveredWorkloads": 1,
- "NumMigratedWorkloads": 1,
- "UUID": "3296cbc6-33d9-40f3-af7c-3224bd69844b"
}, - "Spec": {
- "AWSAccessInfo": {
- "AccessKey": "aws_access_key"
}, - "AWSProperties": {
- "AvailableRegions": [
- {
- "ID": "ap-southeast-1",
- "Name": "AP SOUTHEAST 1"
}, - {
- "ID": "ap-northeast-2",
- "Name": "AP NORTHEAST 2"
}, - {
- "ID": "ap-northeast-1",
- "Name": "AP NORTHEAST 1"
}, - {
- "ID": "us-east-1",
- "Name": "US EAST 1"
}, - {
- "ID": "us-west-1",
- "Name": "US WEST 1"
}, - {
- "ID": "us-west-2",
- "Name": "US WEST 2"
}, - {
- "ID": "ap-south-1",
- "Name": "AP SOUTH 1"
}, - {
- "ID": "us-east-2",
- "Name": "US EAST 2"
}
], - "RegionsWithInstances": [
- {
- "ID": "ap-southeast-1",
- "Name": "AP SOUTHEAST 1"
}, - {
- "ID": "ap-northeast-2",
- "Name": "AP NORTHEAST 2"
}, - {
- "ID": "ap-northeast-1",
- "Name": "AP NORTHEAST 1"
}, - {
- "ID": "us-east-1",
- "Name": "US EAST 1"
}, - {
- "ID": "us-west-1",
- "Name": "US WEST 1"
}, - {
- "ID": "us-west-2",
- "Name": "US WEST 2"
}, - {
- "ID": "ap-south-1",
- "Name": "AP SOUTH 1"
}, - {
- "ID": "us-east-2",
- "Name": "US EAST 2"
}
]
}, - "Name": "my_aws_instance",
- "Type": "AWS_EC2",
- "Version": "2016-11-15"
}
}
], - "MetaData": {
- "Count": 2
}
}Gets details of a single provider whose UUID is specified. The information retrieved includes:
| id required | string Provider UUID. |
curl --request GET \ --url https://www.nutanix.dev//move/v2/providers/{id} \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "IsInventoryLoading": true,
- "Kind": "string",
- "LastInventoryRefreshTime": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "NumDiscoveredNodes": 0,
- "NumDiscoveredWorkloads": 0,
- "NumMigratedWorkloads": 0,
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Spec": {
- "AOSAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "RegisteredVCAccessInfo": [
- {
- "IPAddress": "string",
- "Password": "string",
- "Username": "string"
}
], - "Username": "string"
}, - "AOSCCAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "RegisteredVCAccessInfo": [
- {
- "IPAddress": "string",
- "Password": "string",
- "Username": "string"
}
], - "Username": "string"
}, - "AOSCCProperties": {
- "ClusterUuid": "a41276f4-8dfe-4627-8c72-a3a955f6e850"
}, - "AOSProperties": {
- "AddFNSProvider": true,
- "CategoriesMapping": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "Clusters": [
- {
- "CompatibleTargetTypes": [
- "string"
], - "Containers": [
- {
- "FreeBytes": "string",
- "IsNutanixManaged": true,
- "Name": "string",
- "TotalBytes": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "UsedBytes": "string"
}
], - "HypervisorTypes": [
- "string"
], - "IPorFQDN": "string",
- "Name": "string",
- "Networks": [
- {
- "IPPool": [
- "string"
], - "IsIpamEnabled": true,
- "Name": "string",
- "UUID": "string",
- "WarningMsg": "string"
}
], - "RegisteredVCIPAddress": "string",
- "SupportedCpuModels": [
- {
- "IsDefault": true,
- "Name": "string",
- "UUID": "string",
- "Vendor": "string"
}
], - "TargetUUID": "b91575b3-630c-4223-8216-11d24760addd",
- "Type": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "Version": "string",
- "Vpcs": [
- {
- "Name": "string",
- "UUID": "string",
- "VPCSubnets": [
- {
- "IPPool": [
- null
], - "Name": "string",
- "UUID": "string",
- "WarningMsg": "string"
}
], - "VPCTunnel": {
- "Name": "string",
- "UUID": "string"
}
}
]
}
], - "Errors": [
- {
- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}
], - "FeaturesStatus": [
- {
- "IsEnabled": true,
- "Name": "string",
- "Version": "string"
}
], - "Projects": [
- {
- "ClusterList": [
- "string"
], - "ErrorList": [
- "string"
], - "Name": "string",
- "RunbookList": [
- "string"
], - "SubnetList": [
- "string"
], - "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "UserList": [
- "string"
], - "VpcList": [
- "string"
], - "VpcTunnelList": [
- "string"
]
}
], - "Runbooks": [
- {
- "Description": "string",
- "ErrorList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "IsSupported": true,
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "ProjectUUID": "string",
- "TaskList": [
- {
- "AdditionalProperties": { },
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "Type": "string",
- "UUID": "string"
}
], - "UUID": "string",
- "VariableList": [
- {
- "DataType": "BASE",
- "Description": "string",
- "IsDynamic": true,
- "IsEditable": true,
- "IsHidden": true,
- "IsMandatory": true,
- "IsSecret": true,
- "Label": "string",
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "Options": {
- "AdditionalProperties": { },
- "Choices": [
- "string"
], - "Type": "PREDEFINED"
}, - "Regex": {
- "ShouldValidate": true,
- "Value": "string"
}, - "UUID": "string",
- "Value": "string",
- "ValueType": "STRING"
}
], - "WarningList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
]
}
], - "Users": [
- {
- "Name": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}
], - "Version": "string"
}, - "AWSAccessInfo": {
- "AccessKey": "string",
- "SecretKey": "string"
}, - "AWSProperties": {
- "AvailableRegions": [
- {
- "AvailabilityZones": [
- "string"
], - "ID": "string",
- "Name": "string",
- "Networks": [
- {
- "IsDefault": true,
- "Name": "string",
- "SecurityGroups": [
- {
- "IsDefault": true,
- "Name": "string",
- "SgID": "string",
- "VpcID": "string"
}
], - "State": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VpcId": "string"
}
]
}
], - "ContextEntries": [
- {
- "ContextKeyName": "string",
- "ContextKeyType": "string",
- "ContextKeyValues": [
- "string"
]
}
], - "RegionsWithInstances": [
- {
- "AvailabilityZones": [
- "string"
], - "ID": "string",
- "Name": "string",
- "Networks": [
- {
- "IsDefault": true,
- "Name": "string",
- "SecurityGroups": [
- {
- "IsDefault": true,
- "Name": "string",
- "SgID": "string",
- "VpcID": "string"
}
], - "State": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VpcId": "string"
}
]
}
]
}, - "AzureAccessInfo": {
- "ClientID": "string",
- "ClientSecret": "string",
- "SubscriptionID": "string",
- "TenantID": "string"
}, - "AzureProperties": {
- "AvailableRegions": [
- {
- "ID": "string",
- "Name": "string",
- "NetworkSecurityGroups": [
- {
- "Location": "string",
- "Name": "string",
- "NsgID": "string",
- "ResourceGroup": "string"
}
], - "Networks": [
- {
- "Location": "string",
- "Name": "string",
- "ResourceGroup": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VnetId": "string"
}
], - "ResourceGroups": [
- "string"
]
}
], - "RegionsWithInstances": [
- {
- "ID": "string",
- "Name": "string",
- "NetworkSecurityGroups": [
- {
- "Location": "string",
- "Name": "string",
- "NsgID": "string",
- "ResourceGroup": "string"
}
], - "Networks": [
- {
- "Location": "string",
- "Name": "string",
- "ResourceGroup": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VnetId": "string"
}
], - "ResourceGroups": [
- "string"
]
}
], - "RegisteredApplication": {
- "Application": "string",
- "Subscription": "string",
- "Tenant": "string"
}
}, - "CompatibleTargetTypes": [
- "string"
], - "ESXAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "ESXProperties": {
- "VddkProperties": [
- {
- "LibUploaded": false,
- "Version": "string"
}
], - "Version": "string"
}, - "FilesAccessInfo": {
- "IPorFQDN": "string",
- "PCAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "Password": "string",
- "Username": "string"
}, - "FilesProperties": {
- "FileserverID": "string",
- "SupportedProtocols": [
- "string"
], - "TenantID": "string"
}, - "HyperVAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "HyperVProperties": {
- "Version": "string"
}, - "HyperVSettings": {
- "OverrideAgent": true
}, - "InventoryErrors": [
- "string"
], - "IsInventoryLoading": true,
- "Name": "string",
- "NsxAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "NsxProperties": {
- "Version": "string"
}, - "OtherFilesAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "TargetName": "string",
- "TargetUUID": "b91575b3-630c-4223-8216-11d24760addd",
- "Username": "string"
}, - "OverrideType": "string",
- "PermissionsError": {
- "ErrorMsg": "string",
- "Source": [
- "string"
], - "Target": [
- "string"
]
}, - "Roles": [
- "string"
], - "SpProviderIds": [
- "string"
], - "Type": "string",
- "TypeDescription": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "Version": "string",
- "VmProviderIds": [
- "string"
]
}, - "TaskUuid": "string",
- "Type": "string"
}Updates provider information. The API can update provider name and all fields in provider access info.
Note: The Type field of the provider cannot be updated.
Sample API Syntax: https://move.address/move/v2/81b0a14d-c937-4872-b792-d46484ee8905
| id required | string Provider UUID. |
Information required to be updated in the provider.
| APIVersion | string Move API version |
object (MetaData) Metadata information | |
object (Provider) Information to add provider. |
curl --request PUT \ --url https://www.nutanix.dev//move/v2/providers/{id} \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "APIVersion": "string", "MetaData": { "Count": 0, "CreationTime": "string", "Kind": "string", "LastUpdateTime": "string", "Name": "string", "SpecVersion": "string", "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb" }, "Spec": { "AOSAccessInfo": { "IPorFQDN": "string", "Password": "string", "RegisteredVCAccessInfo": [ { "IPAddress": "string", "Password": "string", "Username": "string" } ], "Username": "string" }, "AOSCCAccessInfo": { "IPorFQDN": "string", "Password": "string", "RegisteredVCAccessInfo": [ { "IPAddress": "string", "Password": "string", "Username": "string" } ], "Username": "string" }, "AOSCCProperties": { "ClusterUuid": "b4d15375-1097-4c96-a4c4-4cb5809b05bb" }, "AOSProperties": { "AddFNSProvider": true, "CategoriesMapping": { "property1": [ "string" ], "property2": [ "string" ] }, "Clusters": [ { "CompatibleTargetTypes": [ "string" ], "Containers": [ { "FreeBytes": "string", "IsNutanixManaged": true, "Name": "string", "TotalBytes": "string", "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "UsedBytes": "string" } ], "HypervisorTypes": [ "string" ], "IPorFQDN": "string", "Name": "string", "Networks": [ { "IPPool": [ "string" ], "IsIpamEnabled": true, "Name": "string", "UUID": "string", "WarningMsg": "string" } ], "RegisteredVCIPAddress": "string", "SupportedCpuModels": [ { "IsDefault": true, "Name": "string", "UUID": "string", "Vendor": "string" } ], "TargetUUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "Type": "string", "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "Version": "string", "Vpcs": [ { "Name": "string", "UUID": "string", "VPCSubnets": [ { "IPPool": [ "string" ], "Name": "string", "UUID": "string", "WarningMsg": "string" } ], "VPCTunnel": { "Name": "string", "UUID": "string" } } ] } ], "Errors": [ { "ApiVersion": "string", "Code": 0, "Kind": "string", "Message": "string", "State": "string" } ], "FeaturesStatus": [ { "IsEnabled": true, "Name": "string", "Version": "string" } ], "Projects": [ { "ClusterList": [ "string" ], "ErrorList": [ "string" ], "Name": "string", "RunbookList": [ "string" ], "SubnetList": [ "string" ], "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "UserList": [ "string" ], "VpcList": [ "string" ], "VpcTunnelList": [ "string" ] } ], "Runbooks": [ { "Description": "string", "ErrorList": [ { "Message": "string", "Title": "string", "Type": "INFO" } ], "IsSupported": true, "MessageList": [ { "Message": "string", "Title": "string", "Type": "INFO" } ], "Name": "string", "ProjectUUID": "string", "TaskList": [ { "MessageList": [ { "Message": "string", "Title": "string", "Type": "INFO" } ], "Name": "string", "Type": "string", "UUID": "string" } ], "UUID": "string", "VariableList": [ { "DataType": "BASE", "Description": "string", "IsDynamic": true, "IsEditable": true, "IsHidden": true, "IsMandatory": true, "IsSecret": true, "Label": "string", "MessageList": [ { "Message": "string", "Title": "string", "Type": "INFO" } ], "Name": "string", "Options": { "Choices": [ "string" ], "Type": "PREDEFINED" }, "Regex": { "ShouldValidate": true, "Value": "string" }, "UUID": "string", "Value": "string", "ValueType": "STRING" } ], "WarningList": [ { "Message": "string", "Title": "string", "Type": "INFO" } ] } ], "Users": [ { "Name": "string", "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb" } ], "Version": "string" }, "AWSAccessInfo": { "AccessKey": "string", "SecretKey": "string" }, "AWSProperties": { "AvailableRegions": [ { "AvailabilityZones": [ "string" ], "ID": "string", "Name": "string", "Networks": [ { "IsDefault": true, "Name": "string", "SecurityGroups": [ { "IsDefault": true, "Name": "string", "SgID": "string", "VpcID": "string" } ], "State": "string", "Subnet": { "property1": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ], "property2": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ] }, "VpcId": "string" } ] } ], "ContextEntries": [ { "ContextKeyName": "string", "ContextKeyType": "string", "ContextKeyValues": [ "string" ] } ], "RegionsWithInstances": [ { "AvailabilityZones": [ "string" ], "ID": "string", "Name": "string", "Networks": [ { "IsDefault": true, "Name": "string", "SecurityGroups": [ { "IsDefault": true, "Name": "string", "SgID": "string", "VpcID": "string" } ], "State": "string", "Subnet": { "property1": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ], "property2": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ] }, "VpcId": "string" } ] } ] }, "AzureAccessInfo": { "ClientID": "string", "ClientSecret": "string", "SubscriptionID": "string", "TenantID": "string" }, "AzureProperties": { "AvailableRegions": [ { "ID": "string", "Name": "string", "NetworkSecurityGroups": [ { "Location": "string", "Name": "string", "NsgID": "string", "ResourceGroup": "string" } ], "Networks": [ { "Location": "string", "Name": "string", "ResourceGroup": "string", "Subnet": { "property1": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ], "property2": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ] }, "VnetId": "string" } ], "ResourceGroups": [ "string" ] } ], "RegionsWithInstances": [ { "ID": "string", "Name": "string", "NetworkSecurityGroups": [ { "Location": "string", "Name": "string", "NsgID": "string", "ResourceGroup": "string" } ], "Networks": [ { "Location": "string", "Name": "string", "ResourceGroup": "string", "Subnet": { "property1": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ], "property2": [ { "Ipv4Cidr": "string", "Ipv6Cidr": "string", "Name": "string", "SubnetID": "string" } ] }, "VnetId": "string" } ], "ResourceGroups": [ "string" ] } ], "RegisteredApplication": { "Application": "string", "Subscription": "string", "Tenant": "string" } }, "CompatibleTargetTypes": [ "string" ], "ESXAccessInfo": { "IPorFQDN": "string", "Password": "string", "Username": "string" }, "ESXProperties": { "VddkProperties": [ { "LibUploaded": false, "Version": "string" } ], "Version": "string" }, "FilesAccessInfo": { "IPorFQDN": "string", "PCAccessInfo": { "IPorFQDN": "string", "Password": "string", "Username": "string" }, "Password": "string", "Username": "string" }, "FilesProperties": { "FileserverID": "string", "SupportedProtocols": [ "string" ], "TenantID": "string" }, "HyperVAccessInfo": { "IPorFQDN": "string", "Password": "string", "Username": "string" }, "HyperVProperties": { "Version": "string" }, "HyperVSettings": { "OverrideAgent": true }, "InventoryErrors": [ "string" ], "IsInventoryLoading": true, "Name": "string", "NsxAccessInfo": { "IPorFQDN": "string", "Password": "string", "Username": "string" }, "NsxProperties": { "Version": "string" }, "OtherFilesAccessInfo": { "IPorFQDN": "string", "Password": "string", "TargetName": "string", "TargetUUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "Username": "string" }, "OverrideType": "string", "PermissionsError": { "ErrorMsg": "string", "Source": [ "string" ], "Target": [ "string" ] }, "Roles": [ "string" ], "SpProviderIds": [ "string" ], "Type": "string", "TypeDescription": "string", "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "Version": "string", "VmProviderIds": [ "string" ] } }'
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Spec": {
- "AOSAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "RegisteredVCAccessInfo": [
- {
- "IPAddress": "string",
- "Password": "string",
- "Username": "string"
}
], - "Username": "string"
}, - "AOSCCAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "RegisteredVCAccessInfo": [
- {
- "IPAddress": "string",
- "Password": "string",
- "Username": "string"
}
], - "Username": "string"
}, - "AOSCCProperties": {
- "ClusterUuid": "a41276f4-8dfe-4627-8c72-a3a955f6e850"
}, - "AOSProperties": {
- "AddFNSProvider": true,
- "CategoriesMapping": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "Clusters": [
- {
- "CompatibleTargetTypes": [
- "string"
], - "Containers": [
- {
- "FreeBytes": "string",
- "IsNutanixManaged": true,
- "Name": "string",
- "TotalBytes": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "UsedBytes": "string"
}
], - "HypervisorTypes": [
- "string"
], - "IPorFQDN": "string",
- "Name": "string",
- "Networks": [
- {
- "IPPool": [
- "string"
], - "IsIpamEnabled": true,
- "Name": "string",
- "UUID": "string",
- "WarningMsg": "string"
}
], - "RegisteredVCIPAddress": "string",
- "SupportedCpuModels": [
- {
- "IsDefault": true,
- "Name": "string",
- "UUID": "string",
- "Vendor": "string"
}
], - "TargetUUID": "b91575b3-630c-4223-8216-11d24760addd",
- "Type": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "Version": "string",
- "Vpcs": [
- {
- "Name": "string",
- "UUID": "string",
- "VPCSubnets": [
- {
- "IPPool": [
- null
], - "Name": "string",
- "UUID": "string",
- "WarningMsg": "string"
}
], - "VPCTunnel": {
- "Name": "string",
- "UUID": "string"
}
}
]
}
], - "Errors": [
- {
- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}
], - "FeaturesStatus": [
- {
- "IsEnabled": true,
- "Name": "string",
- "Version": "string"
}
], - "Projects": [
- {
- "ClusterList": [
- "string"
], - "ErrorList": [
- "string"
], - "Name": "string",
- "RunbookList": [
- "string"
], - "SubnetList": [
- "string"
], - "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "UserList": [
- "string"
], - "VpcList": [
- "string"
], - "VpcTunnelList": [
- "string"
]
}
], - "Runbooks": [
- {
- "Description": "string",
- "ErrorList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "IsSupported": true,
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "ProjectUUID": "string",
- "TaskList": [
- {
- "AdditionalProperties": { },
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "Type": "string",
- "UUID": "string"
}
], - "UUID": "string",
- "VariableList": [
- {
- "DataType": "BASE",
- "Description": "string",
- "IsDynamic": true,
- "IsEditable": true,
- "IsHidden": true,
- "IsMandatory": true,
- "IsSecret": true,
- "Label": "string",
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "Options": {
- "AdditionalProperties": { },
- "Choices": [
- "string"
], - "Type": "PREDEFINED"
}, - "Regex": {
- "ShouldValidate": true,
- "Value": "string"
}, - "UUID": "string",
- "Value": "string",
- "ValueType": "STRING"
}
], - "WarningList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
]
}
], - "Users": [
- {
- "Name": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}
], - "Version": "string"
}, - "AWSAccessInfo": {
- "AccessKey": "string",
- "SecretKey": "string"
}, - "AWSProperties": {
- "AvailableRegions": [
- {
- "AvailabilityZones": [
- "string"
], - "ID": "string",
- "Name": "string",
- "Networks": [
- {
- "IsDefault": true,
- "Name": "string",
- "SecurityGroups": [
- {
- "IsDefault": true,
- "Name": "string",
- "SgID": "string",
- "VpcID": "string"
}
], - "State": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VpcId": "string"
}
]
}
], - "ContextEntries": [
- {
- "ContextKeyName": "string",
- "ContextKeyType": "string",
- "ContextKeyValues": [
- "string"
]
}
], - "RegionsWithInstances": [
- {
- "AvailabilityZones": [
- "string"
], - "ID": "string",
- "Name": "string",
- "Networks": [
- {
- "IsDefault": true,
- "Name": "string",
- "SecurityGroups": [
- {
- "IsDefault": true,
- "Name": "string",
- "SgID": "string",
- "VpcID": "string"
}
], - "State": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VpcId": "string"
}
]
}
]
}, - "AzureAccessInfo": {
- "ClientID": "string",
- "ClientSecret": "string",
- "SubscriptionID": "string",
- "TenantID": "string"
}, - "AzureProperties": {
- "AvailableRegions": [
- {
- "ID": "string",
- "Name": "string",
- "NetworkSecurityGroups": [
- {
- "Location": "string",
- "Name": "string",
- "NsgID": "string",
- "ResourceGroup": "string"
}
], - "Networks": [
- {
- "Location": "string",
- "Name": "string",
- "ResourceGroup": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VnetId": "string"
}
], - "ResourceGroups": [
- "string"
]
}
], - "RegionsWithInstances": [
- {
- "ID": "string",
- "Name": "string",
- "NetworkSecurityGroups": [
- {
- "Location": "string",
- "Name": "string",
- "NsgID": "string",
- "ResourceGroup": "string"
}
], - "Networks": [
- {
- "Location": "string",
- "Name": "string",
- "ResourceGroup": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VnetId": "string"
}
], - "ResourceGroups": [
- "string"
]
}
], - "RegisteredApplication": {
- "Application": "string",
- "Subscription": "string",
- "Tenant": "string"
}
}, - "CompatibleTargetTypes": [
- "string"
], - "ESXAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "ESXProperties": {
- "VddkProperties": [
- {
- "LibUploaded": false,
- "Version": "string"
}
], - "Version": "string"
}, - "FilesAccessInfo": {
- "IPorFQDN": "string",
- "PCAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "Password": "string",
- "Username": "string"
}, - "FilesProperties": {
- "FileserverID": "string",
- "SupportedProtocols": [
- "string"
], - "TenantID": "string"
}, - "HyperVAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "HyperVProperties": {
- "Version": "string"
}, - "HyperVSettings": {
- "OverrideAgent": true
}, - "InventoryErrors": [
- "string"
], - "IsInventoryLoading": true,
- "Name": "string",
- "NsxAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "NsxProperties": {
- "Version": "string"
}, - "OtherFilesAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "TargetName": "string",
- "TargetUUID": "b91575b3-630c-4223-8216-11d24760addd",
- "Username": "string"
}, - "OverrideType": "string",
- "PermissionsError": {
- "ErrorMsg": "string",
- "Source": [
- "string"
], - "Target": [
- "string"
]
}, - "Roles": [
- "string"
], - "SpProviderIds": [
- "string"
], - "Type": "string",
- "TypeDescription": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "Version": "string",
- "VmProviderIds": [
- "string"
]
}, - "Status": {
- "Message": "string",
- "State": "string"
}, - "TaskUuid": "string"
}Validate provider information. The API can validate credentials and check permissions associated with the provider.
Sample API Syntax: https://move.address/move/v2/81b0a14d-c937-4872-b792-d46484ee8905/validate
| id required | string Provider UUID. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/providers/{id}/validate \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "IsInventoryLoading": true,
- "Kind": "string",
- "LastInventoryRefreshTime": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "NumDiscoveredNodes": 0,
- "NumDiscoveredWorkloads": 0,
- "NumMigratedWorkloads": 0,
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Spec": {
- "AOSAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "RegisteredVCAccessInfo": [
- {
- "IPAddress": "string",
- "Password": "string",
- "Username": "string"
}
], - "Username": "string"
}, - "AOSCCAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "RegisteredVCAccessInfo": [
- {
- "IPAddress": "string",
- "Password": "string",
- "Username": "string"
}
], - "Username": "string"
}, - "AOSCCProperties": {
- "ClusterUuid": "a41276f4-8dfe-4627-8c72-a3a955f6e850"
}, - "AOSProperties": {
- "AddFNSProvider": true,
- "CategoriesMapping": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "Clusters": [
- {
- "CompatibleTargetTypes": [
- "string"
], - "Containers": [
- {
- "FreeBytes": "string",
- "IsNutanixManaged": true,
- "Name": "string",
- "TotalBytes": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "UsedBytes": "string"
}
], - "HypervisorTypes": [
- "string"
], - "IPorFQDN": "string",
- "Name": "string",
- "Networks": [
- {
- "IPPool": [
- "string"
], - "IsIpamEnabled": true,
- "Name": "string",
- "UUID": "string",
- "WarningMsg": "string"
}
], - "RegisteredVCIPAddress": "string",
- "SupportedCpuModels": [
- {
- "IsDefault": true,
- "Name": "string",
- "UUID": "string",
- "Vendor": "string"
}
], - "TargetUUID": "b91575b3-630c-4223-8216-11d24760addd",
- "Type": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "Version": "string",
- "Vpcs": [
- {
- "Name": "string",
- "UUID": "string",
- "VPCSubnets": [
- {
- "IPPool": [
- null
], - "Name": "string",
- "UUID": "string",
- "WarningMsg": "string"
}
], - "VPCTunnel": {
- "Name": "string",
- "UUID": "string"
}
}
]
}
], - "Errors": [
- {
- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}
], - "FeaturesStatus": [
- {
- "IsEnabled": true,
- "Name": "string",
- "Version": "string"
}
], - "Projects": [
- {
- "ClusterList": [
- "string"
], - "ErrorList": [
- "string"
], - "Name": "string",
- "RunbookList": [
- "string"
], - "SubnetList": [
- "string"
], - "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "UserList": [
- "string"
], - "VpcList": [
- "string"
], - "VpcTunnelList": [
- "string"
]
}
], - "Runbooks": [
- {
- "Description": "string",
- "ErrorList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "IsSupported": true,
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "ProjectUUID": "string",
- "TaskList": [
- {
- "AdditionalProperties": { },
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "Type": "string",
- "UUID": "string"
}
], - "UUID": "string",
- "VariableList": [
- {
- "DataType": "BASE",
- "Description": "string",
- "IsDynamic": true,
- "IsEditable": true,
- "IsHidden": true,
- "IsMandatory": true,
- "IsSecret": true,
- "Label": "string",
- "MessageList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "Name": "string",
- "Options": {
- "AdditionalProperties": { },
- "Choices": [
- "string"
], - "Type": "PREDEFINED"
}, - "Regex": {
- "ShouldValidate": true,
- "Value": "string"
}, - "UUID": "string",
- "Value": "string",
- "ValueType": "STRING"
}
], - "WarningList": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
]
}
], - "Users": [
- {
- "Name": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}
], - "Version": "string"
}, - "AWSAccessInfo": {
- "AccessKey": "string",
- "SecretKey": "string"
}, - "AWSProperties": {
- "AvailableRegions": [
- {
- "AvailabilityZones": [
- "string"
], - "ID": "string",
- "Name": "string",
- "Networks": [
- {
- "IsDefault": true,
- "Name": "string",
- "SecurityGroups": [
- {
- "IsDefault": true,
- "Name": "string",
- "SgID": "string",
- "VpcID": "string"
}
], - "State": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VpcId": "string"
}
]
}
], - "ContextEntries": [
- {
- "ContextKeyName": "string",
- "ContextKeyType": "string",
- "ContextKeyValues": [
- "string"
]
}
], - "RegionsWithInstances": [
- {
- "AvailabilityZones": [
- "string"
], - "ID": "string",
- "Name": "string",
- "Networks": [
- {
- "IsDefault": true,
- "Name": "string",
- "SecurityGroups": [
- {
- "IsDefault": true,
- "Name": "string",
- "SgID": "string",
- "VpcID": "string"
}
], - "State": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VpcId": "string"
}
]
}
]
}, - "AzureAccessInfo": {
- "ClientID": "string",
- "ClientSecret": "string",
- "SubscriptionID": "string",
- "TenantID": "string"
}, - "AzureProperties": {
- "AvailableRegions": [
- {
- "ID": "string",
- "Name": "string",
- "NetworkSecurityGroups": [
- {
- "Location": "string",
- "Name": "string",
- "NsgID": "string",
- "ResourceGroup": "string"
}
], - "Networks": [
- {
- "Location": "string",
- "Name": "string",
- "ResourceGroup": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VnetId": "string"
}
], - "ResourceGroups": [
- "string"
]
}
], - "RegionsWithInstances": [
- {
- "ID": "string",
- "Name": "string",
- "NetworkSecurityGroups": [
- {
- "Location": "string",
- "Name": "string",
- "NsgID": "string",
- "ResourceGroup": "string"
}
], - "Networks": [
- {
- "Location": "string",
- "Name": "string",
- "ResourceGroup": "string",
- "Subnet": {
- "property1": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
], - "property2": [
- {
- "Ipv4Cidr": null,
- "Ipv6Cidr": null,
- "Name": null,
- "SubnetID": null
}
]
}, - "VnetId": "string"
}
], - "ResourceGroups": [
- "string"
]
}
], - "RegisteredApplication": {
- "Application": "string",
- "Subscription": "string",
- "Tenant": "string"
}
}, - "CompatibleTargetTypes": [
- "string"
], - "ESXAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "ESXProperties": {
- "VddkProperties": [
- {
- "LibUploaded": false,
- "Version": "string"
}
], - "Version": "string"
}, - "FilesAccessInfo": {
- "IPorFQDN": "string",
- "PCAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "Password": "string",
- "Username": "string"
}, - "FilesProperties": {
- "FileserverID": "string",
- "SupportedProtocols": [
- "string"
], - "TenantID": "string"
}, - "HyperVAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "HyperVProperties": {
- "Version": "string"
}, - "HyperVSettings": {
- "OverrideAgent": true
}, - "InventoryErrors": [
- "string"
], - "IsInventoryLoading": true,
- "Name": "string",
- "NsxAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "Username": "string"
}, - "NsxProperties": {
- "Version": "string"
}, - "OtherFilesAccessInfo": {
- "IPorFQDN": "string",
- "Password": "string",
- "TargetName": "string",
- "TargetUUID": "b91575b3-630c-4223-8216-11d24760addd",
- "Username": "string"
}, - "OverrideType": "string",
- "PermissionsError": {
- "ErrorMsg": "string",
- "Source": [
- "string"
], - "Target": [
- "string"
]
}, - "Roles": [
- "string"
], - "SpProviderIds": [
- "string"
], - "Type": "string",
- "TypeDescription": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30",
- "Version": "string",
- "VmProviderIds": [
- "string"
]
}, - "TaskUuid": "string",
- "Type": "string"
}Powers on selected VMs during migration - if they are powered off. This API is for internal use only and is specific to AWS source provider.
Sample API Syntax: https://move.address/move/v2/sources/6b45ca9f-71a6-23b5-bd0c-bf917b95e7a5/regions/us-south-1/poweronvms
| id required | string Source UUID. |
| regionId required | string Region identifier. |
List of VM IDs in the migration plan that need to be powered On.
| APIVersion | string |
object (VMToMigrate) VM information. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/sources/{id}/regions/{regionId}/poweronvms \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "APIVersion": "string", "Spec": { "VMs": [ { "AllowUVMOps": true, "CategoriesMapping": { "property1": [ "string" ], "property2": [ "string" ] }, "CreatePublicIpAddress": true, "DiskConfig": { "AddCdrom": true }, "EnableMemoryOvercommit": true, "GuestPrepMode": "manual", "ID": "string", "InstallNGT": true, "Owner": "string", "Password": "string", "PemFile": "string", "PowerOffForpRDMtovRDMConversion": true, "RetainMacAddress": true, "RetainUserData": true, "Runbooks": [ { "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "Variables": [ {} ] } ], "SkipCdrom": true, "SkipIPRetention": true, "TimeZone": "string", "UUID": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "UninstallGuestTools": true, "UserName": "string", "VMCustomizationConfig": { "AWSVMConfig": { "AMIID": "string", "InstanceType": "string" }, "AzureVMConfig": { "DiskCategory": "string", "VMSize": "string" } }, "VMCustomizeType": "replicate", "VMPriority": "High" } ] } }'
{- "ApiVersion": "string",
- "Code": 0,
- "Kind": "string",
- "Message": "string",
- "State": "string"
}Get details of the task whose UUID is specified.
| id required | string <uuid> Task UUID. |
| IncludeChildTasks | boolean Default: false Include child tasks in the response. |
curl --request GET \ --url https://www.nutanix.dev//move/v2/tasks/{id} \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Spec": {
- "ChildTasks": [
- { }
], - "Description": "string",
- "EndTime": "string",
- "Entities": [
- {
- "Type": 0,
- "Uuid": "f3131686-c052-4b3a-8d25-90d96e4d2c56"
}
], - "Messages": [
- {
- "Message": "string",
- "Title": "string",
- "Type": "INFO"
}
], - "ParentTaskUuid": "9b6565e6-b41b-4209-8788-db3c069de672",
- "Payload": "string",
- "PercentComplete": 0,
- "StartTime": "string",
- "Status": 0,
- "Type": 0,
- "Uuid": "f3131686-c052-4b3a-8d25-90d96e4d2c56"
}
}Checks if a user with the given token is authorized to access Move. Move generates an event whenever this API is called.
Sample API Syntax: https://move.address/move/v2/token/checkAuthorized
Authentication token whose authorization status will be checked.
| Token | string Authentication Token |
curl --request POST \ --url https://www.nutanix.dev//move/v2/token/checkAuthorized \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "Token": "string" }'
{- "APIVersion": "string",
- "MetaData": {
- "Count": 0,
- "CreationTime": "string",
- "Kind": "string",
- "LastUpdateTime": "string",
- "Name": "string",
- "SpecVersion": "string",
- "UUID": "f50af7e0-0dd5-4361-ab96-2e04f7bc7e30"
}, - "Status": {
- "Message": "string",
- "State": "string"
}
}Validates the authentication token in the Authorization header. This is intended for subrequest authentication using GET method supported by web servers such as NGINX. This API has minimal overhead compared to other APIs.
Sample API Syntax: https://move.address/move/v2/token/status
curl --request GET \ --url https://www.nutanix.dev//move/v2/token/status \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "Message": "Invalid Token"
}Add or update building blocks preview for translating security policy. The API is in beta and might be subjected to change. This API involves a low-level call with minimal validations for the data.
| AssociatedPolicyUuids | Array of strings The list of NSX security policies' UUID whose building blocks preview are to be updated. If empty, expecting all the building blocks preview will be updated. |
required | object (TranslationKey) To denote the translation key denoting the translation of security policies. |
required | object (TspBuildingBlocksPreview) The building blocks during the translation of security policies. |
curl --request PUT \ --url https://www.nutanix.dev//move/v2/translatedsecuritypolicy/buildingblockspreview/put \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "AssociatedPolicyUuids": [ "string" ], "TranslationKey": { "PlanId": "string", "SourceProviderId": "string", "TargetProviderId": "string" }, "TspBuildingBlocksPreview": { "NsxGroupsToPcAddressGroups": [ { "AssociatedIps": [ "string" ], "AssociatedPolicies": [ { "PolicyName": "string", "PolicyUuid": "string" } ], "IsCustomized": true, "IsMigrated": true, "NsxGroupId": "string", "NsxGroupName": "string", "PcAddressGroupName": "string", "PcAddressGroupUuid": "string" } ], "NsxGroupsToPcCategories": [ { "AssociatedPolicies": [ { "PolicyName": "string", "PolicyUuid": "string" } ], "IsCustomized": true, "IsMigrated": true, "NsxGroupId": "string", "NsxGroupName": "string", "PcCategoryName": "string", "PcCategoryUuid": "string", "PcCategoryValue": "string" } ], "NsxServicesToPcServices": [ { "AssociatedPolicies": [ { "PolicyName": "string", "PolicyUuid": "string" } ], "IsCustomized": true, "IsMigrated": true, "NsxServiceId": "string", "NsxServiceName": "string", "PcServiceName": "string", "PcServiceUuid": "string", "ServiceElements": [ { "IcmpCode": 0, "IcmpType": 0, "Ports": "string", "Protocol": "string" } ] } ] } }'
{- "APIVersion": "string",
- "Data": {
- "Message": "string",
- "Status": "string"
}, - "MetaData": {
- "Version": "string"
}
}Add or update FNS policies preview for translating security policy. The API is in beta and might be subjected to change. This API involves a low-level call with minimal validations for the data.
| AssociatedPolicyUuids | Array of strings The list of NSX security policies' UUID whose FNS security policies preview are to be updated. If empty, expecting all the FNS security policies preview will be updated. |
required | object (TranslationKey) To denote the translation key denoting the translation of security policies. |
required | object (TspFnsPoliciesPreview) The Prism Central FNS security policies during the translation of security policies. |
curl --request PUT \ --url https://www.nutanix.dev//move/v2/translatedsecuritypolicy/fnspoliciespreview/put \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "AssociatedPolicyUuids": [ "string" ], "TranslationKey": { "PlanId": "string", "SourceProviderId": "string", "TargetProviderId": "string" }, "TspFnsPoliciesPreview": { "NsxPoliciesToFnsPolicies": [ { "Nsx": { "PolicyName": "string", "PolicyUuid": "string" }, "Pc": [ { "IsMigrated": true, "PolicyMode": "Save", "PolicyName": "string", "PolicyUuid": "string", "PotentialSecuredEntities": [ { "IsSecuredEntity": true, "NsxGroupUuid": "string", "SubType": "string", "Type": "string", "Value": "string" } ], "Rules": { "Inbound": [ { "SecuredEntity": [ { "NsxGroupUuid": "string", "SubType": "string", "Type": "string", "Value": "string" } ], "Services": { "NamedServices": [ { "Name": "string", "NsxServiceUuid": "string" } ], "Raw": [ {} ] }, "Source": [ { "NsxGroupUuid": "string", "SubType": "string", "Type": "string", "Value": "string" } ] } ], "Intra": [ { "SecuredEntity": [ { "NsxGroupUuid": "string", "SubType": "string", "Type": "string", "Value": "string" } ], "TrafficFlow": "Allow" } ], "Outbound": [ { "Destination": [ { "NsxGroupUuid": "string", "SubType": "string", "Type": "string", "Value": "string" } ], "SecuredEntity": [ { "NsxGroupUuid": "string", "SubType": "string", "Type": "string", "Value": "string" } ], "Services": { "NamedServices": [ { "Name": "string", "NsxServiceUuid": "string" } ], "Raw": [ {} ] } } ] } } ], "PolicyScope": { "CreateCategory": true, "NsVpc": { "AssociatedCategories": [ { "Description": "string", "Id": "string", "Key": "string", "ProviderUuid": "string", "RecId": 0, "ResourceType": "string", "Type": "string", "Value": "string" } ], "Id": "string", "Name": "string" }, "ScopeType": "VPC" }, "SplitPolicyInfo": { "HasUserConsent": false, "Method": "ByRulesCount", "TotalCount": 0 } } ] } }'
{- "APIVersion": "string",
- "Data": {
- "Message": "string",
- "Status": "string"
}, - "MetaData": {
- "Version": "string"
}
}Add or update inventory for translating security policy. The API is in beta and might be subjected to change. This API involves a low-level call with minimal validations for the data.
required | object (TranslationKey) To denote the translation key denoting the translation of security policies. |
required | object (TspInventory) The inventory info during the translation of security policies. |
curl --request PUT \ --url https://www.nutanix.dev//move/v2/translatedsecuritypolicy/inventory/put \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "TranslationKey": { "PlanId": "string", "SourceProviderId": "string", "TargetProviderId": "string" }, "TspInventory": { "NsxGroups": {}, "NsxSecurityPolicies": { "Migratable": [ { "AssociatedMovePlan": "string", "Id": "string", "IsNonMigratable": true, "IsPartial": true, "MigratableWarnings": [ "string" ], "Name": "string", "NonMigratableReasons": [ "string" ], "NonMigratableRulesCount": 0, "Rules": [ { "DestinationGroups": [ { "Id": "string", "Name": "string" } ], "DestinationIps": [ "string" ], "Id": "string", "IsNonMigratable": true, "MigratableWarnings": [ "string" ], "Name": "string", "NonMigratableReasons": [ "string" ], "Services": { "NamedServices": [ { "Name": "string", "NsxServiceUuid": "string" } ], "Raw": [ {} ] }, "SourceGroups": [ { "Id": "string", "Name": "string" } ], "SourceIps": [ "string" ], "TrafficFlow": "string" } ], "TotalRulesCount": 0, "Uuid": "string" } ], "NonMigratable": [ { "AssociatedMovePlan": "string", "Id": "string", "IsNonMigratable": true, "IsPartial": true, "MigratableWarnings": [ "string" ], "Name": "string", "NonMigratableReasons": [ "string" ], "NonMigratableRulesCount": 0, "Rules": [ { "DestinationGroups": [ { "Id": "string", "Name": "string" } ], "DestinationIps": [ "string" ], "Id": "string", "IsNonMigratable": true, "MigratableWarnings": [ "string" ], "Name": "string", "NonMigratableReasons": [ "string" ], "Services": { "NamedServices": [ { "Name": "string", "NsxServiceUuid": "string" } ], "Raw": [ {} ] }, "SourceGroups": [ { "Id": "string", "Name": "string" } ], "SourceIps": [ "string" ], "TrafficFlow": "string" } ], "TotalRulesCount": 0, "Uuid": "string" } ] }, "NsxServices": {} } }'
{- "APIVersion": "string",
- "Data": {
- "Message": "string",
- "Status": "string"
}, - "MetaData": {
- "Version": "string"
}
}Update security policies in bulk with VPC and category information. This API is in beta and subject to change. It performs a low-level call with minimal data validation.
object (TranslationKey) To denote the translation key denoting the translation of security policies. | |
Array of objects (UpdateSecurityPolicyInfo) |
curl --request PUT \ --url https://www.nutanix.dev//move/v2/translatedsecuritypolicy/fnspoliciespreview/bulkupdatesecuritypolicies \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "TranslationKey": { "PlanId": "string", "SourceProviderId": "string", "TargetProviderId": "string" }, "UpdateSecurityPoliciesInfo": [ { "PolicyName": "string", "PolicyScope": { "CreateCategory": true, "NsVpc": { "AssociatedCategories": [ { "Description": "string", "Id": "string", "Key": "string", "ProviderUuid": "string", "RecId": 0, "ResourceType": "string", "Type": "string", "Value": "string" } ], "Id": "string", "Name": "string" }, "ScopeType": "VPC" }, "PolicyUuid": "string" } ] }'
{- "APIVersion": "string",
- "Data": {
- "Message": "string",
- "Status": "string"
}, - "MetaData": {
- "Version": "string"
}
}Fetch building blocks preview for translating security policy. The API is in beta and might be subjected to change. This API involves a low-level call with minimal validations for the data.
| AssociatedPolicyUuids | Array of strings The list of NSX security policies' UUID whose building blocks preview to be fetched. If empty, all the building blocks preview will be fetched. |
required | object (TranslationKey) To denote the translation key denoting the translation of security policies. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/translatedsecuritypolicy/buildingblockspreview/fetch \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "AssociatedPolicyUuids": [ "string" ], "TranslationKey": { "PlanId": "string", "SourceProviderId": "string", "TargetProviderId": "string" } }'
{- "LastUpdated": "string",
- "TspBuildingBlocksPreview": {
- "NsxGroupsToPcAddressGroups": [
- {
- "AssociatedIps": [
- "string"
], - "AssociatedPolicies": [
- {
- "PolicyName": "string",
- "PolicyUuid": "string"
}
], - "IsCustomized": true,
- "IsMigrated": true,
- "NsxGroupId": "string",
- "NsxGroupName": "string",
- "PcAddressGroupName": "string",
- "PcAddressGroupUuid": "string"
}
], - "NsxGroupsToPcCategories": [
- {
- "AssociatedPolicies": [
- {
- "PolicyName": "string",
- "PolicyUuid": "string"
}
], - "IsCustomized": true,
- "IsMigrated": true,
- "NsxGroupId": "string",
- "NsxGroupName": "string",
- "PcCategoryName": "string",
- "PcCategoryUuid": "string",
- "PcCategoryValue": "string"
}
], - "NsxServicesToPcServices": [
- {
- "AssociatedPolicies": [
- {
- "PolicyName": "string",
- "PolicyUuid": "string"
}
], - "IsCustomized": true,
- "IsMigrated": true,
- "NsxServiceId": "string",
- "NsxServiceName": "string",
- "PcServiceName": "string",
- "PcServiceUuid": "string",
- "ServiceElements": [
- {
- "IcmpCode": 0,
- "IcmpType": 0,
- "Ports": "string",
- "Protocol": "string"
}
]
}
]
}, - "Version": "string"
}Fetch FNS policies preview for translating security policy. The API is in beta and might be subjected to change. This API involves a low-level call with minimal validations for the data.
| AssociatedPolicyUuids | Array of strings The list of NSX security policies' UUID whose FNS security policies preview to be fetched. If empty, all the FNS security policies preview will be fetched. |
required | object (TranslationKey) To denote the translation key denoting the translation of security policies. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/translatedsecuritypolicy/fnspoliciespreview/fetch \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "AssociatedPolicyUuids": [ "string" ], "TranslationKey": { "PlanId": "string", "SourceProviderId": "string", "TargetProviderId": "string" } }'
{- "LastUpdated": "string",
- "TspFnsPoliciesPreview": {
- "NsxPoliciesToFnsPolicies": [
- {
- "Nsx": {
- "PolicyName": "string",
- "PolicyUuid": "string"
}, - "Pc": [
- {
- "IsMigrated": true,
- "PolicyMode": "Save",
- "PolicyName": "string",
- "PolicyUuid": "string",
- "PotentialSecuredEntities": [
- {
- "IsSecuredEntity": true,
- "NsxGroupUuid": "string",
- "SubType": "string",
- "Type": "string",
- "Value": "string"
}
], - "Rules": {
- "Inbound": [
- {
- "SecuredEntity": [
- null
], - "Services": {
- "NamedServices": [ ],
- "Raw": [ ]
}, - "Source": [
- null
]
}
], - "Intra": [
- {
- "SecuredEntity": [
- null
], - "TrafficFlow": "Allow"
}
], - "Outbound": [
- {
- "Destination": [
- null
], - "SecuredEntity": [
- null
], - "Services": {
- "NamedServices": [ ],
- "Raw": [ ]
}
}
]
}
}
], - "PolicyScope": {
- "CreateCategory": true,
- "NsVpc": {
- "AssociatedCategories": [
- {
- "Description": "string",
- "Id": "string",
- "Key": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string",
- "Type": "string",
- "Value": "string"
}
], - "Id": "string",
- "Name": "string"
}, - "ScopeType": "VPC"
}, - "SplitPolicyInfo": {
- "HasUserConsent": false,
- "Method": "ByRulesCount",
- "TotalCount": 0
}
}
]
}, - "Version": "string"
}Fetch inventory for translating security policy. The API is in beta and might be subjected to change. This API involves a low-level call with minimal validations for the data.
object (TspInventorySearchFilter) | |
required | object (TranslationKey) To denote the translation key denoting the translation of security policies. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/translatedsecuritypolicy/inventory/fetch \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "SearchFilter": { "GroupUuids": [ "string" ], "PolicyName": "string", "VmUuids": [ "string" ] }, "TranslationKey": { "PlanId": "string", "SourceProviderId": "string", "TargetProviderId": "string" } }'
{- "LastUpdated": "string",
- "TspInventory": {
- "NsxGroups": {
- "property1": {
- "AssociatedIps": [
- "string"
], - "AssociatedVms": [
- {
- "Name": "string",
- "Uuid": "string"
}
], - "Id": "string",
- "Name": "string"
}, - "property2": {
- "AssociatedIps": [
- "string"
], - "AssociatedVms": [
- {
- "Name": "string",
- "Uuid": "string"
}
], - "Id": "string",
- "Name": "string"
}
}, - "NsxSecurityPolicies": {
- "Migratable": [
- {
- "AssociatedMovePlan": "string",
- "Id": "string",
- "IsNonMigratable": true,
- "IsPartial": true,
- "MigratableWarnings": [
- "string"
], - "Name": "string",
- "NonMigratableReasons": [
- "string"
], - "NonMigratableRulesCount": 0,
- "Rules": [
- {
- "DestinationGroups": [
- {
- "Id": "string",
- "Name": "string"
}
], - "DestinationIps": [
- "string"
], - "Id": "string",
- "IsNonMigratable": true,
- "MigratableWarnings": [
- "string"
], - "Name": "string",
- "NonMigratableReasons": [
- "string"
], - "Services": {
- "NamedServices": [
- {
- "Name": null,
- "NsxServiceUuid": null
}
], - "Raw": [
- {
- "IcmpCode": null,
- "IcmpType": null,
- "Ports": null,
- "Protocol": null
}
]
}, - "SourceGroups": [
- {
- "Id": "string",
- "Name": "string"
}
], - "SourceIps": [
- "string"
], - "TrafficFlow": "string"
}
], - "TotalRulesCount": 0,
- "Uuid": "string"
}
], - "NonMigratable": [
- {
- "AssociatedMovePlan": "string",
- "Id": "string",
- "IsNonMigratable": true,
- "IsPartial": true,
- "MigratableWarnings": [
- "string"
], - "Name": "string",
- "NonMigratableReasons": [
- "string"
], - "NonMigratableRulesCount": 0,
- "Rules": [
- {
- "DestinationGroups": [
- {
- "Id": "string",
- "Name": "string"
}
], - "DestinationIps": [
- "string"
], - "Id": "string",
- "IsNonMigratable": true,
- "MigratableWarnings": [
- "string"
], - "Name": "string",
- "NonMigratableReasons": [
- "string"
], - "Services": {
- "NamedServices": [
- {
- "Name": null,
- "NsxServiceUuid": null
}
], - "Raw": [
- {
- "IcmpCode": null,
- "IcmpType": null,
- "Ports": null,
- "Protocol": null
}
]
}, - "SourceGroups": [
- {
- "Id": "string",
- "Name": "string"
}
], - "SourceIps": [
- "string"
], - "TrafficFlow": "string"
}
], - "TotalRulesCount": 0,
- "Uuid": "string"
}
]
}, - "NsxServices": {
- "property1": {
- "Id": "string",
- "Name": "string",
- "ServiceElements": [
- {
- "IcmpCode": 0,
- "IcmpType": 0,
- "Ports": "string",
- "Protocol": "string"
}
]
}, - "property2": {
- "Id": "string",
- "Name": "string",
- "ServiceElements": [
- {
- "IcmpCode": 0,
- "IcmpType": 0,
- "Ports": "string",
- "Protocol": "string"
}
]
}
}
}, - "Version": "string"
}Populate FNS policies preview of a translated security policy. The API is in beta and might be subjected to change. This API checks the migration validations and stores the status internally.
| AddNsxInfo | boolean Default: false Optional flag to indicate if the NSX security policy information is to be added in the response. |
| FnsPolicyName required | string The Prism Central FNS security policy name whose Secured Entities is to be updated. |
| NsxPolicyUuid required | string The NSX security policy UUID whose FNS security policy preview is to be updated. |
required | Array of objects (EntityInfo) The list of secured entities that are to be available in the particular FNS security policy. |
required | object (TranslationKey) To denote the translation key denoting the translation of security policies. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/translatedsecuritypolicy/fnspoliciespreview/selectivepopulate \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "AddNsxInfo": false, "FnsPolicyName": "string", "NsxPolicyUuid": "string", "SecuredEntities": [ { "NsxGroupUuid": "string", "SubType": "string", "Type": "string", "Value": "string" } ], "TranslationKey": { "PlanId": "string", "SourceProviderId": "string", "TargetProviderId": "string" } }'
{- "NsxPolicyInfo": {
- "NsxGroups": {
- "property1": {
- "AssociatedIps": [
- "string"
], - "AssociatedVms": [
- {
- "Name": "string",
- "Uuid": "string"
}
], - "Id": "string",
- "Name": "string"
}, - "property2": {
- "AssociatedIps": [
- "string"
], - "AssociatedVms": [
- {
- "Name": "string",
- "Uuid": "string"
}
], - "Id": "string",
- "Name": "string"
}
}, - "NsxSecurityPolicies": {
- "Migratable": [
- {
- "AssociatedMovePlan": "string",
- "Id": "string",
- "IsNonMigratable": true,
- "IsPartial": true,
- "MigratableWarnings": [
- "string"
], - "Name": "string",
- "NonMigratableReasons": [
- "string"
], - "NonMigratableRulesCount": 0,
- "Rules": [
- {
- "DestinationGroups": [
- {
- "Id": "string",
- "Name": "string"
}
], - "DestinationIps": [
- "string"
], - "Id": "string",
- "IsNonMigratable": true,
- "MigratableWarnings": [
- "string"
], - "Name": "string",
- "NonMigratableReasons": [
- "string"
], - "Services": {
- "NamedServices": [
- {
- "Name": null,
- "NsxServiceUuid": null
}
], - "Raw": [
- {
- "IcmpCode": null,
- "IcmpType": null,
- "Ports": null,
- "Protocol": null
}
]
}, - "SourceGroups": [
- {
- "Id": "string",
- "Name": "string"
}
], - "SourceIps": [
- "string"
], - "TrafficFlow": "string"
}
], - "TotalRulesCount": 0,
- "Uuid": "string"
}
], - "NonMigratable": [
- {
- "AssociatedMovePlan": "string",
- "Id": "string",
- "IsNonMigratable": true,
- "IsPartial": true,
- "MigratableWarnings": [
- "string"
], - "Name": "string",
- "NonMigratableReasons": [
- "string"
], - "NonMigratableRulesCount": 0,
- "Rules": [
- {
- "DestinationGroups": [
- {
- "Id": "string",
- "Name": "string"
}
], - "DestinationIps": [
- "string"
], - "Id": "string",
- "IsNonMigratable": true,
- "MigratableWarnings": [
- "string"
], - "Name": "string",
- "NonMigratableReasons": [
- "string"
], - "Services": {
- "NamedServices": [
- {
- "Name": null,
- "NsxServiceUuid": null
}
], - "Raw": [
- {
- "IcmpCode": null,
- "IcmpType": null,
- "Ports": null,
- "Protocol": null
}
]
}, - "SourceGroups": [
- {
- "Id": "string",
- "Name": "string"
}
], - "SourceIps": [
- "string"
], - "TrafficFlow": "string"
}
], - "TotalRulesCount": 0,
- "Uuid": "string"
}
]
}, - "NsxServices": {
- "property1": {
- "Id": "string",
- "Name": "string",
- "ServiceElements": [
- {
- "IcmpCode": 0,
- "IcmpType": 0,
- "Ports": "string",
- "Protocol": "string"
}
]
}, - "property2": {
- "Id": "string",
- "Name": "string",
- "ServiceElements": [
- {
- "IcmpCode": 0,
- "IcmpType": 0,
- "Ports": "string",
- "Protocol": "string"
}
]
}
}
}, - "NsxPolicyToPcPolicy": {
- "Nsx": {
- "PolicyName": "string",
- "PolicyUuid": "string"
}, - "Pc": [
- {
- "IsMigrated": true,
- "PolicyMode": "Save",
- "PolicyName": "string",
- "PolicyUuid": "string",
- "PotentialSecuredEntities": [
- {
- "IsSecuredEntity": true,
- "NsxGroupUuid": "string",
- "SubType": "string",
- "Type": "string",
- "Value": "string"
}
], - "Rules": {
- "Inbound": [
- {
- "SecuredEntity": [
- {
- "NsxGroupUuid": "string",
- "SubType": "string",
- "Type": "string",
- "Value": "string"
}
], - "Services": {
- "NamedServices": [
- {
- "Name": null,
- "NsxServiceUuid": null
}
], - "Raw": [
- {
- "IcmpCode": null,
- "IcmpType": null,
- "Ports": null,
- "Protocol": null
}
]
}, - "Source": [
- {
- "NsxGroupUuid": "string",
- "SubType": "string",
- "Type": "string",
- "Value": "string"
}
]
}
], - "Intra": [
- {
- "SecuredEntity": [
- {
- "NsxGroupUuid": "string",
- "SubType": "string",
- "Type": "string",
- "Value": "string"
}
], - "TrafficFlow": "Allow"
}
], - "Outbound": [
- {
- "Destination": [
- {
- "NsxGroupUuid": "string",
- "SubType": "string",
- "Type": "string",
- "Value": "string"
}
], - "SecuredEntity": [
- {
- "NsxGroupUuid": "string",
- "SubType": "string",
- "Type": "string",
- "Value": "string"
}
], - "Services": {
- "NamedServices": [
- {
- "Name": null,
- "NsxServiceUuid": null
}
], - "Raw": [
- {
- "IcmpCode": null,
- "IcmpType": null,
- "Ports": null,
- "Protocol": null
}
]
}
}
]
}
}
], - "PolicyScope": {
- "CreateCategory": true,
- "NsVpc": {
- "AssociatedCategories": [
- {
- "Description": "string",
- "Id": "string",
- "Key": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string",
- "Type": "string",
- "Value": "string"
}
], - "Id": "string",
- "Name": "string"
}, - "ScopeType": "VPC"
}, - "SplitPolicyInfo": {
- "HasUserConsent": false,
- "Method": "ByRulesCount",
- "TotalCount": 0
}
}
}Populate split FNS policies preview of a translated security policy as per user request. The API is in beta and might be subjected to change. This API checks the migration validations and stores the status internally.
| AddNsxInfo | boolean Default: false Optional flag to indicate if the NSX security policy information is to be added in the response. |
| NsxPolicyUuid required | string The NSX security policy UUID whose FNS security policy preview is to be updated. |
| SplitMethod required | string Enum: "ByRulesCount" "BySecuredEntity" The method to split NSX policy to FNS security policies. |
required | object (TranslationKey) To denote the translation key denoting the translation of security policies. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/translatedsecuritypolicy/fnspoliciespreview/selectivepopulatetosplit \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "AddNsxInfo": false, "NsxPolicyUuid": "string", "SplitMethod": "ByRulesCount", "TranslationKey": { "PlanId": "string", "SourceProviderId": "string", "TargetProviderId": "string" } }'
{- "NsxPolicyInfo": {
- "NsxGroups": {
- "property1": {
- "AssociatedIps": [
- "string"
], - "AssociatedVms": [
- {
- "Name": "string",
- "Uuid": "string"
}
], - "Id": "string",
- "Name": "string"
}, - "property2": {
- "AssociatedIps": [
- "string"
], - "AssociatedVms": [
- {
- "Name": "string",
- "Uuid": "string"
}
], - "Id": "string",
- "Name": "string"
}
}, - "NsxSecurityPolicies": {
- "Migratable": [
- {
- "AssociatedMovePlan": "string",
- "Id": "string",
- "IsNonMigratable": true,
- "IsPartial": true,
- "MigratableWarnings": [
- "string"
], - "Name": "string",
- "NonMigratableReasons": [
- "string"
], - "NonMigratableRulesCount": 0,
- "Rules": [
- {
- "DestinationGroups": [
- {
- "Id": "string",
- "Name": "string"
}
], - "DestinationIps": [
- "string"
], - "Id": "string",
- "IsNonMigratable": true,
- "MigratableWarnings": [
- "string"
], - "Name": "string",
- "NonMigratableReasons": [
- "string"
], - "Services": {
- "NamedServices": [
- {
- "Name": null,
- "NsxServiceUuid": null
}
], - "Raw": [
- {
- "IcmpCode": null,
- "IcmpType": null,
- "Ports": null,
- "Protocol": null
}
]
}, - "SourceGroups": [
- {
- "Id": "string",
- "Name": "string"
}
], - "SourceIps": [
- "string"
], - "TrafficFlow": "string"
}
], - "TotalRulesCount": 0,
- "Uuid": "string"
}
], - "NonMigratable": [
- {
- "AssociatedMovePlan": "string",
- "Id": "string",
- "IsNonMigratable": true,
- "IsPartial": true,
- "MigratableWarnings": [
- "string"
], - "Name": "string",
- "NonMigratableReasons": [
- "string"
], - "NonMigratableRulesCount": 0,
- "Rules": [
- {
- "DestinationGroups": [
- {
- "Id": "string",
- "Name": "string"
}
], - "DestinationIps": [
- "string"
], - "Id": "string",
- "IsNonMigratable": true,
- "MigratableWarnings": [
- "string"
], - "Name": "string",
- "NonMigratableReasons": [
- "string"
], - "Services": {
- "NamedServices": [
- {
- "Name": null,
- "NsxServiceUuid": null
}
], - "Raw": [
- {
- "IcmpCode": null,
- "IcmpType": null,
- "Ports": null,
- "Protocol": null
}
]
}, - "SourceGroups": [
- {
- "Id": "string",
- "Name": "string"
}
], - "SourceIps": [
- "string"
], - "TrafficFlow": "string"
}
], - "TotalRulesCount": 0,
- "Uuid": "string"
}
]
}, - "NsxServices": {
- "property1": {
- "Id": "string",
- "Name": "string",
- "ServiceElements": [
- {
- "IcmpCode": 0,
- "IcmpType": 0,
- "Ports": "string",
- "Protocol": "string"
}
]
}, - "property2": {
- "Id": "string",
- "Name": "string",
- "ServiceElements": [
- {
- "IcmpCode": 0,
- "IcmpType": 0,
- "Ports": "string",
- "Protocol": "string"
}
]
}
}
}, - "NsxPolicyToPcPolicy": {
- "Nsx": {
- "PolicyName": "string",
- "PolicyUuid": "string"
}, - "Pc": [
- {
- "IsMigrated": true,
- "PolicyMode": "Save",
- "PolicyName": "string",
- "PolicyUuid": "string",
- "PotentialSecuredEntities": [
- {
- "IsSecuredEntity": true,
- "NsxGroupUuid": "string",
- "SubType": "string",
- "Type": "string",
- "Value": "string"
}
], - "Rules": {
- "Inbound": [
- {
- "SecuredEntity": [
- {
- "NsxGroupUuid": "string",
- "SubType": "string",
- "Type": "string",
- "Value": "string"
}
], - "Services": {
- "NamedServices": [
- {
- "Name": null,
- "NsxServiceUuid": null
}
], - "Raw": [
- {
- "IcmpCode": null,
- "IcmpType": null,
- "Ports": null,
- "Protocol": null
}
]
}, - "Source": [
- {
- "NsxGroupUuid": "string",
- "SubType": "string",
- "Type": "string",
- "Value": "string"
}
]
}
], - "Intra": [
- {
- "SecuredEntity": [
- {
- "NsxGroupUuid": "string",
- "SubType": "string",
- "Type": "string",
- "Value": "string"
}
], - "TrafficFlow": "Allow"
}
], - "Outbound": [
- {
- "Destination": [
- {
- "NsxGroupUuid": "string",
- "SubType": "string",
- "Type": "string",
- "Value": "string"
}
], - "SecuredEntity": [
- {
- "NsxGroupUuid": "string",
- "SubType": "string",
- "Type": "string",
- "Value": "string"
}
], - "Services": {
- "NamedServices": [
- {
- "Name": null,
- "NsxServiceUuid": null
}
], - "Raw": [
- {
- "IcmpCode": null,
- "IcmpType": null,
- "Ports": null,
- "Protocol": null
}
]
}
}
]
}
}
], - "PolicyScope": {
- "CreateCategory": true,
- "NsVpc": {
- "AssociatedCategories": [
- {
- "Description": "string",
- "Id": "string",
- "Key": "string",
- "ProviderUuid": "string",
- "RecId": 0,
- "ResourceType": "string",
- "Type": "string",
- "Value": "string"
}
], - "Id": "string",
- "Name": "string"
}, - "ScopeType": "VPC"
}, - "SplitPolicyInfo": {
- "HasUserConsent": false,
- "Method": "ByRulesCount",
- "TotalCount": 0
}
}
}Populate translated security policy. The API is in beta and might be subjected to change. This API checks the migration validations and stores the status internally.
required | object (TranslationKey) To denote the translation key denoting the translation of security policies. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/translatedsecuritypolicy/populate \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "TranslationKey": { "PlanId": "string", "SourceProviderId": "string", "TargetProviderId": "string" } }'
{- "APIVersion": "string",
- "Data": {
- "Message": "string",
- "Status": "string"
}, - "MetaData": {
- "Version": "string"
}
}Remove building blocks preview for translating security policy. The API is in beta and might be subjected to change. This API involves a low-level call with minimal validations for the data.
required | object (TranslationKey) To denote the translation key denoting the translation of security policies. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/translatedsecuritypolicy/buildingblockspreview/remove \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "TranslationKey": { "PlanId": "string", "SourceProviderId": "string", "TargetProviderId": "string" } }'
{- "APIVersion": "string",
- "Data": {
- "Message": "string",
- "Status": "string"
}, - "MetaData": {
- "Version": "string"
}
}Remove FNS policies preview for translating security policy. The API is in beta and might be subjected to change. This API involves a low-level call with minimal validations for the data.
required | object (TranslationKey) To denote the translation key denoting the translation of security policies. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/translatedsecuritypolicy/fnspoliciespreview/remove \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "TranslationKey": { "PlanId": "string", "SourceProviderId": "string", "TargetProviderId": "string" } }'
{- "APIVersion": "string",
- "Data": {
- "Message": "string",
- "Status": "string"
}, - "MetaData": {
- "Version": "string"
}
}Remove inventory for translating security policy. The API is in beta and might be subjected to change. This API involves a low-level call with minimal validations for the data.
required | object (TranslationKey) To denote the translation key denoting the translation of security policies. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/translatedsecuritypolicy/inventory/remove \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "TranslationKey": { "PlanId": "string", "SourceProviderId": "string", "TargetProviderId": "string" } }'
{- "APIVersion": "string",
- "Data": {
- "Message": "string",
- "Status": "string"
}, - "MetaData": {
- "Version": "string"
}
}Checks if any upgrade for the Move application is available and returns information about the latest version, the current version, and release notes.
Sample API Syntax: https://move.address/move/v2/checkUpgrade
| ReCache | boolean Default: false Update metadata while checking for upgrade. |
curl --request GET \ --url https://www.nutanix.dev//move/v2/checkUpgrade \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "Status": {
- "CurrentVersion": "3.5.2",
- "LatestVersion": "3.6.0",
- "ReleaseNotes": [
- "Support for Migrations to Nutanix Clusters on AWS",
- "Support for Secure boot enabled VM migration",
- "UI improvements on Bulk VM actions",
- "Enable use of Move APIs from UI",
- "Support for Migration of AWS EC2 Instances which don't have Public IP",
- "Security improvements",
- "Support for VMware vSphere 7",
- "Support for new OS: SUSE 15",
- "CFD/Bug fixes"
], - "UpdateAvailable": true
}
}Discard the current upgrade process and start fresh with a new script.
| id required | string Uuid of the upgrade process to be discarded |
curl --request POST \ --url https://www.nutanix.dev//move/v2/upgrade/{id}/discard \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "message": "string",
- "status": "string"
}Get information about the ongoing upgrade process.
curl --request GET \ --url https://www.nutanix.dev//move/v2/upgrade/GetUpgradeInfo \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
[- {
- "SourceMoveVersion": "string",
- "createdtime": 0,
- "errorReason": "string",
- "ipAddress": "string",
- "password": "string",
- "sshPort": 22,
- "sshUsername": "string",
- "upgradeState": 0,
- "upgradeType": "string",
- "upgradeUuid": "string"
}
]Get information about the upgrade bundle which was uploaded offline. The information fetched includes path to uploaded files and metadata.
Sample API Syntax: https://move.address/move/v2/uploadUpgradeFiles
curl --request GET \ --url https://www.nutanix.dev//move/v2/uploadUpgradeFiles \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "Status": {
- "BundleFileInfo": {
- "Path": "/tmp/upload/move_bundle.tar.gz"
}, - "MetaFileInfo": {
- "Path": "/tmp/upload/move_meta_data.txt"
}, - "Metadata": null
}
}Checks the status of the ongoing upgrade of the Move application and returns following information about the upgrade:
curl --request GET \ --url https://www.nutanix.dev//move/v2/upgrade \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
{- "Status": {
- "Message": "Successfully completed upgrade.",
- "Status": "Completed",
- "TasksInfo": {
- "CompletedTasks": 9,
- "CurrentTaskName": "Post Upgrade",
- "Tasks": [
- {
- "Description": "Initializing upgrade operation",
- "Name": "Init Upgrade",
- "Status": "Completed"
}, - {
- "Description": "Updating \"Updater service\"",
- "Name": "Updating updater",
- "Status": "Completed"
}, - {
- "Description": "Validating appliance before upgrade",
- "Name": "Validating before upgrade",
- "Status": "Completed"
}, - {
- "Description": "Pausing triggered migration plans",
- "Name": "Pause Migration Plans",
- "Status": "Completed"
}, - {
- "Description": "Upgrading all relevant scripts",
- "Name": "Upgrade Appliance Scripts",
- "Status": "Completed"
}, - {
- "Description": "Preparing to upgrade",
- "Name": "Pre upgrade",
- "Status": "Completed"
}, - {
- "Description": "Upgrading service containers in Move appliance",
- "Name": "Upgrade Main",
- "Status": "Completed"
}, - {
- "Description": "Performing post-upgrade operations",
- "Name": "Post Upgrade",
- "Status": "Completed"
}
]
}
}
}Initiates the Move application upgrade and returns upgrade information:
Information required to trigger a Move application upgrade.
| APIVersion | string Move API Version. |
object (XtractInitUpgradeInfo) Move application upgrade information. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/upgrade \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "APIVersion": "string", "Spec": { "LatestVersion": "string", "OfflineUpgrade": true, "UploadedFilesInfo": { "BundleFileInfo": { "Path": "string" }, "MetaFileInfo": { "Path": "string" } }, "Version": "string" } }'
{- "Status": {
- "CurrentTaskName": "Init Upgrade",
- "Message": "Initializing upgrade operation",
- "Percentage": 5,
- "Status": "InProgress",
- "Tasks": [
- {
- "Description": "Initializing upgrade operation",
- "Name": "Init Upgrade",
- "Status": "InProgress"
}, - {
- "Description": "Updating \"Updater service\"",
- "Name": "Updating updater",
- "Status": "Uninitialized"
}, - {
- "Description": "Validating appliance before upgrade",
- "Name": "Validating before upgrade",
- "Status": "Uninitialized"
}, - {
- "Description": "Pausing triggered migration plans",
- "Name": "Pause Migration Plans",
- "Status": "Uninitialized"
}, - {
- "Description": "Upgrading all relevant scripts",
- "Name": "Upgrade Appliance Scripts",
- "Status": "Uninitialized"
}, - {
- "Description": "Preparing to upgrade",
- "Name": "Pre upgrade",
- "Status": "Uninitialized"
}, - {
- "Description": "Upgrading service containers in Move appliance",
- "Name": "Upgrade Main",
- "Status": "Uninitialized"
}, - {
- "Description": "Performing post-upgrade operations",
- "Name": "Post Upgrade",
- "Status": "Uninitialized"
}
], - "TasksInfo": null,
- "TotalTasks": 9
}
}Manually upgrades the Move application by uploading the required data.
| DataZipFile | string <binary> The zip file contains the database and other required data. |
| MD5Hash | string <binary> MD5 hash of the uploaded zip file. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/upgrade/migrateOs/manual \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: multipart/form-data' \ --data '{ "DataZipFile": null, "MD5Hash": null }'
{- "message": "string",
- "status": "string",
- "taskId": "string"
}Upgrades the Move application automatically by first connecting to the old Move application through SSH, gathering the necessary information, and loading the database into the new VM.
Request payload for the automatic upgrade process.
| oldVmIP | string IP address of the old Move appliance. |
| oldVmSshPassword | string SSH password of the old Move appliance. |
| oldVmSshUser | string SSH user of the old Move appliance. |
| port | integer Default: 22 Port number for SSH connection. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/upgrade/migrateOs/automatic \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "oldVmIP": "string", "oldVmSshPassword": "string", "oldVmSshUser": "string", "port": 22 }'
{- "message": "string",
- "status": "string",
- "taskId": "string"
}Upload the files (bundle and meta files) needed to upgrade the application offline. This API can also be used in dark sites.
Sample API Syntax: https://move.address/move/v2/uploadUpgradeFiles
| upBundleFile | string <binary> The application bundle to be uploaded. |
| upMetaFile | string <binary> The metadata file corresponding to the uploaded bundle. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/uploadUpgradeFiles \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: multipart/form-data' \ --data '{ "upBundleFile": null, "upMetaFile": null }'
{- "Status": {
- "BundleFileInfo": {
- "Path": "/tmp/upload/move_bundle.tar.gz"
}, - "MetaFileInfo": {
- "Path": "/tmp/upload/move_meta_data.json"
}
}
}Performs workload actions from different migration plans in a batch using a single API. The list of available workload actions:
Perform specified action in a batch of workloads.
| APIVersion | string Move API version. |
required | object Workload batch action request. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/workloads/action \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "APIVersion": "string", "Spec": { "Action": "cutover", "WorkloadReferences": [ { "Password": "string", "PlanReference": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "UserName": "string", "WorkloadReference": "b4d15375-1097-4c96-a4c4-4cb5809b05bb" } ] } }'
{- "Status": [
- {
- "ErrorMessage": "string",
- "Success": true,
- "WorkloadReference": "4f416ab4-b5bc-4f70-ba0b-d78cddfbd8b0"
}
]
}Downloads a file with a list of failed files and failure reasons.
| id required | string Migration plan UUID. |
| wid required | string Workload UUID. |
| iterationid required | integer <uint64> Iteration number. |
curl --request GET \ --url https://www.nutanix.dev//move/v2/plans/{id}/workloads/{wid}/iterations/{iterationid}/downloadFiles \ --header 'Accept: application/json, application/octet-stream' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \
"string"This API is used to retrieve the workload information from all migration plans by applying the given filters. One can filter based on plan, provider, workload references (UUIDs), and the workload's current migration state.
Sample API Syntax: https://move.address/move/v2/plans/workloads/list
| NumIterations | integer <uint64> Number of iterations to be returned for a workload. |
Workload search filter can be specified to list only required workload information.
object (WorkloadSearchFilterByReferencesAndStates) Filter to select and view specific VMs from a workload. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/workloads/list \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json, application/octet-stream' \ --data '{ "Filter": { "MigrationStates": [ 0 ], "PlanReferences": [ "b4d15375-1097-4c96-a4c4-4cb5809b05bb" ], "ProviderReferences": [ "b4d15375-1097-4c96-a4c4-4cb5809b05bb" ], "WorkloadReferences": [ "b4d15375-1097-4c96-a4c4-4cb5809b05bb" ] } }'
{- "Status": [
- {
- "Status": {
- "Actions": [
- "ABORT",
- "PAUSE"
], - "Name": "migplan_test",
- "State": 4,
- "Status": 1,
- "UUID": "ab69b78b-f415-4b5a-8953-f1e083c1f379",
- "VMStatus": [
- {
- "Actions": [
- "ABORT",
- "CUTOVER",
- "TEST"
], - "CopiedDataSizeInBytes": 42949672960,
- "ETAInSecs": 60,
- "ID": "vm-217662",
- "MigratedDataSizeInBytes": 7853834240,
- "Name": "Win2k8r2",
- "State": 5,
- "Status": 1,
- "SubEvents": [
- {
- "Description": "Creating snapshot MOVESnap-4",
- "Name": "Create Snapshot (MOVESnap-4)",
- "State": 5,
- "Status": 3
}
], - "TotalDataSizeInBytes": 42949672960,
- "UUID": "ad54c813-c3ea-5731-8a8f-5b302169856a"
}
]
}
}
]
}Schedule cutover actions for workloads across multiple migration plans in a single API call. Sample API Syntax: https://move.address/move/v2/plans/scheduleCutover
Perform a specified action on a batch of workloads.
required | Array of objects (PlanWorkloadReference) Reference of required VMs. |
curl --request POST \ --url https://www.nutanix.dev//move/v2/plans/scheduleCutover \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "Spec": [ { "Password": "string", "PlanReference": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "UserName": "string", "WorkloadReference": "b4d15375-1097-4c96-a4c4-4cb5809b05bb" } ] }'
{- "Status": [
- {
- "ErrorMessage": "string",
- "ScheduleCutoverConfig": {
- "PlanReference": "ca2117ac-15cb-40b4-9201-1dbed3f9ce83",
- "ScheduleCutoverFlag": true,
- "ScheduleCutoverOptions": {
- "Autocutover": true,
- "EndDateTime": "string",
- "StartDateTime": "string",
- "Timezone": "string"
}, - "WorkloadReference": "4f416ab4-b5bc-4f70-ba0b-d78cddfbd8b0"
}, - "Success": true
}
]
}Update schedule cutover actions for workloads across multiple migration plans in a single API call. Sample API Syntax: https://move.address/move/v2/plans/scheduleCutover
Perform a specified action on a batch of workloads.
required | object Workload schedule cutover action request. |
curl --request PUT \ --url https://www.nutanix.dev//move/v2/plans/scheduleCutover \ --header 'Accept: application/json' \ --header 'Authorization: Bearer <your_access_token>' \ --header 'Content-Type: application/json' \ --data '{ "Spec": { "ScheduleCutoverConfigurations": [ { "PlanReference": "b4d15375-1097-4c96-a4c4-4cb5809b05bb", "ScheduleCutoverFlag": true, "ScheduleCutoverOptions": { "Autocutover": true, "EndDateTime": "string", "StartDateTime": "string", "Timezone": "string" }, "WorkloadReference": "b4d15375-1097-4c96-a4c4-4cb5809b05bb" } ] } }'
{- "Status": [
- {
- "ErrorMessage": "string",
- "ScheduleCutoverConfig": {
- "PlanReference": "ca2117ac-15cb-40b4-9201-1dbed3f9ce83",
- "ScheduleCutoverFlag": true,
- "ScheduleCutoverOptions": {
- "Autocutover": true,
- "EndDateTime": "string",
- "StartDateTime": "string",
- "Timezone": "string"
}, - "WorkloadReference": "4f416ab4-b5bc-4f70-ba0b-d78cddfbd8b0"
}, - "Success": true
}
]
}