VAST Data vms API
The VMS path represents VMS settings, such as the management VIP used to access the VMS interfaces, login banner text for the VMS CLI and Web UI, access token lifetimes for the REST API and more.
The VMS path represents VMS settings, such as the management VIP used to access the VMS interfaces, login banner text for the VMS CLI and Web UI, access token lifetimes for the REST API and more.
openapi: 3.0.3
info:
description: VAST Management API definition
title: VAST API Swagger Schema activedirectory vms API
version: '1.0'
security:
- ApiToken: []
tags:
- description: The VMS path represents VMS settings, such as the management VIP used to access the VMS interfaces, login banner text for the VMS CLI and Web UI, access token lifetimes for the REST API and more.
name: vms
paths:
/vms/:
get:
description: This endpoint lists the Vast Management Service (VMS) settings.
operationId: vms_list
parameters:
- in: query
name: page
schema:
type: string
responses:
'200':
content:
application/json:
schema:
items:
$ref: '#/components/schemas/Vms'
title: Vms
type: array
description: VMS information
summary: List VMS
tags:
- vms
/vms/{id}/:
get:
description: This endpoint lists Vast Management Service (VMS) settings for a specified VMS object.
operationId: vms_read
parameters:
- in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Vms'
description: ''
summary: Return VMS Details
tags:
- vms
patch:
description: This endpoint modifies some VMS settings.
operationId: vms_partial_update
parameters:
- description: VMS ID
in: path
name: id
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
properties:
access_token_lifetime:
description: Validity duration for JWT access token, specify as [DD [HH:[MM:]]]ss
type: string
capacity_base_10:
description: Set to True to format capacity properties in base 10 units. Set to False to format capacity properties in base 2 units.
type: boolean
delete_mgmt_data_vip:
description: Delete VMS data Virtual IP
type: boolean
disable_vms_metrics:
description: Set to True to disable VMS metrics. Set to False to enable VMS metrics.
type: boolean
enable_idle_timeout:
description: Enable GUI timeout based on inactivity
type: boolean
login_banner:
description: Custom login banner text for VMS Web UI and CLI
type: string
mgmt_data_interface:
description: VMS data Virtual Interface
type: string
mgmt_data_netmask:
description: VMS data Virtual Netmask
type: string
mgmt_data_vip:
description: VMS data Virtual IP
type: string
mgmt_data_vip_gateway:
description: IPv4 address of the gateway to VMS data Virtual IP
type: string
mgmt_data_vip_gateway_ipv6:
description: Specifies an IPv6 address of the gateway to the virtual mgmt data IPV6
type: string
mgmt_data_vip_ipv6:
description: VMS data Virtual IP6
type: string
mgmt_data_vip_prefix_ipv6:
description: Specifies the prefix of management data IPV6 VIP
type: string
mgmt_data_vip_vlan:
description: Tags the virtual mgmt data IP with a specific VLAN
type: string
mgmt_inner_vip:
description: The virtual IP on the internal network used for mounting the VMS database.
type: string
mgmt_vip:
description: The VMS Virtual IP. This is a virtual IP configured on the management interfaces on all CNodes. VAST Management System (VMS) listens on this IP. It is used to access the VMS interfaces.
type: string
min_pwd_length:
description: Minimum password length for new VMS managers
type: integer
min_tls_version:
description: Minimum supported TLS version. By default, VMS does not allow TLS connections with TLS versions older than 1.2. To loosen this restriction, set this property to a lower version value, such as 1.0 or 1.1.
type: string
performance_base_10:
description: Set to True to format performance properties in base 10 units. Set to False to format performance properties in base 2 units.
type: boolean
preferred_cnode_ids:
description: List of preferred CNodes IDs (CSV)
type: string
refresh_token_lifetime:
description: Validity duration for JWT refresh token, specify as [DD [HH:[MM:]]]ss
type: string
vms_perf_debug_metrics_enabled:
description: Enable VMS performance debug metrics
type: boolean
type: object
x-originalParamName: VmsModifyParams
responses:
'200':
description: ''
summary: Modify VMS Settings
tags:
- vms
/vms/{id}/configured_idps/:
get:
description: This endpoint returns all configured SAML identify providers (IdPs). Authentication is not required for this endpoint.
operationId: vms_get_configured_idps
parameters:
- in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
items:
type: string
title: Idps
type: array
description: List of configured IdPs
summary: Return Configured SAML Identify Providers (IdPs)
tags:
- vms
/vms/{id}/login_banner/:
get:
description: This endpoint returns the VMS login banner, without requiring authentication.
operationId: vms_get_login_banner
parameters:
- in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Vms'
description: ''
summary: Return VMS login banner (Authentication Not Required)
tags:
- vms
/vms/{id}/network_settings/:
parameters:
- in: path
name: id
required: true
schema:
type: string
get:
operationId: get_vms_network_settings
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/VMSNetworkSettings'
description: ''
summary: Return the network settings of VMS
tags:
- vms
patch:
description: This endpoint modifies some of the VMS network configuration settings.
operationId: modify_vms_network_settings
requestBody:
content:
'*/*':
schema:
$ref: '#/components/schemas/VMSNetworkSettingsInput'
x-originalParamName: VMSNetworkSettingsInputParams
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AsyncTaskInResponse'
description: ''
summary: Modify the network settings of VMS
tags:
- vms
/vms/{id}/network_settings_summary/:
parameters:
- in: path
name: id
required: true
schema:
type: string
post:
description: This endpoint enables you to submit new values for VMS network settings and preview a summary of changes that would be made by modifying the settings to the values submitted.
operationId: vms_network_settings_summary
requestBody:
content:
'*/*':
schema:
$ref: '#/components/schemas/VMSNetworkSettingsInput'
x-originalParamName: VMSNetworkSettingsInputParams
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/VMSNetworkSettingsSummary'
description: ''
summary: Preview summary of changes to the network settings of VMS
tags:
- vms
/vms/{id}/pwd_settings/:
get:
description: This endpoint returns VMS password settings.
operationId: get_vms_pwd_settings
parameters:
- $ref: '#/components/parameters/VmsId'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/VmsPwdParams'
description: ''
summary: Return password settings of VMS
tags:
- vms
patch:
description: This endpoint modifies VMS password settings.
operationId: modify_vms_pwd_settings
parameters:
- $ref: '#/components/parameters/VmsId'
requestBody:
$ref: '#/components/requestBodies/VmsPwdParamsBody'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/VmsPwdParams'
description: ''
summary: Modify password settings of VMS
tags:
- vms
/vms/{id}/remove_client_certificate/:
patch:
description: This endpoint removes the SSL client certificate and client private key used by VMS for mTLS.
operationId: vms_remove_client_certificate
parameters:
- description: VMS ID
in: path
name: id
required: true
schema:
type: string
responses:
'200':
description: ''
summary: Remove VMS SSL Client Certificate
tags:
- vms
/vms/{id}/reset_certificate/:
patch:
description: This endpoint resets the SSL certificate and private key used by VMS to default. The default is a pre-installed self signed certificate.
operationId: vms_reset_certificate
parameters:
- description: VMS ID
in: path
name: id
required: true
schema:
type: string
responses:
'200':
description: ''
summary: Reset VMS SSL Certificate to Default
tags:
- vms
/vms/{id}/reset_ssl_ciphers/:
patch:
description: This endpoint resets the SSL Ciphers used by VMS to default.
operationId: vms_reset_ssl_ciphers
parameters:
- description: VMS ID
in: path
name: id
required: true
schema:
type: string
responses:
'200':
description: ''
summary: Reset VMS SSL Ciphers to Default
tags:
- vms
/vms/{id}/saml_config/:
delete:
description: This endpoint deletes a SAML configuration for a specific IdP.
operationId: delete_saml_config
parameters:
- description: SAML IDP name
in: query
name: idp_name
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: string
description: ''
summary: Delete SAML configuration for a specific IdP
tags:
- vms
get:
operationId: get_saml_config
parameters:
- description: VMS ID
in: path
name: id
required: true
schema:
type: string
- description: SAML IDP name
in: query
name: idp_name
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
additionalProperties: true
type: object
description: Returns the SAML configuration for a specific IdP
summary: 'Returns a SAML configuration for a specified IdP. '
tags:
- vms
patch:
description: This endpoint removes all signed certificates from a SAML configuration.
operationId: remove_saml_signed_cert
parameters:
- description: VMS ID
in: path
name: id
required: true
schema:
type: string
- description: SAML IDP name
in: query
name: idp_name
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: string
description: ''
summary: Remove SP sign response or assertions request from an IdP
tags:
- vms
post:
description: This endpoint creates a SAML configuration to enable SSO using a given IdP, or modifies an existing SAML configuration.
operationId: update_saml_config
parameters:
- description: VMS ID
in: path
name: id
required: true
schema:
type: string
- description: SAML IDP name
in: query
name: idp_name
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
properties:
saml_settings:
additionalProperties: true
properties:
encrypt_assertion:
description: 'Set to true if the IdP encrypts the assertion. If true, an encryption certificate and key must be uploaded. Use encryption_saml_crt and encryption_saml_key to provide the required certificate and key. Default: false. Set to false to disable encryption.'
type: boolean
encryption_saml_crt:
description: Specifies the encryption certificate file content to upload. Required if encrypt_assertion is true.
type: string
encryption_saml_key:
description: Specifies the encryption key file content to upload. Required if encrypt_assertion is true.
type: string
force_authn:
description: 'Set to true to force authentication with the IDP even if there is an active session with the IdP for the user. Default: false.'
type: boolean
idp_entityid:
description: A unique identifier for the IdP instance
type: string
idp_metadata:
description: Use local metadata. Supply local metadata XML.
type: string
idp_metadata_url:
description: 'Use metadata located at specified remote URL. For example: ''https://dev-12914105.okta.com/app/exke7ia133bKXWP2g5d7/sso/saml/metadata'''
type: string
signing_cert:
description: Specifies the certificate file content to use for requiring signed responses from the IdP. Required if want_assertions_or_response_signed is true.
type: string
signing_key:
description: Specifies the key file content to use for requiring signed responses from the IdP. Required if want_assertions_or_response_signed is true.
type: string
want_assertions_or_response_signed:
description: 'Set to true to require a signed response or assertion from the IdP. VMS then fails the user authentication if an unsigned response is received. If true, upload a certificate and key. Use signing_cert and signing_key to provide certificate and key. Default: false.'
type: boolean
type: object
type: object
x-originalParamName: VmsSetSamlSettingsParams
responses:
'200':
content:
application/json:
schema:
type: string
description: ''
'400':
content:
application/json:
schema:
type: string
description: ''
summary: Modify or Create a SAML configuration for a specific IdP.
tags:
- vms
/vms/{id}/set_certificate/:
patch:
description: This endpoint installs an authority-signed SSL certificate to secure HTTPS connections with VMS. When obtaining an SSL certificate from a Certificate Authority (CA), choose an X.509 output file format containing ASCII (Base64) encoded data. The CA will provide a certificate file and a private key file.
operationId: vms_set_certificate
parameters:
- description: VMS ID
in: path
name: id
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
properties:
ssl_certificate:
description: The SSL Certificate file content, including the BEGIN CERTIFICATE and END CERTIFICATE lines
type: string
ssl_keyfile:
description: The SSL private key file content, include the BEGIN PRIVATE KEY and END PRIVATE KEY lines
type: string
type: object
x-originalParamName: VmsSetCertificateParams
responses:
'200':
description: ''
summary: Install SSL certificate and key on VMS
tags:
- vms
/vms/{id}/set_client_certificate/:
patch:
description: This endpoint installs a SSL client certificate and client private key for mTLS VMS
operationId: vms_set_client_certificate
parameters:
- description: VMS ID
in: path
name: id
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
properties:
ssl_client_certificate:
description: SSL Client Certificate file content (can be root), including the BEGIN CERTIFICATE and END CERTIFICATE lines
type: string
ssl_client_keyfile:
description: SSL client private key file content, include the BEGIN PRIVATE KEY and END PRIVATE KEY lines
type: string
type: object
x-originalParamName: VmsSetClientCertificateParams
responses:
'200':
description: ''
summary: Install SSL certificate and key on VMS
tags:
- vms
/vms/{id}/set_max_api_tokens_per_user/:
patch:
description: This endpoint sets the maximum number of API tokens per user (default is 5).
operationId: set_max_api_tokens_per_user
parameters:
- description: ID of the VMS instance
in: path
name: id
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
properties:
max_api_tokens_per_user:
default: 5
description: Maximum number of API tokens per user
type: integer
type: object
description: Object containing the max API tokens per user
required: true
x-originalParamName: VmsSetMaxApiTokensPerUserParams
responses:
'200':
description: Max API tokens per user set successfully
summary: Set max API tokens per user
tags:
- vms
/vms/{id}/set_ssl_ciphers/:
patch:
description: This endpoint sets SSL ciphers used by VMS
operationId: vms_set_ssl_ciphers
parameters:
- description: VMS ID
in: path
name: id
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
properties:
ssl_ciphers:
description: SSL Ciphers, e.g. AES256+EECDH:AES256+EDH:!aNULL:!SHA1:!SHA256:!SHA384
type: string
type: object
x-originalParamName: VmsSetSslCiphersParams
responses:
'200':
description: ''
summary: Set SSL ciphers use by VMS
tags:
- vms
/vms/{id}/set_ssl_port/:
patch:
description: This endpoint changes the SSL port used for accessing VMS. The default SSL port is 443.
operationId: vms_set_ssl_port
parameters:
- description: VMS ID
in: path
name: id
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
properties:
ssl_port:
description: SSL port number
type: integer
type: object
x-originalParamName: VmsSetSslPortParams
responses:
'200':
description: SSL port has been changed
summary: Change VMS SSL Port
tags:
- vms
/vms/{id}/toggle_maintenance_mode/:
patch:
description: Change the system maintenance mode state
operationId: toggle_maintenance_mode
parameters:
- description: VMS ID
in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AsyncTaskInResponse'
description: ''
summary: Toggle maintenance mode
tags:
- vms
components:
schemas:
VmsPwdParams:
properties:
max_failed_login_attempts:
description: 'The number of failed login attempts after which password lockout occurs if enabled. Default: 10'
type: integer
max_failed_login_attempts_enabled:
description: Password lockout after failed log in attempts. The number of failed login attempts is configured by max_failed_login_attempts.
type: boolean
min_pwd_length:
description: Minimum password length for new VMS managers
type: integer
pwd_change_timeout:
description: 'The time frame within which VMS managers may not change their passwords again after setting a new password if password change timeout is enabled. Default: 24H'
type: string
pwd_change_timeout_enabled:
description: Prevents password change for VMS users (managers) for a period after the last password change. The period is configured by pwd_change_timeout.
type: boolean
pwd_expiration_timeout:
description: 'Password expiration timeout, which applies if password expiration timeout is enabled. Default: 180D'
type: string
pwd_expiration_timeout_enabled:
description: Password expiration, timeout configured by pwd_expiration_timeout.
type: boolean
pwd_history_no_reuse_count:
description: 'The number of previous passwords that VMS managers may not reuse if prevention of password reuse is enabled. Default: 8'
type: integer
pwd_history_no_reuse_count_enabled:
description: Prevention of reuse of previous passwords. Affects the number of previous passwords set by pwd_histor_no_reuse_count.
type: boolean
pwd_requires_lowercase:
description: Password requires at least one lowercase character
type: boolean
pwd_requires_numeric:
description: Password requires at least one numeric character
type: boolean
pwd_requires_special_chars:
description: Password requires at least one non-alphanumeric character
type: boolean
pwd_requires_uppercase:
description: Password requires at least one uppercase character
type: boolean
tmp_pwd_expiration_timeout:
description: 'Expiration timeout for new managers'' temporary passwords. Default: 7D'
type: string
type: object
VMSNetworkSettingsSummary:
properties:
hosts:
items:
$ref: '#/components/schemas/VMSNetworkSettingsHostChanges'
type: array
type: object
VMSNetworkSettings:
properties:
auto_ports_ext_iface:
description: 'Allocates the external management IP to one of the following: - Outband. Allocates the external management IP to the onboard left or right port, depending whether B2B is enabled or not. - Inband. Allocates the external management IP to the bond0 interface. - Bond. Creates a bond interface (bond1) on the two RJ45 ports, allowing for redundancy. Negates the ability to have a technician interface. - Northband. For clusters with dual NIC CNodes where one NIC on each CNode is directly connected to the an external client network, this option allocates the external management IP to the externally connected NIC. '
enum:
- inband
- outband
- bond
- northband
type: string
b2b_ipmi:
description: Enables auto configuring the IPMI ports on the nodes with IP addresses according to the B2B template.
type: boolean
boxes:
items:
properties:
box_name:
description: Name of CBox or DBox
type: string
hosts:
description: Configuration of each CNode or DNode in the CBox or DBox
items:
$ref: '#/components/schemas/HostNetworkSettings'
type: array
type: object
type: array
dns:
items:
description: The IP address(es) of any DNS servers that will forward DNS queries to the cluster
type: string
type: array
eth_mtu:
description: The MTU size for the CNode and DNode internal network interfaces, for clusters with Ethernet internal network infrastructure. The MTU should be aligned with the switches. Default=9216.
type: integer
ext_netmask:
description: The subnet mask of the management subnet
type: string
external_gateways:
items:
description: Default gateway for VMS network
type: string
type: array
ib_mtu:
description: 'The MTU size for the CNode and DNode internal network interfaces, for clusters with IB internal network infrastructure. Default=2044. Set a supported MTU for the NIC mode: If IB type is Connected, the maximum IB NB MTU is 65520. If IB type is Datagram, the maximum IB NB MTU is 4092'
type: integer
ipmi_gateway:
description: The IP of a default gateway for the IPMI interfaces on the CNodes and DNodes, if different from the management network default gateway.
type: string
ipmi_netmask:
description: The subnet mask for the IPMI gateway.
type: string
management_vips:
items:
description: Virtual IP address configured on the management interfaces on all CNodes. VMS listens on this IP.
type: string
type: array
ntp:
items:
description: The IP(s) of any NTP server(s) that you want to use for time keeping
type: string
type: array
type: object
HostNetworkSettings:
properties:
hostname:
description: The hostname of the CNode or DNode
type: string
id:
description: The ID of the CNode or DNode
type: integer
ipmi_ip:
description: The IPMI IP of the CNode or DNode
type: string
mgmt_ip:
description: The management IP of the CNode or DNode
type: string
nb_eth_mtu:
description: For dual-NIC CNodes where a NIC is directly connected to an external Ethernet network, use this field to set the MTU for that Ethernet network.
type: integer
nb_ib_mtu:
description: For dual-NIC CNodes where a NIC is directly connected to an external InfiniBand data network, use this field to set the MTU for that InfiniBand network. Default is 2044. If NB IB type is Connected, the maximum IB NB MTU is 65520. If NB IB type is Datagram, the maximum IB NB MTU is 4092.
type: integer
type: object
VMSNetworkSettingsInput:
properties:
auto_ports_ext_iface:
enum:
- inband
- outband
- bond
- northband
type: string
b2b_ipmi:
type: boolean
dns:
items:
description: The IP address(es) of any DNS servers that will forward DNS queries to the cluster
type: string
type: array
eth_mtu:
description: The MTU size for the CNode and DNode internal network interfaces, for clusters with Ethernet internal network infrastructure. The MTU should be aligned with the switches. Default=9216.
type: integer
ext_netmask:
description: The subnet mask of the management subnet
type: string
external_gateways:
items:
description: Default gateway for VMS network
type: string
type: array
hosts:
items:
$ref: '#/components/schemas/HostNetworkSettings'
type: array
ib_mtu:
description: 'The MTU size for the CNode and DNode internal network interfaces, for clusters with IB internal network infrastructure. Default=2044. Set a supported MTU for the NIC mode: If IB type is Connected, the maximum IB NB MTU is 65520. If IB type is Datagram, the maximum IB NB MTU is 4092'
type: integer
ipmi_gateway:
description: The IP of a default gateway for the IPMI interfaces on the CNodes and DNodes, if different from the management network default gateway.
type: string
ipmi_netmask:
description: The network mask for the IPMI default gateway.
type: string
management_vips:
items:
description: Virtual IP address for the management interfaces on all CNodes. VMS listens on this IP.
type: string
type: array
ntp:
items:
description: The IP(s) of any NTP server(s) that you want to use for time keeping
type: string
type: array
type: object
VMSNetworkSettingsHostChanges:
properties:
changes:
type: object
hostname:
type: string
id:
type: integer
type: object
Vms:
properties:
access_token_lifetime:
description: Validity duration for JWT access tokens. Specify as [DD [HH:[MM:]]]ss
type: string
auto_logout_timeout:
description: Inactivity period for auto logout
type: integer
x-cli-header: Auto-Logout-Timeout
build:
description: The current VMS build running on the cluster.
type: string
x-cli-header: Build
capacity_base_10:
description: True if capacity properties are formatted in base 10. False if capacity properties are formatted in base 2
type: boolean
capacity_usable:
description: Toggles between showing usable capacity (true, default) or physical capacity (false) in the capacity card on the VMS web UI dashboard
type: boolean
created:
description: Date and time of creation
format: date-time
type: string
x-format: datetime2display
degraded_reason:
description: The reason for VMS degraded state
type: string
disable_mgmt_ha:
description: True if management HA is disabled
type: boolean
x-cli-header: Disable HA
disable_vms_metrics:
description: True if VMS metrics collection is disabled
type: boolean
x-cli-header: Disable VMS Metrics
enable_idle_timeout:
description: Enable
# --- truncated at 32 KB (37 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vastdata/refs/heads/main/openapi/vastdata-vms-api-openapi.yml