
Veeam TriggerInstantVmRestore
CertifiedEnterprise EditionTrigger a Veeam instant VM recovery
Veeam TriggerInstantVmRestore
Trigger a Veeam instant VM recovery
Starts a vSphere instant VM recovery from a restore point and returns the id of the session created for it.
This targets the vSphere-specific endpoint only; Hyper-V and Azure instant recovery use separate VBR REST
API endpoints that are not covered by this task. Use sessions.Get with waitForCompletion: true to wait
for the recovery to finish. additionalOptions is merged into the request body as-is for restore parameters
not directly exposed (target host, datastore, network mapping, and similar), since these vary by VBR version
and infrastructure.
type: io.kestra.plugin.ee.veeam.restores.TriggerInstantVmRestoreExamples
Instantly recover a VM from its latest restore point.
id: instant_vm_recovery
namespace: company.team
tasks:
- id: recover_vm
type: io.kestra.plugin.ee.veeam.restores.TriggerInstantVmRestore
host: "{{ secret('VEEAM_HOST') }}"
username: "{{ secret('VEEAM_USERNAME') }}"
password: "{{ secret('VEEAM_PASSWORD') }}"
restorePointId: "9a1b2c3d-4e5f-6789-a1b2-c3d4e5f6a7b8"
reason: "Disaster recovery drill"
powerUp: false
Properties
host *Requiredstring
Veeam Backup & Replication server host
Hostname or IP address of the Veeam Backup & Replication server exposing the REST API.
password *Requiredstring
Password
Password for username. Treat it as a secret, e.g. {{ secret('VEEAM_PASSWORD') }}.
restorePointId *Requiredstring
Restore point id
username *Requiredstring
Username
Veeam Backup & Replication account used for the OAuth 2.0 password grant.
additionalOptions object
Additional restore options
Extra fields merged into the request body, for advanced or version-specific restore parameters.
apiVersion string
1.3-rev1API version
Value sent as the mandatory x-api-version header on every request, including authentication. Must match a version
supported by the target server; a missing or unsupported value causes VBR to reject the request with HTTP 400.
Defaults to 1.3-rev1 (VBR 12.1 and later).
options Non-dynamic
HTTP client configuration
Optional HTTP client overrides (timeouts, proxy, TLS). Veeam Backup & Replication servers ship a self-signed
certificate by default: set options.ssl.insecureTrustAllCertificates: true, or provide a trust store, otherwise
the first request fails with a TLS handshake error rather than a clear authentication error.
io.kestra.core.http.client.configurations.HttpConfiguration
falseIf true, allow a failed response code (response code >= 400)
List of response code allowed for this request
The authentication to use.
io.kestra.core.http.client.configurations.BasicAuthConfiguration
The password for HTTP basic authentication.
The username for HTTP basic authentication.
io.kestra.core.http.client.configurations.BearerAuthConfiguration
The token for bearer token authentication.
io.kestra.core.http.client.configurations.DigestAuthConfiguration
The password for HTTP Digest authentication.
The username for HTTP Digest authentication.
The password for HTTP basic authentication. Deprecated, use auth property with a BasicAuthConfiguration instance instead.
The username for HTTP basic authentication. Deprecated, use auth property with a BasicAuthConfiguration instance instead.
durationThe time allowed to establish a connection to the server before failing.
durationThe time an idle connection can remain in the client's connection pool before being closed.
UTF-8The default charset for the request.
java.nio.charset.Charset
trueWhether to enable TCP Keep-Alive extended socket options (TCP_KEEPIDLE, TCP_KEEPINTERVAL, TCP_KEEPCOUNT).
Set to false when running on Windows workers, as these extended socket options are not supported by the Windows JDK and will cause connection failures.
trueWhether redirects should be followed automatically.
ALLTRACEDEBUGINFOWARNERROROFFNOT_SPECIFIEDThe log level for the HTTP client.
REQUEST_HEADERSREQUEST_BODYRESPONSE_HEADERSRESPONSE_BODYThe enabled log.
The maximum content length of the response.
The proxy configuration.
io.kestra.core.http.client.configurations.ProxyConfiguration
The address of the proxy server.
The password for proxy authentication.
The port of the proxy server.
DIRECTDIRECTHTTPSOCKSThe type of proxy to use.
The username for proxy authentication.
The address of the proxy server.
The password for proxy authentication.
The port of the proxy server.
DIRECTHTTPSOCKSThe type of proxy to use.
The username for proxy authentication.
durationThe time allowed for a read connection to remain idle before closing it.
durationThe maximum time allowed for reading data from the server before failing.
The SSL request options
io.kestra.core.http.client.configurations.SslOptions
Whether to disable checking of the remote SSL certificate.
Only applies if no trust store is configured. Note: This makes the SSL connection insecure and should only be used for testing. If you are using a self-signed certificate, set up a trust store instead.
The timeout configuration.
io.kestra.core.http.client.configurations.TimeoutConfiguration
The time allowed to establish a connection to the server before failing.
PT5MThe time allowed for a read connection to remain idle before closing it.
pluginDefaultsRef Non-dynamicstring
Reference (ref) of the pluginDefaults to apply to this task.
port integerstring
9419REST API port
TCP port of the Veeam Backup & Replication REST API. Defaults to 9419.
powerUp booleanstring
truePower up
Whether to power on the recovered VM once mounted. Defaults to true.
reason string
Reason
Optional free-text reason recorded on the restore session.
recoveryMode string
OriginalLocationOriginalLocationCustomizedRecovery mode
Where the recovered VM is registered: OriginalLocation (default) or Customized (a custom host/datastore, provided via additionalOptions).
secureRestoreAntivirusScan booleanstring
falseSecure restore antivirus scan
Whether to scan the restored VM's disks for malware before making it available. Defaults to false.
Outputs
sessionId string
Id of the session created for this restore