euroNAS

HA Cluster REST API Reference

Version 1.0.0 · Generated 2026-10-23 · 225 operations

Disclaimer: Use of this API is entirely at the user's own responsibility. API usage is not covered by support.

Getting started

Base URL: https://<server>:18443

Send X-API-Key: <API_KEY> with protected requests. Use a unique Idempotency-Key for retryable mutating requests. Retain the returned X-Correlation-ID for audits and troubleshooting.

Passwords, API keys, access keys, secret keys, tokens, and fencing credentials must use an application/json request body. Secret values in URLs are rejected.

Examples validate HTTPS certificates. For a private CA, add --cacert /path/to/ca.pem.

Product scope

This manual includes cluster-aware ZFS ownership and takeover controls, FC access coordination, RDMA recovery, and BMC fencing.

Before forcing a ZFS import or changing FC access, verify that no peer owns the pool and that initiators are disconnected where required.

Operation summary

MethodCount
GET80
POST115
PUT3
PATCH2
DELETE25

Contents

API

GET /api/docs

Get /api/docs.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/docs'

Responses

StatusMeaning
200Swagger UI
404Documentation disabled

GET /api/docs/openapi-json

Get /api/docs/openapi-json.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/docs/openapi-json'

Responses

StatusMeaning
200Swagger UI static asset

GET /api/docs/swagger-ui-bundle.js

Get /api/docs/swagger-ui-bundle.js.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/docs/swagger-ui-bundle.js'

Responses

StatusMeaning
200Swagger UI static asset

GET /api/docs/swagger-ui-standalone-preset.js

Get /api/docs/swagger-ui-standalone-preset.js.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/docs/swagger-ui-standalone-preset.js'

Responses

StatusMeaning
200Swagger UI static asset

GET /api/docs/swagger-ui.css

Get /api/docs/swagger-ui.css.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/docs/swagger-ui.css'

Responses

StatusMeaning
200Swagger UI static asset

GET /api/openapi.json

Get /api/openapi.json.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/openapi.json'

Responses

StatusMeaning
200OpenAPI 3.1 document
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/openapi.yaml

Get /api/openapi.yaml.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/openapi.yaml'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/groups

Delete /api/v1/groups.

Parameters

ParameterLocationRequiredTypeDescription
group_namequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/groups?group_name=example-group'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/groups

Get /api/v1/groups.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/groups'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

PATCH /api/v1/groups

Patch /api/v1/groups.

Parameters

ParameterLocationRequiredTypeDescription
gidquerynostringRequest parameter.
group_namequeryyesstringRequest parameter.
new_group_namequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X PATCH \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/groups?group_name=example-group'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/groups

Post /api/v1/groups.

Parameters

ParameterLocationRequiredTypeDescription
gidquerynostringRequest parameter.
group_namequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/groups?group_name=example-group'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/jobs

Delete /api/v1/jobs.

Parameters

ParameterLocationRequiredTypeDescription
job_idqueryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/jobs?job_id=<job_id>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/jobs

read the state and captured output of a long-running API operation.

Parameters

ParameterLocationRequiredTypeDescription
job_idquerynostringRequest parameter.
limitquerynostringRequest parameter.
statusquerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/jobs'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/mounts

unmount and remove a remote SMB share definition.

Parameters

ParameterLocationRequiredTypeDescription
mount_folderquerynostringRequest parameter.
server_namequerynostringRequest parameter.
share_namequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/mounts'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/mounts

mount a remote SMB share.

Parameters

ParameterLocationRequiredTypeDescription
domain_namequerynostringRequest parameter.
ip_addressqueryyesstring (ipv4)Request parameter.
mount_folderqueryyesstringRequest parameter.
share_namequeryyesstringRequest parameter.
user_namequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.
passwordJSON bodynostringRequest parameter.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  -H 'Content-Type: application/json' \
  --data '{"password":"REPLACE_WITH_PASSWORD"}' \
  'https://<server>:18443/api/v1/mounts?ip_address=192.0.2.10&mount_folder=<mount_folder>&share_name=example-share'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/mounts/cloud

mount a cloud bucket through the configured rclone profile.

Parameters

ParameterLocationRequiredTypeDescription
bucketqueryyesstringRequest parameter.
config_pathqueryyesstringRequest parameter.
mount_folderqueryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/mounts/cloud?bucket=<bucket>&config_path=<config_path>&mount_folder=<mount_folder>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/multi-cluster/license

show the local cluster license and version information.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/multi-cluster/license'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/multi-cluster/shared-iscsi-disk

create a shared iSCSI-backed cluster disk resource.

Parameters

ParameterLocationRequiredTypeDescription
chap_userquerynostringRequest parameter.
portal_ipqueryyesstring (ipv4)Request parameter.
resource_namequeryyesstringRequest parameter.
target_namequeryyesstringFC target or backing-volume name, as required by the operation.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.
passwordJSON bodynostringRequest parameter.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  -H 'Content-Type: application/json' \
  --data '{"password":"REPLACE_WITH_PASSWORD"}' \
  'https://<server>:18443/api/v1/multi-cluster/shared-iscsi-disk?portal_ip=<portal_ip>&resource_name=<resource_name>&target_name=example-target'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/multi-cluster/status

show cluster node and cluster-service status.

Parameters

ParameterLocationRequiredTypeDescription
extendedquerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/multi-cluster/status'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/notifications

Get /api/v1/notifications.

Parameters

ParameterLocationRequiredTypeDescription
viewquerynostringOptional alternate representation, such as discovered BMC data.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/notifications'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/notifications

Post /api/v1/notifications.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/notifications'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

PUT /api/v1/notifications

Put /api/v1/notifications.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X PUT \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/notifications'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/product/capabilities

Get /api/v1/product/capabilities.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/product/capabilities'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/rdma/devices

list RDMA devices, ports, modes, and detected IP information.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/rdma/devices'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/rdma/nfs

disable the persistent NFS over RDMA configuration.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/rdma/nfs'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/rdma/nfs

report NFS over RDMA configuration, interface, port, and listener state.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/rdma/nfs'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/rdma/nfs

enable persistent NFS over RDMA support.

Parameters

ParameterLocationRequiredTypeDescription
portquerynointeger; minimum 0TCP port; NFS over RDMA defaults to 20049.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/rdma/nfs'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/rdma/recovery

report RDMA failover recovery service state and its latest recovery activity.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/rdma/recovery'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/rdma/recovery

install or repair and start the persistent RDMA failover recovery service.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/rdma/recovery'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/rdma/reset-port

reset InfiniBand ports through the RDMA management backend.

Parameters

ParameterLocationRequiredTypeDescription
ip_addressquerynostring (ipv4)Request parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/rdma/reset-port'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/rdma/software-roce

enable or disable software RoCE on one network port.

Parameters

ParameterLocationRequiredTypeDescription
modequeryyesstringRequested operating or access mode; accepted values depend on the endpoint.
network_portqueryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/rdma/software-roce?mode=<mode>&network_port=<network_port>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/rdma/software-roce/enable-all

enable all persistently configured software RoCE devices.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/rdma/software-roce/enable-all'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/s3/buckets

List buckets from the selected S3 service instance using its current credentials.

Parameters

ParameterLocationRequiredTypeDescription
instancequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/s3/buckets'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/s3/console

return S3 console settings.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/s3/console'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/s3/console

update the S3 console runtime.

Parameters

ParameterLocationRequiredTypeDescription
actionquerynostringOperation-specific action selector.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/s3/console'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/s3/credentials/rotate

Rotate the administrative access key and secret key for an S3 service instance. The previous credentials stop working immediately, and the response contains the replacement credentials.

Parameters

ParameterLocationRequiredTypeDescription
namequeryyesstringHuman-readable display name.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/s3/credentials/rotate?name=<name>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/s3/runtime

control an S3 service runtime.

Parameters

ParameterLocationRequiredTypeDescription
actionquerynostringOperation-specific action selector.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/s3/runtime'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/s3/services

list configured S3 services.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/s3/services'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/s3/services

create an S3 service.

Parameters

ParameterLocationRequiredTypeDescription
scopequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/s3/services'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/s3/status

return S3 health and runtime status.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/s3/status'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/s3/storage

remove S3 storage.

Parameters

ParameterLocationRequiredTypeDescription
scopequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/s3/storage'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/s3/storage

create S3 storage.

Parameters

ParameterLocationRequiredTypeDescription
scopequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/s3/storage'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

PUT /api/v1/s3/storage

import existing S3 storage.

Parameters

ParameterLocationRequiredTypeDescription
actionquerynostringOperation-specific action selector.
scopequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X PUT \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/s3/storage'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/ssh-trust

Post /api/v1/ssh-trust.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/ssh-trust'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/storage/md

Get /api/v1/storage/md.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/storage/md'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/storage/md

Post /api/v1/storage/md.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/storage/md'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/sync/jobs

Delete /api/v1/sync/jobs.

Parameters

ParameterLocationRequiredTypeDescription
job_namequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/sync/jobs'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/sync/jobs

Get /api/v1/sync/jobs.

Parameters

ParameterLocationRequiredTypeDescription
job_namequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/sync/jobs'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/sync/jobs

Post /api/v1/sync/jobs.

Parameters

ParameterLocationRequiredTypeDescription
job_namequerynostringRequest parameter.
snapshot_replicationquerynostringRequest parameter.
source_sharequerynostringRequest parameter.
target_serverquerynostringRequest parameter.
target_sharequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/sync/jobs'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/system/api-configuration

Get /api/v1/system/api-configuration.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/system/api-configuration'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

PUT /api/v1/system/api-configuration

Put /api/v1/system/api-configuration.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X PUT \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/system/api-configuration'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/system/settings

Post /api/v1/system/settings.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/system/settings'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/ups

query the configured UPS and return its current status values.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/ups'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/ups/snmp-devices

scan and configure an SNMP UPS.

Parameters

ParameterLocationRequiredTypeDescription
ip_addressqueryyesstring (ipv4)Request parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/ups/snmp-devices?ip_address=192.0.2.10'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/ups/usb-devices

scan for a USB UPS and write a new NUT configuration.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/ups/usb-devices'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/volumes

list available volumes.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/volumes'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/volumes

create a mirror volume through the disk-management CLI.

Parameters

ParameterLocationRequiredTypeDescription
disk_pathqueryyesstringRequest parameter.
drive_namequeryyesstringRequest parameter.
purposequeryyesstringStorage purpose. Use S3 when creating an eEKAS object-storage drive.
sizequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/volumes?disk_path=<disk_path>&drive_name=<drive_name>&purpose=<purpose>&size=<size>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/observability/health

Get /api/v1/observability/health

Parameter Location Required Type Description
X-Correlation-ID header no string Optional caller correlation ID; generated when omitted.
Status Meaning
200 Successful response
400 Invalid request
401 Invalid or missing API key
403 API role is not permitted
405 Method not allowed
409 Resource state conflict
422 Request could not be processed
429 Rate limit exceeded
500 Backend operation failed

Response field types and nested request objects are defined in openapi.json / openapi.yaml. A 202 response accepts a job; poll status_url to verify completion.

GET /api/v1/observability/hosts

Get /api/v1/observability/hosts

Parameter Location Required Type Description
node query no string Backend parameter node.
range query no string Backend parameter range.
step query no string Backend parameter step.
X-Correlation-ID header no string Optional caller correlation ID; generated when omitted.
Status Meaning
200 Successful response
400 Invalid request
401 Invalid or missing API key
403 API role is not permitted
405 Method not allowed
409 Resource state conflict
422 Request could not be processed
429 Rate limit exceeded
500 Backend operation failed

Response field types and nested request objects are defined in openapi.json / openapi.yaml. A 202 response accepts a job; poll status_url to verify completion.

GET /api/v1/observability/storage

Get /api/v1/observability/storage

Parameter Location Required Type Description
backend query no string Backend parameter backend.
range query no string Backend parameter range.
step query no string Backend parameter step.
X-Correlation-ID header no string Optional caller correlation ID; generated when omitted.
osd query no integer Backend parameter osd
pool_id query no integer Backend parameter pool_id
Status Meaning
200 Successful response
400 Invalid request
401 Invalid or missing API key
403 API role is not permitted
405 Method not allowed
409 Resource state conflict
422 Request could not be processed
429 Rate limit exceeded
500 Backend operation failed

Response field types and nested request objects are defined in openapi.json / openapi.yaml. A 202 response accepts a job; poll status_url to verify completion.

Cluster

POST /api/v1/ceph/cluster

bootstrap Ceph on the configured eEKAS cluster and deploy monitor/manager roles to registered nodes.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/ceph/cluster'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/cluster-drives

delete a cluster drive.

Parameters

ParameterLocationRequiredTypeDescription
drive_namequeryyesstringRequest parameter.
typequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-drives?drive_name=<drive_name>&type=<type>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster-drives/available/all

show available backing devices across all cluster nodes.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster-drives/available/all'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster-drives/available/local

show locally available cluster drive backing devices.

Parameters

ParameterLocationRequiredTypeDescription
drive_namequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster-drives/available/local'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster-drives/check-shared

identify physically shared drives across cluster nodes.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster-drives/check-shared'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster-drives/fc-targets

list FC cluster targets.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster-drives/fc-targets'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster-drives/fc-volumes

list FC cluster volumes.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster-drives/fc-volumes'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster-drives/import-volume

import an existing NAS volume into cluster management.

Parameters

ParameterLocationRequiredTypeDescription
ip_addressqueryyesstring (ipv4)Request parameter.
nodequerynostringCluster node name.
protocolquerynostring; values: http, https, NFS, CIFS, iscsi, nvmeRequest parameter.
volume_pathqueryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-drives/import-volume?ip_address=192.0.2.10&volume_path=<volume_path>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster-drives/ip-address

change the access IP address for a cluster drive.

Parameters

ParameterLocationRequiredTypeDescription
current_ip_addressqueryyesstring (ipv4)Request parameter.
drive_namequeryyesstringRequest parameter.
new_ip_addressqueryyesstring (ipv4)Request parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-drives/ip-address?current_ip_address=<current_ip_address>&drive_name=<drive_name>&new_ip_address=<new_ip_address>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster-drives/mirror

list configured mirror cluster drives.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster-drives/mirror'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster-drives/mirror

create a mirror cluster drive.

Parameters

ParameterLocationRequiredTypeDescription
disk_path1queryyesstringRequest parameter.
disk_path2querynostringRequest parameter.
drive_namequeryyesstringRequest parameter.
ip_addressqueryyesstring (ipv4)Request parameter.
node_name1queryyesstringRequest parameter.
node_name2querynostringRequest parameter.
purposequeryyesstringStorage purpose. Use S3 when creating an eEKAS object-storage drive.
sizequeryyesstringRequest parameter.
this_node_onlyquerynobooleanRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-drives/mirror?disk_path1=<disk_path1>&drive_name=<drive_name>&ip_address=192.0.2.10&node_name1=<node_name1>&purpose=<purpose>&size=<size>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster-drives/mirror/resize

resize a mirror cluster drive.

Parameters

ParameterLocationRequiredTypeDescription
mirror_drivequeryyesstringRequest parameter.
new_sizequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-drives/mirror/resize?mirror_drive=<mirror_drive>&new_size=<new_size>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster-drives/optimize-bandwidth

tune the mirror replication bandwidth profile.

Parameters

ParameterLocationRequiredTypeDescription
bandwidthqueryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-drives/optimize-bandwidth?bandwidth=<bandwidth>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster-drives/preferred-node

change the preferred node for a cluster drive.

Parameters

ParameterLocationRequiredTypeDescription
drive_namequeryyesstringRequest parameter.
new_nodequeryyesstringRequest parameter.
shared_data_storagequerynobooleanRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-drives/preferred-node?drive_name=<drive_name>&new_node=<new_node>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster-drives/replication-protocol

change the mirror replication protocol.

Parameters

ParameterLocationRequiredTypeDescription
drive_namequeryyesstringRequest parameter.
protocolqueryyesstring; values: A, CRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-drives/replication-protocol?drive_name=<drive_name>&protocol=A'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster-drives/resource-candidates

list suitable cluster drives for resource creation, including capacity, eligibility, physical media and Ceph pool protection mode.

Parameters

ParameterLocationRequiredTypeDescription
MEDIAqueryyesstringRequest parameter.
POOLMODEqueryyesstringRequest parameter.
TOTALSIZEINGBqueryyesstringRequest parameter.
iSCSI_OnlyqueryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster-drives/resource-candidates?MEDIA=<MEDIA>&POOLMODE=<POOLMODE>&TOTALSIZEINGB=<TOTALSIZEINGB>&iSCSI_Only=<iSCSI_Only>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster-drives/shared-volumes

list shared cluster volumes.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster-drives/shared-volumes'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster-drives/shared-volumes

create a shared cluster volume.

Parameters

ParameterLocationRequiredTypeDescription
disk_pathqueryyesstringRequest parameter.
drive_namequeryyesstringRequest parameter.
ip_addressqueryyesstring (ipv4)Request parameter.
preferred_nodequerynostringRequest parameter.
purposequeryyesstringStorage purpose. Use S3 when creating an eEKAS object-storage drive.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-drives/shared-volumes?disk_path=<disk_path>&drive_name=<drive_name>&ip_address=192.0.2.10&purpose=<purpose>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster-drives/system

create the system mirror drive.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-drives/system'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/bootstrap

create or resume a three-node eEKAS HA cluster, then initialize node registration for Ceph.

Parameters

ParameterLocationRequiredTypeDescription
cluster_namequeryyesstringRequest parameter.
node1_ipqueryyesstring (ipv4)Request parameter.
node1_replicationqueryyesstringRequest parameter.
node2_ipqueryyesstring (ipv4)Request parameter.
node2_replicationqueryyesstringRequest parameter.
node3_ipqueryyesstring (ipv4)Request parameter.
node3_replicationqueryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheaderyesstring; maximum length 255Prevents duplicate execution when the same mutating request is retried.
passwordJSON bodyyesstringRequest parameter.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  -H 'Content-Type: application/json' \
  --data '{"password":"REPLACE_WITH_PASSWORD"}' \
  'https://<server>:18443/api/v1/cluster/bootstrap?cluster_name=<cluster_name>&node1_ip=<node1_ip>&node1_replication=<node1_replication>&node2_ip=<node2_ip>&node2_replication=<node2_replication>&node3_ip=<node3_ip>&node3_replication=<node3_replication>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
428Idempotency-Key is required
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/check-system-files

verify and fix system file permissions/ownership.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/check-system-files'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/csync2-config

create or recreate the csync2 cluster file sync configuration.

Parameters

ParameterLocationRequiredTypeDescription
recreatequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/csync2-config'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster/fencing

Get /api/v1/cluster/fencing.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster/fencing'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/fencing

Post /api/v1/cluster/fencing.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/fencing'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/file-sync/switch

switch the cluster to cluster file sync mode.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/file-sync/switch'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/fix-system-disk

repair problematic system mirror state.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/fix-system-disk'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/heartbeat/global-ocfs2

create the global OCFS2 heartbeat infrastructure.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/heartbeat/global-ocfs2'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/heartbeat/initialize-ram-device

initialize the heartbeat RAM device.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/heartbeat/initialize-ram-device'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/import-drives

import non-configured cluster drives.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/import-drives'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/import-resources

import non-configured cluster resources.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/import-resources'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/cluster/ipmi-stonith

remove one managed BMC fencing resource and reconcile overall readiness.

Parameters

ParameterLocationRequiredTypeDescription
nodequeryyesstringCluster node name.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/ipmi-stonith?node=node1'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster/ipmi-stonith

report BMC fencing coverage or discovered BMC addresses without changing cluster configuration.

Parameters

ParameterLocationRequiredTypeDescription
viewquerynostringOptional alternate representation, such as discovered BMC data.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster/ipmi-stonith'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/ipmi-stonith

create, update, or adopt BMC fencing resources for HA cluster nodes.

Parameters

ParameterLocationRequiredTypeDescription
bmc_admin_userquerynostringRequest parameter.
create_stonithquerynostringRequest parameter.
enable_stonithquerynostringRequest parameter.
ipmi_channelquerynostringRequest parameter.
ipmi_channelsquerynostringRequest parameter.
ipmi_ipqueryyesstring (ipv4)Request parameter.
ipmi_mapquerynostringRequest parameter.
ipmi_user_idquerynostringRequest parameter.
nodequerynostringCluster node name.
provision_bmc_userquerynostringRequest parameter.
stonith_userquerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.
bmc_admin_passJSON bodynostringRequest parameter.
stonith_passJSON bodynostringRequest parameter.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  -H 'Content-Type: application/json' \
  --data '{"bmc_admin_pass":"<bmc_admin_pass>","stonith_pass":"<stonith_pass>"}' \
  'https://<server>:18443/api/v1/cluster/ipmi-stonith?ipmi_ip=<ipmi_ip>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/join/add-node

add a new node to an existing cluster.

Parameters

ParameterLocationRequiredTypeDescription
heartbeat_ipqueryyesstring (ipv4)Request parameter.
node_ipqueryyesstring (ipv4)Request parameter.
replication_ipqueryyesstring (ipv4)Request parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheaderyesstring; maximum length 255Prevents duplicate execution when the same mutating request is retried.
passwordJSON bodyyesstringRequest parameter.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  -H 'Content-Type: application/json' \
  --data '{"password":"REPLACE_WITH_PASSWORD"}' \
  'https://<server>:18443/api/v1/cluster/join/add-node?heartbeat_ip=<heartbeat_ip>&node_ip=<node_ip>&replication_ip=<replication_ip>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
428Idempotency-Key is required
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/join/dual

join a node into a dual-node cluster.

Parameters

ParameterLocationRequiredTypeDescription
my_heartbeatqueryyesstringRequest parameter.
my_replicationqueryyesstringRequest parameter.
remote_heartbeatqueryyesstringRequest parameter.
remote_replicationqueryyesstringRequest parameter.
use_folderquerynobooleanRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheaderyesstring; maximum length 255Prevents duplicate execution when the same mutating request is retried.
passwordJSON bodyyesstringRequest parameter.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  -H 'Content-Type: application/json' \
  --data '{"password":"REPLACE_WITH_PASSWORD"}' \
  'https://<server>:18443/api/v1/cluster/join/dual?my_heartbeat=<my_heartbeat>&my_replication=<my_replication>&remote_heartbeat=<remote_heartbeat>&remote_replication=<remote_replication>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
428Idempotency-Key is required
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster/join/info

inspect a remote node and collect cluster join information.

Parameters

ParameterLocationRequiredTypeDescription
ip_addressqueryyesstring (ipv4)Request parameter.
user_namequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
passwordJSON bodyyesstringRequest parameter.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Content-Type: application/json' \
  --data '{"password":"REPLACE_WITH_PASSWORD"}' \
  'https://<server>:18443/api/v1/cluster/join/info?ip_address=192.0.2.10&user_name=<user_name>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/join/multi

join a node into a multi-node cluster.

Parameters

ParameterLocationRequiredTypeDescription
my_heartbeatqueryyesstringRequest parameter.
my_replicationqueryyesstringRequest parameter.
remote_heartbeatqueryyesstringRequest parameter.
remote_replicationqueryyesstringRequest parameter.
use_folderquerynobooleanRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheaderyesstring; maximum length 255Prevents duplicate execution when the same mutating request is retried.
passwordJSON bodyyesstringRequest parameter.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  -H 'Content-Type: application/json' \
  --data '{"password":"REPLACE_WITH_PASSWORD"}' \
  'https://<server>:18443/api/v1/cluster/join/multi?my_heartbeat=<my_heartbeat>&my_replication=<my_replication>&remote_heartbeat=<remote_heartbeat>&remote_replication=<remote_replication>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
428Idempotency-Key is required
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster/maintenance

Get /api/v1/cluster/maintenance.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster/maintenance'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/maintenance

Post /api/v1/cluster/maintenance.

Parameters

ParameterLocationRequiredTypeDescription
confirmquerynostringRequest parameter.
nodequerynostringCluster node name.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/maintenance'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster/monitor

Get /api/v1/cluster/monitor.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster/monitor'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/name

change the cluster base name.

Parameters

ParameterLocationRequiredTypeDescription
newnamequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/name?newname=<newname>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster/non-configured-resources

scan for resources present on the nodes but missing in cluster configuration.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster/non-configured-resources'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster/ping-ips

ping configured cluster IPs locally or across nodes.

Parameters

ParameterLocationRequiredTypeDescription
local_onlyquerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster/ping-ips'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/push-system-files

push this node's system files to the other nodes.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/push-system-files'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/ra-monitor-timeouts

reconfigure resource-agent monitor intervals/timeouts.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/ra-monitor-timeouts'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/cluster/resources

delete a cluster resource.

Parameters

ParameterLocationRequiredTypeDescription
lun_numberquerynointeger; minimum 0Request parameter.
resource_namequeryyesstringRequest parameter.
resource_typequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/resources?resource_name=<resource_name>&resource_type=<resource_type>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster/resources

list cluster resources relevant to storage/share targets.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster/resources'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/cluster/resources/move

clear the temporary `cli-prefer`/`cli-ban` constraint created by a move without deleting permanent preferred-node constraints.

Parameters

ParameterLocationRequiredTypeDescription
resource_namequeryyesstringRequest parameter.
wait_secondsquerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/resources/move?resource_name=<resource_name>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster/resources/move

return the resource's current node and whether a temporary Pacemaker move constraint is active.

Parameters

ParameterLocationRequiredTypeDescription
resource_namequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster/resources/move?resource_name=<resource_name>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/resources/move

move a Pacemaker resource to a configured cluster node and wait for placement to complete.

Parameters

ParameterLocationRequiredTypeDescription
node_namequeryyesstringRequest parameter.
resource_namequeryyesstringRequest parameter.
run_asyncquerynostringRequest parameter.
wait_secondsquerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/resources/move?node_name=<node_name>&resource_name=<resource_name>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/resources/rename

rename a cluster resource.

Parameters

ParameterLocationRequiredTypeDescription
current_namequeryyesstringRequest parameter.
new_namequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/resources/rename?current_name=<current_name>&new_name=<new_name>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/resources/resize

resize a cluster resource.

Parameters

ParameterLocationRequiredTypeDescription
lun_numberquerynointeger; minimum 0Request parameter.
new_sizequeryyesstringRequest parameter.
resource_namequeryyesstringRequest parameter.
resource_typequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/resources/resize?new_size=<new_size>&resource_name=<resource_name>&resource_type=<resource_type>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/resources/upgrade

upgrade legacy cluster resource ordering/constraint syntax.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/resources/upgrade'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster/status

return cluster and CEPH/node status information.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster/status'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster/sync-system-files

synchronize system files from the newest node.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster/sync-system-files'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/observability/clusters

Get /api/v1/observability/clusters

Parameter Location Required Type Description
range query no string Backend parameter range.
step query no string Backend parameter step.
X-Correlation-ID header no string Optional caller correlation ID; generated when omitted.
Status Meaning
200 Successful response
400 Invalid request
401 Invalid or missing API key
403 API role is not permitted
405 Method not allowed
409 Resource state conflict
422 Request could not be processed
429 Rate limit exceeded
500 Backend operation failed

Response field types and nested request objects are defined in openapi.json / openapi.yaml. A 202 response accepts a job; poll status_url to verify completion.

Cluster Shares

DELETE /api/v1/cluster-shares

delete a cluster share.

Parameters

ParameterLocationRequiredTypeDescription
share_namequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-shares?share_name=example-share'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster-shares

list cluster shares.

Parameters

ParameterLocationRequiredTypeDescription
capabilitiesquerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster-shares'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster-shares

create a cluster share.

Parameters

ParameterLocationRequiredTypeDescription
drive_namequeryyesstringRequest parameter.
file_systemqueryyesstringRequest parameter.
ip_groupqueryyesstringIP Group that supplies service addresses and an ordered, selectable subset of eligible gateway nodes. Multiple distributed addresses can balance SMB, NFS or S3 client connections when published under one DNS name.
protocolsqueryyesstringRequest parameter.
share_namequeryyesstringRequest parameter.
sizequeryyesstringRequest parameter.
sws_sharequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-shares?drive_name=<drive_name>&file_system=<file_system>&ip_group=<ip_group>&protocols=<protocols>&share_name=example-share&size=<size>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster-shares/ceph

list Ceph-backed cluster shares.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster-shares/ceph'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/cluster-shares/sws

delete an SWS cluster share resource.

Parameters

ParameterLocationRequiredTypeDescription
sws_sharequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-shares/sws?sws_share=<sws_share>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster-shares/sws

create an SWS cluster share resource.

Parameters

ParameterLocationRequiredTypeDescription
drive_namequerynostringRequest parameter.
main_share_namequeryyesstringRequest parameter.
sws_sharequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-shares/sws?main_share_name=<main_share_name>&sws_share=<sws_share>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

Cluster iSCSI

GET /api/v1/cluster-iscsi/alua

list the preferred portal and current optimized gateway for every clustered iSCSI LUN.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster-iscsi/alua'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster-iscsi/alua

validate and reconcile ALUA multipath for a distributed IP Group.

Parameters

ParameterLocationRequiredTypeDescription
ip_groupqueryyesstringIP Group that supplies service addresses and an ordered, selectable subset of eligible gateway nodes. Multiple distributed addresses can balance SMB, NFS or S3 client connections when published under one DNS name.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-iscsi/alua?ip_group=<ip_group>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/cluster-iscsi/targets

Delete /api/v1/cluster-iscsi/targets.

Parameters

ParameterLocationRequiredTypeDescription
drive_namequeryyesstringRequest parameter.
drive_typequeryyesstring; values: ceph, lvmRequest parameter.
target_namequeryyesstringFC target or backing-volume name, as required by the operation.
target_typequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-iscsi/targets?drive_name=<drive_name>&drive_type=ceph&target_name=example-target'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/cluster-iscsi/targets

Get /api/v1/cluster-iscsi/targets.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/cluster-iscsi/targets'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster-iscsi/targets

Post /api/v1/cluster-iscsi/targets.

Parameters

ParameterLocationRequiredTypeDescription
drive_namequeryyesstringRequest parameter.
drive_typequeryyesstring; values: ceph, lvmRequest parameter.
ip_groupqueryyesstringIP Group that supplies service addresses and an ordered, selectable subset of eligible gateway nodes. Multiple distributed addresses can balance SMB, NFS or S3 client connections when published under one DNS name.
sizequeryyesstringRequest parameter.
target_namequeryyesstringFC target or backing-volume name, as required by the operation.
target_runtimequerynostring; values: coordinator, raRequest parameter.
target_typequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-iscsi/targets?drive_name=<drive_name>&drive_type=ceph&ip_group=<ip_group>&size=<size>&target_name=example-target'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/cluster-iscsi/targets/extend

Post /api/v1/cluster-iscsi/targets/extend.

Parameters

ParameterLocationRequiredTypeDescription
drive_namequerynostringRequest parameter.
new_sizequerynostringRequest parameter.
target_namequerynostringFC target or backing-volume name, as required by the operation.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/cluster-iscsi/targets/extend'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

Fibre Channel

DELETE /api/v1/fc/access

delete an unused FC host or group definition.

Parameters

ParameterLocationRequiredTypeDescription
groupsqueryyesstringComma-separated FC host-group identifiers.
hostsqueryyesstringComma-separated FC host identifiers.
idqueryyesstringStable host or group identifier.
kindqueryyesstringRegistry type or result category requested by the operation.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/fc/access?groups=<groups>&hosts=<hosts>&id=<id>&kind=<kind>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/fc/access

list saved FC hosts or host groups, detected initiators, or the.

Parameters

ParameterLocationRequiredTypeDescription
kindquerynostringRegistry type or result category requested by the operation.
targetquerynostringCluster FC target resource identifier.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/fc/access'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/fc/access

create or update hosts/groups, or apply unrestricted/restricted LUN access to a cluster FC target.

Parameters

ParameterLocationRequiredTypeDescription
actionqueryyesstringOperation-specific action selector.
idquerynostringStable host or group identifier.
namequerynostringHuman-readable display name.
valuesquerynostringComma-separated WWPN or membership values, depending on action.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/fc/access?action=<action>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/fc/hbas

list detected Fibre Channel adapters, port identity, link state, active mode, serial information, and firmware.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/fc/hbas'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/fc/interrupt-coalescing

apply the fixed FC interrupt coalescing settings used by the CLI.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/fc/interrupt-coalescing'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/fc/luns

list configured Fibre Channel LUN mappings.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/fc/luns'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/fc/mode

report runtime and persistent FC mode on every cluster node.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/fc/mode'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/fc/mode

persistently enable FC target mode across all cluster nodes.

Parameters

ParameterLocationRequiredTypeDescription
modequeryyesstringRequested operating or access mode; accepted values depend on the endpoint.
targetqueryyesstringCluster FC target resource identifier.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/fc/mode?mode=<mode>&target=<target>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/fc/targets

remove an FC target through the GUI-compatible deletion workflow.

Parameters

ParameterLocationRequiredTypeDescription
target_namequeryyesstringFC target or backing-volume name, as required by the operation.
volume_groupqueryyesstringBacking ZFS pool or LVM volume group.
volume_typequeryyesstringBacking storage type: zfs or volume.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/fc/targets?target_name=example-target&volume_group=<volume_group>&volume_type=<volume_type>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/fc/targets

list current Fibre Channel targets, LUN numbers, backing pools,.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/fc/targets'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/fc/targets

create a Fibre Channel target using the same validated workflow as the management GUI.

Parameters

ParameterLocationRequiredTypeDescription
portsqueryyesstringComma-separated FC port WWPNs that remain assigned to the target.
size_gbqueryyesstringRequested capacity in GiB.
target_namequeryyesstringFC target or backing-volume name, as required by the operation.
volume_groupqueryyesstringBacking ZFS pool or LVM volume group.
volume_typequeryyesstringBacking storage type: zfs or volume.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/fc/targets?ports=<ports>&size_gb=<size_gb>&target_name=example-target&volume_group=<volume_group>&volume_type=<volume_type>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/fc/targets/expand

expand an existing FC target while retaining its current port assignments.

Parameters

ParameterLocationRequiredTypeDescription
current_size_gbqueryyesstringCurrent target capacity in GiB.
new_size_gbqueryyesstringNew target capacity in GiB; shrinking is rejected.
portsquerynostringComma-separated FC port WWPNs that remain assigned to the target.
target_namequeryyesstringFC target or backing-volume name, as required by the operation.
volume_groupqueryyesstringBacking ZFS pool or LVM volume group.
volume_typequerynostringBacking storage type: zfs or volume.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/fc/targets/expand?current_size_gb=<current_size_gb>&new_size_gb=<new_size_gb>&target_name=example-target&volume_group=<volume_group>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

NVMe

DELETE /api/v1/nvme-targets

remove an NVMe target.

Parameters

ParameterLocationRequiredTypeDescription
remove_volumequerynostringRequest parameter.
target_namequeryyesstringFC target or backing-volume name, as required by the operation.
volume_typequerynostringBacking storage type: zfs or volume.
zfsquerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/nvme-targets?target_name=example-target'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/nvme-targets

list configured NVMe targets.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/nvme-targets'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/nvme-targets

create an NVMe target.

Parameters

ParameterLocationRequiredTypeDescription
device_pathqueryyesstringRequest parameter.
ip_addressquerynostring (ipv4)Request parameter.
port_numberquerynointeger; minimum 0Request parameter.
serial_numberquerynostringRequest parameter.
target_namequeryyesstringFC target or backing-volume name, as required by the operation.
transport_typequerynostringRequest parameter.
uuidquerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/nvme-targets?device_path=<device_path>&target_name=example-target'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/nvme-targets/activate

activate currently configured NVMe targets.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/nvme-targets/activate'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/nvme-targets/activate-ports

activate NVMe target ports.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/nvme-targets/activate-ports'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/nvme-targets/allowed-initiators

apply allowed initiator rules for an NVMe target.

Parameters

ParameterLocationRequiredTypeDescription
NQNqueryyesstringRequest parameter.
permission_filequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/nvme-targets/allowed-initiators?NQN=<NQN>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/nvme-targets/connections

list initiator connections for one NVMe target.

Parameters

ParameterLocationRequiredTypeDescription
nqnquerynostringRequest parameter.
target_nqnqueryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/nvme-targets/connections?target_nqn=<target_nqn>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/nvme-targets/manage-port

call the port-management alias for NVMe targets.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/nvme-targets/manage-port'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/nvme-targets/reset-portals

reset NVMe target portals to the currently allowed portal set.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/nvme-targets/reset-portals'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/nvme-targets/service/start

start the NVMe target service.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/nvme-targets/service/start'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/nvme-targets/service/stop

stop the NVMe target service.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/nvme-targets/service/stop'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/nvme-targets/volumes

create an NVMe backing volume.

Parameters

ParameterLocationRequiredTypeDescription
sizequeryyesstringRequest parameter.
volume_groupqueryyesstringBacking ZFS pool or LVM volume group.
volume_namequeryyesstringRequest parameter.
volume_typequerynostringBacking storage type: zfs or volume.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/nvme-targets/volumes?size=<size>&volume_group=<volume_group>&volume_name=<volume_name>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

NVMe Initiator

POST /api/v1/nvme-initiators/connect

connect to an NVMe target.

Parameters

ParameterLocationRequiredTypeDescription
NQNqueryyesstringRequest parameter.
portal_ipqueryyesstring (ipv4)Request parameter.
portal_portquerynointeger; minimum 0Request parameter.
transport_typequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/nvme-initiators/connect?NQN=<NQN>&portal_ip=<portal_ip>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/nvme-initiators/connect-configured

connect all persistently configured NVMe initiator targets.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/nvme-initiators/connect-configured'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/nvme-initiators/connections

list current NVMe initiator connections.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/nvme-initiators/connections'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/nvme-initiators/disconnect

disconnect an NVMe target.

Parameters

ParameterLocationRequiredTypeDescription
NQNqueryyesstringRequest parameter.
keep_configquerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/nvme-initiators/disconnect?NQN=<NQN>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/nvme-initiators/discover

discover NVMe targets on a portal.

Parameters

ParameterLocationRequiredTypeDescription
port_numberquerynointeger; minimum 0Request parameter.
portal_ipqueryyesstring (ipv4)Request parameter.
transport_typequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/nvme-initiators/discover?portal_ip=<portal_ip>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

Shares

DELETE /api/v1/shares

delete a main share or SWS share.

Parameters

ParameterLocationRequiredTypeDescription
share_namequeryyesstringRequest parameter.
swsquerynostringRequest parameter.
volume_groupqueryyesstringBacking ZFS pool or LVM volume group.
zfs_poolquerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/shares?share_name=example-share&volume_group=<volume_group>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/shares

list main shares.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/shares'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/shares

create a main share.

Parameters

ParameterLocationRequiredTypeDescription
filesystemqueryyesstringRequest parameter.
protocolsqueryyesstringRequest parameter.
share_namequeryyesstringRequest parameter.
size_gbqueryyesstringRequested capacity in GiB.
volume_groupqueryyesstringBacking ZFS pool or LVM volume group.
zfs_poolquerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/shares?filesystem=<filesystem>&protocols=<protocols>&share_name=example-share&size_gb=<size_gb>&volume_group=<volume_group>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/shares/import-settings

rebuild share settings cache from the current share configuration.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/shares/import-settings'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/shares/protocols

enable or disable AFP and FTP handling for a share.

Parameters

ParameterLocationRequiredTypeDescription
afpqueryyesstringRequest parameter.
ftpqueryyesstringRequest parameter.
share_namequeryyesstringRequest parameter.
swsquerynostringRequest parameter.
typequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/shares/protocols?afp=<afp>&ftp=<ftp>&share_name=example-share&type=<type>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/shares/rename

rename a main share.

Parameters

ParameterLocationRequiredTypeDescription
new_share_namequeryyesstringRequest parameter.
share_namequeryyesstringRequest parameter.
volume_groupqueryyesstringBacking ZFS pool or LVM volume group.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/shares/rename?new_share_name=<new_share_name>&share_name=example-share&volume_group=<volume_group>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/shares/resize

grow an existing main share.

Parameters

ParameterLocationRequiredTypeDescription
filesystemqueryyesstringRequest parameter.
new_size_gbqueryyesstringNew target capacity in GiB; shrinking is rejected.
old_size_gbqueryyesstringRequest parameter.
share_namequeryyesstringRequest parameter.
volume_groupqueryyesstringBacking ZFS pool or LVM volume group.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/shares/resize?filesystem=<filesystem>&new_size_gb=<new_size_gb>&old_size_gb=<old_size_gb>&share_name=example-share&volume_group=<volume_group>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/shares/sws

list subfolder shares.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/shares/sws'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/shares/sws

create a subfolder share.

Parameters

ParameterLocationRequiredTypeDescription
protocolsqueryyesstringRequest parameter.
selected_folderqueryyesstringRequest parameter.
share_namequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/shares/sws?protocols=<protocols>&selected_folder=<selected_folder>&share_name=example-share'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/shares/sws/rename

rename a subfolder share.

Parameters

ParameterLocationRequiredTypeDescription
new_share_namequeryyesstringRequest parameter.
share_namequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/shares/sws/rename?new_share_name=<new_share_name>&share_name=example-share'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

Snapshots

DELETE /api/v1/legacy-snapshots

delete a legacy snapshot.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
share_namequeryyesstringRequest parameter.
snapshot_namequeryyesstringRequest parameter.
typequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/legacy-snapshots?share_name=example-share&snapshot_name=<snapshot_name>&type=<type>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/legacy-snapshots

Get /api/v1/legacy-snapshots

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/legacy-snapshots'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/legacy-snapshots

create a legacy snapshot for a share or logical volume.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
share_namequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/legacy-snapshots?share_name=example-share'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/legacy-snapshots/clean-invalid

clean invalid legacy LVM snapshots.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/legacy-snapshots/clean-invalid'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/legacy-snapshots/individual

list individual snapshots for one volume.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
share_namequeryyesstringRequest parameter.
typequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/legacy-snapshots/individual?share_name=example-share&type=<type>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/legacy-snapshots/lvm

list LVM-based legacy snapshots.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/legacy-snapshots/lvm'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/legacy-snapshots/revert

revert a logical volume to a legacy snapshot.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
share_namequeryyesstringRequest parameter.
snapshot_namequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/legacy-snapshots/revert?share_name=example-share&snapshot_name=<snapshot_name>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/legacy-snapshots/subvolumes

list BTRFS subvolume snapshots.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/legacy-snapshots/subvolumes'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/snapshots

delete a specific snapshot.

Parameters

ParameterLocationRequiredTypeDescription
pool_namequeryyesstringZFS pool name.
resource_namequeryyesstringRequest parameter.
snapshot_namequeryyesstringRequest parameter.
typequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/snapshots?pool_name=<pool_name>&resource_name=<resource_name>&snapshot_name=<snapshot_name>&type=<type>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/snapshots

list snapshots with creation and expiration details.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/snapshots'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/snapshots

create a snapshot.

Parameters

ParameterLocationRequiredTypeDescription
pool_namequeryyesstringZFS pool name.
resource_namequeryyesstringRequest parameter.
retention_daysqueryyesinteger; minimum 0Request parameter.
typequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/snapshots?pool_name=<pool_name>&resource_name=<resource_name>&retention_days=1&type=<type>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/snapshots/clone

clone a snapshot.

Parameters

ParameterLocationRequiredTypeDescription
clone_namequeryyesstringRequest parameter.
pool_namequeryyesstringZFS pool name.
promotequeryyesstringRequest parameter.
resource_namequeryyesstringRequest parameter.
snapshot_namequeryyesstringRequest parameter.
typequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/snapshots/clone?clone_name=<clone_name>&pool_name=<pool_name>&promote=<promote>&resource_name=<resource_name>&snapshot_name=<snapshot_name>&type=<type>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/snapshots/expired

delete all expired snapshots.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/snapshots/expired'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/snapshots/rollback

roll back a resource to a specific snapshot.

Parameters

ParameterLocationRequiredTypeDescription
pool_namequeryyesstringZFS pool name.
resource_namequeryyesstringRequest parameter.
snapshot_namequeryyesstringRequest parameter.
typequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/snapshots/rollback?pool_name=<pool_name>&resource_name=<resource_name>&snapshot_name=<snapshot_name>&type=<type>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/snapshots/schedule

create a snapshot schedule.

Parameters

ParameterLocationRequiredTypeDescription
endHourquerynostringRequest parameter.
max_snapshotsqueryyesstringRequest parameter.
resourcesqueryyesstringRequest parameter.
scheduleTypequeryyesstringRequest parameter.
startHourqueryyesstringRequest parameter.
weekdaysquerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/snapshots/schedule?max_snapshots=<max_snapshots>&resources=<resources>&scheduleType=<scheduleType>&startHour=<startHour>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/snapshots/short

short per-resource snapshot summary.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/snapshots/short'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/snapshots/summary

summary view of snapshots per resource.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/snapshots/summary'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

System

GET /health

check whether the API is reachable.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/health'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

Users

DELETE /api/v1/users

Delete /api/v1/users.

Parameters

ParameterLocationRequiredTypeDescription
remove_homequerynostringRequest parameter.
usernamequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/users?username=api-user'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/users

Get /api/v1/users.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/users'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

PATCH /api/v1/users

Patch /api/v1/users.

Parameters

ParameterLocationRequiredTypeDescription
full_namequerynostringRequest parameter.
homequerynostringRequest parameter.
new_usernamequerynostringRequest parameter.
primary_groupquerynostringRequest parameter.
shellquerynostringRequest parameter.
uidquerynostringRequest parameter.
usernamequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.
passwordJSON bodyyesstringRequest parameter.

Example

curl \
  -X PATCH \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  -H 'Content-Type: application/json' \
  --data '{"password":"REPLACE_WITH_PASSWORD"}' \
  'https://<server>:18443/api/v1/users?username=api-user'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/users

Post /api/v1/users.

Parameters

ParameterLocationRequiredTypeDescription
full_namequeryyesstringRequest parameter.
groupqueryyesstringRequest parameter.
usernamequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.
passwordJSON bodyyesstringRequest parameter.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  -H 'Content-Type: application/json' \
  --data '{"password":"REPLACE_WITH_PASSWORD"}' \
  'https://<server>:18443/api/v1/users?full_name=<full_name>&group=<group>&username=api-user'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/users/generate-userid

request the next generated user ID from the CLI.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/users/generate-userid'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/users/groups

Post /api/v1/users/groups.

Parameters

ParameterLocationRequiredTypeDescription
groupsqueryyesstringComma-separated FC host-group identifiers.
modequerynostringRequested operating or access mode; accepted values depend on the endpoint.
usernamequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/users/groups?groups=<groups>&username=api-user'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/users/internal

create the internal cluster communication user if needed.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/users/internal'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/users/lock

Post /api/v1/users/lock.

Parameters

ParameterLocationRequiredTypeDescription
lockedqueryyesstringRequest parameter.
usernamequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/users/lock?locked=<locked>&username=api-user'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/users/oem-password

set the OEM/admin password through the CLI.

Parameters

ParameterLocationRequiredTypeDescription
confirmationqueryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.
current_passwordJSON bodyyesstringRequest parameter.
passwordJSON bodyyesstringRequest parameter.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  -H 'Content-Type: application/json' \
  --data '{"current_password":"<current_password>","password":"REPLACE_WITH_PASSWORD"}' \
  'https://<server>:18443/api/v1/users/oem-password?confirmation=<confirmation>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/users/password

Post /api/v1/users/password.

Parameters

ParameterLocationRequiredTypeDescription
usernamequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.
passwordJSON bodyyesstringRequest parameter.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  -H 'Content-Type: application/json' \
  --data '{"password":"REPLACE_WITH_PASSWORD"}' \
  'https://<server>:18443/api/v1/users/password?username=api-user'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

ZFS

GET /api/v1/zfs/pool-calculator

return recommended ZFS pool layouts.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
disk_size_tbqueryyesstringRequest parameter.
interfacequerynostringRequest parameter.
is_smrquerynobooleanRequest parameter.
max_widthquerynostringRequest parameter.
mediaqueryyesstringRequest parameter.
rpmquerynostringRequest parameter.
total_disksqueryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/zfs/pool-calculator?disk_size_tb=<disk_size_tb>&media=<media>&total_disks=<total_disks>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/zfs/pools

delete a ZFS pool.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
pool_namequeryyesstringZFS pool name.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/zfs/pools?pool_name=<pool_name>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/zfs/pools

create a ZFS pool.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
abrupt_failoverquerynostringRequest parameter.
compressionquerynostringRequest parameter.
compression_typequerynostringRequest parameter.
disks_per_unitqueryyesstringRequest parameter.
drivesqueryyesstringRequest parameter.
pool_namequeryyesstringZFS pool name.
raid_levelqueryyesstringRequest parameter.
storage_unitsqueryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/zfs/pools?disks_per_unit=<disks_per_unit>&drives=<drives>&pool_name=<pool_name>&raid_level=<raid_level>&storage_units=<storage_units>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/zfs/pools-and-volumes

list pools and contained resources.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/zfs/pools-and-volumes'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/zfs/pools/cache

add cache devices to a pool.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
drivesqueryyesstringRequest parameter.
pool_namequeryyesstringZFS pool name.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/zfs/pools/cache?drives=<drives>&pool_name=<pool_name>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/zfs/pools/compression

enable or disable compression on a pool.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
compressionqueryyesstringRequest parameter.
compression_typequeryyesstringRequest parameter.
pool_namequeryyesstringZFS pool name.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/zfs/pools/compression?compression=<compression>&compression_type=<compression_type>&pool_name=<pool_name>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/zfs/pools/disk

remove a disk, cache, or spare from a pool.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
drivesqueryyesstringRequest parameter.
pool_namequeryyesstringZFS pool name.
typequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/zfs/pools/disk?drives=<drives>&pool_name=<pool_name>&type=<type>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/zfs/pools/expand

expand a pool with a new disk.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
new_diskqueryyesstringRequest parameter.
pool_namequeryyesstringZFS pool name.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/zfs/pools/expand?new_disk=<new_disk>&pool_name=<pool_name>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/zfs/pools/import

import foreign pools.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/zfs/pools/import'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/zfs/pools/members

show detailed member layout for one pool.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
pool_namequeryyesstringZFS pool name.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/zfs/pools/members?pool_name=<pool_name>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/zfs/pools/metadata

add metadata/special devices to a pool.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
drivesqueryyesstringRequest parameter.
pool_namequeryyesstringZFS pool name.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/zfs/pools/metadata?drives=<drives>&pool_name=<pool_name>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/zfs/pools/ownership

clear stored ownership metadata for a pool.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
pool_namequeryyesstringZFS pool name.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/zfs/pools/ownership?pool_name=<pool_name>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/zfs/pools/ownership

show recorded pool ownership and the configured takeover policy.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
pool_namequerynostringZFS pool name.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/zfs/pools/ownership'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/zfs/pools/ownership

change takeover policy, evaluate ownership safety, or explicitly authorize a guarded import.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
actionqueryyesstringOperation-specific action selector.
pool_namequeryyesstringZFS pool name.
valuequerynostringAction value or explicit confirmation text required by the endpoint.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/zfs/pools/ownership?action=<action>&pool_name=<pool_name>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/zfs/pools/replace-disk

replace a failed pool member.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
faulty_diskqueryyesstringRequest parameter.
new_diskqueryyesstringRequest parameter.
pool_namequeryyesstringZFS pool name.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/zfs/pools/replace-disk?faulty_disk=<faulty_disk>&new_disk=<new_disk>&pool_name=<pool_name>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/zfs/pools/resource

create a clustered pool resource.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
abrupt_failoverquerynostringRequest parameter.
ip_addressqueryyesstring (ipv4)Request parameter.
pool_namequeryyesstringZFS pool name.
preferred_nodequeryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/zfs/pools/resource?ip_address=192.0.2.10&pool_name=<pool_name>&preferred_node=<preferred_node>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/zfs/pools/spare

add a spare disk to a pool.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
pool_namequeryyesstringZFS pool name.
spare_diskqueryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/zfs/pools/spare?pool_name=<pool_name>&spare_disk=<spare_disk>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/zfs/pools/with-size

list pools, datasets, and size information.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/zfs/pools/with-size'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

DELETE /api/v1/zfs/replication

cancel a queued or running replication job and its send/receive pipeline.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
job_idqueryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X DELETE \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/zfs/replication?job_id=<job_id>'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/zfs/replication

list replication history, or return one job when `job_id` is supplied.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
job_idquerynostringRequest parameter.
limitquerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/zfs/replication'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/zfs/replication

queue a persistent asynchronous ZFS send/receive job.

Deprecated: retained for compatibility.

Parameters

ParameterLocationRequiredTypeDescription
asyncquerynostringRequest parameter.
destination_datasetqueryyesstringRequest parameter.
destination_hostqueryyesstringRequest parameter.
destination_userqueryyesstringRequest parameter.
modequeryyesstringRequested operating or access mode; accepted values depend on the endpoint.
run_asyncqueryyesstringRequest parameter.
snapshot_namequeryyesstringRequest parameter.
source_datasetqueryyesstringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.
destination_passwordJSON bodyyesstringRequest parameter.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  -H 'Content-Type: application/json' \
  --data '{"destination_password":"<destination_password>"}' \
  'https://<server>:18443/api/v1/zfs/replication?destination_dataset=<destination_dataset>&destination_host=<destination_host>&destination_user=<destination_user>&mode=<mode>&run_async=<run_async>&snapshot_name=<snapshot_name>&source_dataset=<source_dataset>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

iSCSI

GET /api/v1/iscsi/targets

list configured iSCSI targets.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/iscsi/targets'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/iscsi/targets

create a new iSCSI target.

Parameters

ParameterLocationRequiredTypeDescription
sizequeryyesstringRequest parameter.
target_namequeryyesstringFC target or backing-volume name, as required by the operation.
volume_groupqueryyesstringBacking ZFS pool or LVM volume group.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/iscsi/targets?size=<size>&target_name=example-target&volume_group=<volume_group>'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/iscsi/targets/activate

activate an existing iSCSI target.

Parameters

ParameterLocationRequiredTypeDescription
disk_numberquerynostringRequest parameter.
target_namequeryyesstringFC target or backing-volume name, as required by the operation.
target_typequerynostringRequest parameter.
volume_namequerynostringRequest parameter.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/iscsi/targets/activate?target_name=example-target'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/iscsi/targets/deactivate

deactivate an existing iSCSI target.

Parameters

ParameterLocationRequiredTypeDescription
target_namequeryyesstringFC target or backing-volume name, as required by the operation.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/iscsi/targets/deactivate?target_name=example-target'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/iscsi/targets/reset-portals

reset allowed portals on all iSCSI targets.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/iscsi/targets/reset-portals'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

iSCSI Initiator

POST /api/v1/iscsi-initiators/connect

connect the initiator to a target portal.

Parameters

ParameterLocationRequiredTypeDescription
chap_userquerynostringRequest parameter.
connect_on_all_nodesquerynostringRequest parameter.
portalqueryyesstringRequest parameter.
target_namequeryyesstringFC target or backing-volume name, as required by the operation.
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.
chap_passwordJSON bodynostringRequest parameter.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  -H 'Content-Type: application/json' \
  --data '{"chap_password":"<chap_password>"}' \
  'https://<server>:18443/api/v1/iscsi-initiators/connect?portal=<portal>&target_name=example-target'

Responses

StatusMeaning
201Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

POST /api/v1/iscsi-initiators/sync

synchronize discovered iSCSI target configuration to all cluster nodes.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.
Idempotency-Keyheadernostring; maximum length 255Prevents duplicate execution when the same mutating request is retried.

Example

curl \
  -X POST \
  -H 'X-API-Key: <API_KEY>' \
  -H 'Idempotency-Key: <UNIQUE_REQUEST_ID>' \
  'https://<server>:18443/api/v1/iscsi-initiators/sync'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

GET /api/v1/iscsi-initiators/targets

Get /api/v1/iscsi-initiators/targets.

Parameters

ParameterLocationRequiredTypeDescription
X-Correlation-IDheadernostringOptional request identifier. The server generates one when omitted.

Example

curl \
  -X GET \
  -H 'X-API-Key: <API_KEY>' \
  'https://<server>:18443/api/v1/iscsi-initiators/targets'

Responses

StatusMeaning
200Successful response
400Invalid request
401Invalid or missing API key
403API role is not permitted
405Method not allowed
409Resource state conflict
422Request could not be processed
429Rate limit exceeded
500Backend operation failed

Common response behavior

Mutating operations can return HTTP 202 and a job identifier for asynchronous work. Errors are JSON objects with an error field. Common statuses are 400, 401, 403, 404, 409, 429, and 500.

Hardware

GET /api/v1/hardware/sensors

Read current BMC sensors locally, for one registered node, or node=all

Parameter Location Required Type Description
node query no string Request parameter node
X-Correlation-ID header no string Optional caller correlation ID; generated when omitted.
Status Meaning
400 Invalid request
401 Invalid or missing API key
403 API role is not permitted
405 Method not allowed
409 Resource state conflict
422 Request could not be processed
429 Rate limit exceeded
500 Backend operation failed
200 Successful response
501 Product does not support this endpoint
502 Backend failed
503 Backend unavailable
504 Backend timed out

Response field types and nested request objects are defined in openapi.json / openapi.yaml. A 202 response accepts a job; poll status_url to verify completion.

Hardware and storage update — 2026-10-23

Read the hardware and storage notes in the product endpoint sections for sensor fields, monitoring, confirmations, preflight requests and the credential-retrieval migration.