Disclaimer: Use of this API is entirely at the user's own responsibility. API usage is not covered by support.
Passwords, API keys, access keys, secret keys, tokens, and fencing credentials must use an application/json request body. Secret values in URLs are rejected.
Only operations supported by this product are included; storage and cluster features from other product families are intentionally omitted.
API
GET /api/docs
Get /api/docs.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/docs'
Responses
| Status | Meaning |
|---|
| 200 | Swagger UI |
| 404 | Documentation disabled |
GET /api/docs/openapi-json
Get /api/docs/openapi-json.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| Status | Meaning |
|---|
| 200 | Swagger UI static asset |
GET /api/docs/swagger-ui-bundle.js
Get /api/docs/swagger-ui-bundle.js.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| Status | Meaning |
|---|
| 200 | Swagger UI static asset |
GET /api/docs/swagger-ui-standalone-preset.js
Get /api/docs/swagger-ui-standalone-preset.js.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| Status | Meaning |
|---|
| 200 | Swagger UI static asset |
GET /api/docs/swagger-ui.css
Get /api/docs/swagger-ui.css.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| Status | Meaning |
|---|
| 200 | Swagger UI static asset |
GET /api/openapi.json
Get /api/openapi.json.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| Status | Meaning |
|---|
| 200 | OpenAPI 3.1 document |
| 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 |
GET /api/openapi.yaml
Get /api/openapi.yaml.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
DELETE /api/v1/groups
Delete /api/v1/groups.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
group_name | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/groups
Get /api/v1/groups.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
PATCH /api/v1/groups
Patch /api/v1/groups.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
gid | query | no | string | Request parameter. |
group_name | query | yes | string | Request parameter. |
new_group_name | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/groups
Post /api/v1/groups.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
gid | query | no | string | Request parameter. |
group_name | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| Status | Meaning |
|---|
| 201 | 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 |
DELETE /api/v1/jobs
Delete /api/v1/jobs.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
job_id | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/jobs
read the state and captured output of a long-running API operation.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
job_id | query | no | string | Request parameter. |
limit | query | no | string | Request parameter. |
status | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional 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
| 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 |
DELETE /api/v1/mounts
unmount and remove a remote SMB share definition.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
mount_folder | query | no | string | Request parameter. |
server_name | query | no | string | Request parameter. |
share_name | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/mounts
mount a remote SMB share.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
domain_name | query | no | string | Request parameter. |
ip_address | query | yes | string (ipv4) | Request parameter. |
mount_folder | query | yes | string | Request parameter. |
share_name | query | yes | string | Request parameter. |
user_name | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents duplicate execution when the same mutating request is retried. |
password | JSON body | no | string | Request 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
| Status | Meaning |
|---|
| 201 | 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 |
POST /api/v1/mounts/cloud
mount a cloud bucket through the configured rclone profile.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
bucket | query | yes | string | Request parameter. |
config_path | query | yes | string | Request parameter. |
mount_folder | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| Status | Meaning |
|---|
| 201 | 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 |
GET /api/v1/multi-cluster/license
show the local cluster license and version information.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/multi-cluster/shared-iscsi-disk
create a shared iSCSI-backed cluster disk resource.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
chap_user | query | no | string | Request parameter. |
portal_ip | query | yes | string (ipv4) | Request parameter. |
resource_name | query | yes | string | Request parameter. |
target_name | query | yes | string | FC target or backing-volume name, as required by the operation. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents duplicate execution when the same mutating request is retried. |
password | JSON body | no | string | Request 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
| Status | Meaning |
|---|
| 201 | 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 |
GET /api/v1/multi-cluster/status
show cluster node and cluster-service status.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
extended | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional 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
| 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 |
GET /api/v1/notifications
Get /api/v1/notifications.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
view | query | no | string | Optional alternate representation, such as discovered BMC data. |
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/notifications
Post /api/v1/notifications.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
PUT /api/v1/notifications
Put /api/v1/notifications.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/product/capabilities
Get /api/v1/product/capabilities.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
GET /api/v1/rdma/devices
list RDMA devices, ports, modes, and detected IP information.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
DELETE /api/v1/rdma/nfs
disable the persistent NFS over RDMA configuration.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/rdma/nfs
report NFS over RDMA configuration, interface, port, and listener state.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/rdma/nfs
enable persistent NFS over RDMA support.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
port | query | no | integer; minimum 0 | TCP port; NFS over RDMA defaults to 20049. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/rdma/recovery
report RDMA failover recovery service state and its latest recovery activity.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/rdma/recovery
install or repair and start the persistent RDMA failover recovery service.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/rdma/reset-port
reset InfiniBand ports through the RDMA management backend.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
ip_address | query | no | string (ipv4) | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/rdma/software-roce
enable or disable software RoCE on one network port.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
mode | query | yes | string | Requested operating or access mode; accepted values depend on the endpoint. |
network_port | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/rdma/software-roce/enable-all
enable all persistently configured software RoCE devices.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/s3/buckets
List buckets from the selected S3 service instance using its current credentials.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
instance | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional 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
| 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 |
GET /api/v1/s3/console
return S3 console settings.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/s3/console
update the S3 console runtime.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
action | query | no | string | Operation-specific action selector. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
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
| Parameter | Location | Required | Type | Description |
|---|
name | query | yes | string | Human-readable display name. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/s3/runtime
control an S3 service runtime.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
action | query | no | string | Operation-specific action selector. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/s3/services
list configured S3 services.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/s3/services
create an S3 service.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
scope | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| Status | Meaning |
|---|
| 201 | 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 |
GET /api/v1/s3/status
return S3 health and runtime status.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
DELETE /api/v1/s3/storage
remove S3 storage.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
scope | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/s3/storage
create S3 storage.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
scope | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| Status | Meaning |
|---|
| 201 | 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 |
PUT /api/v1/s3/storage
import existing S3 storage.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
action | query | no | string | Operation-specific action selector. |
scope | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/ssh-trust
Post /api/v1/ssh-trust.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/storage/md
Get /api/v1/storage/md.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/storage/md
Post /api/v1/storage/md.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
DELETE /api/v1/sync/jobs
Delete /api/v1/sync/jobs.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
job_name | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/sync/jobs
Get /api/v1/sync/jobs.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
job_name | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/sync/jobs
Post /api/v1/sync/jobs.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
job_name | query | no | string | Request parameter. |
snapshot_replication | query | no | string | Request parameter. |
source_share | query | no | string | Request parameter. |
target_server | query | no | string | Request parameter. |
target_share | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| Status | Meaning |
|---|
| 201 | 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 |
GET /api/v1/system/api-configuration
Get /api/v1/system/api-configuration.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
PUT /api/v1/system/api-configuration
Put /api/v1/system/api-configuration.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/system/settings
Post /api/v1/system/settings.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/ups
query the configured UPS and return its current status values.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/ups/snmp-devices
scan and configure an SNMP UPS.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
ip_address | query | yes | string (ipv4) | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| Status | Meaning |
|---|
| 201 | 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 |
POST /api/v1/ups/usb-devices
scan for a USB UPS and write a new NUT configuration.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| Status | Meaning |
|---|
| 201 | 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 |
GET /api/v1/volumes
list available volumes.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
Ceph
DELETE /api/v1/ceph-targets
Delete /api/v1/ceph-targets.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
ip_group | query | no | string | IP 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. |
pool_name | query | no | string | ZFS pool name. |
target_name | query | no | string | FC target or backing-volume name, as required by the operation. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/ceph-targets'
Responses
| 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 |
GET /api/v1/ceph-targets
Get /api/v1/ceph-targets.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph-targets'
Responses
| 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 |
POST /api/v1/ceph-targets
Post /api/v1/ceph-targets.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
device_path | query | no | string | Request parameter. |
ip_group | query | no | string | IP 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. |
pool_name | query | no | string | ZFS pool name. |
target_name | query | no | string | FC target or backing-volume name, as required by the operation. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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-targets'
Responses
| Status | Meaning |
|---|
| 201 | 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 |
POST /api/v1/ceph-targets/activate
Post /api/v1/ceph-targets/activate.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
ip_group | query | no | string | IP 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-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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-targets/activate'
Responses
| 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 |
POST /api/v1/ceph-targets/configs
Post /api/v1/ceph-targets/configs.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
ip_group | query | no | string | IP 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. |
pool_name | query | no | string | ZFS pool name. |
target_name | query | no | string | FC target or backing-volume name, as required by the operation. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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-targets/configs'
Responses
| Status | Meaning |
|---|
| 201 | 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 |
GET /api/v1/ceph-targets/connections
Get /api/v1/ceph-targets/connections.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
target_nqn | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph-targets/connections'
Responses
| 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 |
POST /api/v1/ceph-targets/deactivate
Post /api/v1/ceph-targets/deactivate.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
ip_group | query | no | string | IP 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-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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-targets/deactivate'
Responses
| 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 |
POST /api/v1/ceph-targets/initiators
Post /api/v1/ceph-targets/initiators.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
allowed_initiators | query | no | string | Request parameter. |
ip_group | query | no | string | IP 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. |
pool_name | query | no | string | ZFS pool name. |
target_name | query | no | string | FC target or backing-volume name, as required by the operation. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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-targets/initiators'
Responses
| 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 |
POST /api/v1/ceph-targets/listeners
Post /api/v1/ceph-targets/listeners.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
ip_address | query | no | string (ipv4) | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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-targets/listeners'
Responses
| Status | Meaning |
|---|
| 201 | 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 |
POST /api/v1/ceph-targets/portals/reset
Post /api/v1/ceph-targets/portals/reset.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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-targets/portals/reset'
Responses
| 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 |
POST /api/v1/ceph-targets/ports/activate
Post /api/v1/ceph-targets/ports/activate.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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-targets/ports/activate'
Responses
| 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 |
POST /api/v1/ceph-targets/ports/manage
Post /api/v1/ceph-targets/ports/manage.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
ip_address | query | no | string (ipv4) | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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-targets/ports/manage'
Responses
| 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 |
POST /api/v1/ceph-targets/service/start
Post /api/v1/ceph-targets/service/start.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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-targets/service/start'
Responses
| 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 |
POST /api/v1/ceph-targets/volumes
Post /api/v1/ceph-targets/volumes.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
pool_name | query | no | string | ZFS pool name. |
size | query | no | string | Request parameter. |
target_name | query | no | string | FC target or backing-volume name, as required by the operation. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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-targets/volumes'
Responses
| Status | Meaning |
|---|
| 201 | 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 |
GET /api/v1/ceph/storage
Get /api/v1/ceph/storage.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph/storage'
Responses
| 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 |
DELETE /api/v1/ceph/storage-snapshots
Delete /api/v1/ceph/storage-snapshots.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
pool_name | query | no | string | ZFS pool name. |
resource_name | query | no | string | Request parameter. |
snapshot_name | query | no | string | Request parameter. |
type | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/ceph/storage-snapshots'
Responses
| 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 |
GET /api/v1/ceph/storage-snapshots
Get /api/v1/ceph/storage-snapshots.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
pool_name | query | no | string | ZFS pool name. |
resource_name | query | no | string | Request parameter. |
type | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph/storage-snapshots'
Responses
| 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 |
POST /api/v1/ceph/storage-snapshots
Post /api/v1/ceph/storage-snapshots.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
pool_name | query | no | string | ZFS pool name. |
resource_name | query | no | string | Request parameter. |
retention_days | query | no | integer; minimum 0 | Request parameter. |
type | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/storage-snapshots'
Responses
| Status | Meaning |
|---|
| 201 | 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 |
DELETE /api/v1/ceph/storage-snapshots/expired
Delete /api/v1/ceph/storage-snapshots/expired.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
pool_name | query | no | string | ZFS pool name. |
type | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/ceph/storage-snapshots/expired'
Responses
| 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 |
GET /api/v1/ceph/storage-snapshots/pools-and-volumes
Get /api/v1/ceph/storage-snapshots/pools-and-volumes.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph/storage-snapshots/pools-and-volumes'
Responses
| 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 |
POST /api/v1/ceph/storage-snapshots/rollback
Post /api/v1/ceph/storage-snapshots/rollback.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
pool_name | query | no | string | ZFS pool name. |
resource_name | query | no | string | Request parameter. |
snapshot_name | query | no | string | Request parameter. |
type | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/storage-snapshots/rollback'
Responses
| 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 |
POST /api/v1/ceph/storage-snapshots/schedules
Post /api/v1/ceph/storage-snapshots/schedules.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
max_snapshots | query | no | string | Request parameter. |
resources | query | no | string | Request parameter. |
scheduleType | query | no | string | Request parameter. |
startHour | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/storage-snapshots/schedules'
Responses
| Status | Meaning |
|---|
| 201 | 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 |
GET /api/v1/ceph/storage-snapshots/summary
Get /api/v1/ceph/storage-snapshots/summary.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph/storage-snapshots/summary'
Responses
| 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 |
GET /api/v1/ceph/storage/analyse-pgs
Get /api/v1/ceph/storage/analyse-pgs.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph/storage/analyse-pgs'
Responses
| 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 |
POST /api/v1/ceph/storage/cephfs/attach
Post /api/v1/ceph/storage/cephfs/attach.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
fs_name | query | no | string | Request parameter. |
mountpoint | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/storage/cephfs/attach'
Responses
| 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 |
DELETE /api/v1/ceph/storage/cephfs/detach
Delete /api/v1/ceph/storage/cephfs/detach.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
fs_name | query | no | string | Request parameter. |
mountpoint | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/ceph/storage/cephfs/detach'
Responses
| 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 |
GET /api/v1/ceph/storage/diagnostics
Get /api/v1/ceph/storage/diagnostics.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph/storage/diagnostics'
Responses
| 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 |
GET /api/v1/ceph/storage/ec-calculator
Get /api/v1/ceph/storage/ec-calculator.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
failure_domain | query | no | string | Request parameter. |
usable_size | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph/storage/ec-calculator'
Responses
| 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 |
GET /api/v1/ceph/storage/health-status
Get /api/v1/ceph/storage/health-status.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
format | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph/storage/health-status'
Responses
| 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 |
GET /api/v1/ceph/storage/io-performance
Get /api/v1/ceph/storage/io-performance.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph/storage/io-performance'
Responses
| 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 |
POST /api/v1/ceph/storage/legacy-osds/convert
Post /api/v1/ceph/storage/legacy-osds/convert.
Deprecated: retained for compatibility.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/storage/legacy-osds/convert'
Responses
| 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 |
DELETE /api/v1/ceph/storage/orphan-osd-services
Delete /api/v1/ceph/storage/orphan-osd-services.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/ceph/storage/orphan-osd-services'
Responses
| 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 |
GET /api/v1/ceph/storage/osd-drives
Get /api/v1/ceph/storage/osd-drives.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph/storage/osd-drives'
Responses
| 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 |
DELETE /api/v1/ceph/storage/osd-pool-members
Delete /api/v1/ceph/storage/osd-pool-members.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
node_name | query | no | string | Request parameter. |
osd_number | query | no | string | Request parameter. |
pool_name | query | no | string | ZFS pool name. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/ceph/storage/osd-pool-members'
Responses
| 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 |
POST /api/v1/ceph/storage/osd-pool-members
Post /api/v1/ceph/storage/osd-pool-members.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
pool_name | query | no | string | ZFS pool name. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/storage/osd-pool-members'
Responses
| Status | Meaning |
|---|
| 201 | 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 |
DELETE /api/v1/ceph/storage/osd-pools
Delete /api/v1/ceph/storage/osd-pools.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
pool_name | query | no | string | ZFS pool name. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/ceph/storage/osd-pools'
Responses
| 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 |
POST /api/v1/ceph/storage/osd-pools
Post /api/v1/ceph/storage/osd-pools.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
data_drives | query | no | string | Request parameter. |
ip_address | query | no | string (ipv4) | Request parameter. |
ip_group | query | no | string | IP 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. |
pool_name | query | no | string | ZFS pool name. |
purpose | query | no | string | Storage purpose. Use S3 when creating an eEKAS object-storage drive. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/storage/osd-pools'
Responses
| Status | Meaning |
|---|
| 201 | 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 |
GET /api/v1/ceph/storage/pg-per-pool
Get /api/v1/ceph/storage/pg-per-pool.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph/storage/pg-per-pool'
Responses
| 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 |
GET /api/v1/ceph/storage/pool-status
Get /api/v1/ceph/storage/pool-status.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph/storage/pool-status'
Responses
| 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 |
GET /api/v1/ceph/storage/rbd-drives
Get /api/v1/ceph/storage/rbd-drives.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph/storage/rbd-drives'
Responses
| 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 |
DELETE /api/v1/ceph/storage/rbds
Delete /api/v1/ceph/storage/rbds.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
pool_name | query | no | string | ZFS pool name. |
rbd_name | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/ceph/storage/rbds'
Responses
| 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 |
POST /api/v1/ceph/storage/rbds
Post /api/v1/ceph/storage/rbds.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
Size | query | no | string | Request parameter. |
pool_name | query | no | string | ZFS pool name. |
rbd_name | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/storage/rbds'
Responses
| Status | Meaning |
|---|
| 201 | 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 |
POST /api/v1/ceph/storage/rbds/clone
Post /api/v1/ceph/storage/rbds/clone.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
clone_name | query | no | string | Request parameter. |
new_name | query | no | string | Request parameter. |
pool_name | query | no | string | ZFS pool name. |
rbd_name | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/storage/rbds/clone'
Responses
| Status | Meaning |
|---|
| 201 | 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 |
POST /api/v1/ceph/storage/rbds/map
Post /api/v1/ceph/storage/rbds/map.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/storage/rbds/map'
Responses
| 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 |
POST /api/v1/ceph/storage/repairs
Post /api/v1/ceph/storage/repairs.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
action | query | no | string | Operation-specific action selector. |
confirmed | query | no | string | Request parameter. |
issue_id | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/storage/repairs'
Responses
| 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 |
POST /api/v1/ceph/storage/s3-ingress-config
Post /api/v1/ceph/storage/s3-ingress-config.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
zone_name | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/storage/s3-ingress-config'
Responses
| Status | Meaning |
|---|
| 201 | 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 |
DELETE /api/v1/ceph/storage/s3-zones
Delete /api/v1/ceph/storage/s3-zones.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
zone_name | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/ceph/storage/s3-zones'
Responses
| 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 |
POST /api/v1/ceph/storage/subvolumes/resize
Post /api/v1/ceph/storage/subvolumes/resize.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
pool_name | query | no | string | ZFS pool name. |
size | query | no | string | Request parameter. |
volume_name | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/storage/subvolumes/resize'
Responses
| 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 |
GET /api/v1/ceph/storage/topology-map
Get /api/v1/ceph/storage/topology-map.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
format | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/ceph/storage/topology-map'
Responses
| 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 |
POST /api/v1/ceph/storage/zfs-volumes
Post /api/v1/ceph/storage/zfs-volumes.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
pool_name | query | no | string | ZFS pool name. |
volume_name | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/storage/zfs-volumes'
Responses
| Status | Meaning |
|---|
| 201 | 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 |
Cluster
POST /api/v1/ceph/cluster
bootstrap Ceph on the configured eEKAS cluster and deploy monitor/manager roles to registered nodes.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| Status | Meaning |
|---|
| 201 | 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 |
DELETE /api/v1/cluster-drives
delete a cluster drive.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
drive_name | query | yes | string | Request parameter. |
type | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/cluster-drives/available/all
show available backing devices across all cluster nodes.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
GET /api/v1/cluster-drives/available/local
show locally available cluster drive backing devices.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
drive_name | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional 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
| 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 |
GET /api/v1/cluster-drives/check-shared
identify physically shared drives across cluster nodes.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
GET /api/v1/cluster-drives/fc-targets
list FC cluster targets.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
GET /api/v1/cluster-drives/fc-volumes
list FC cluster volumes.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/cluster-drives/import-volume
import an existing NAS volume into cluster management.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
ip_address | query | yes | string (ipv4) | Request parameter. |
node | query | no | string | Cluster node name. |
protocol | query | no | string; values: http, https, NFS, CIFS, iscsi, nvme | Request parameter. |
volume_path | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| Status | Meaning |
|---|
| 201 | 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 |
POST /api/v1/cluster-drives/ip-address
change the access IP address for a cluster drive.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
current_ip_address | query | yes | string (ipv4) | Request parameter. |
drive_name | query | yes | string | Request parameter. |
new_ip_address | query | yes | string (ipv4) | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/cluster-drives/preferred-node
change the preferred node for a cluster drive.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
drive_name | query | yes | string | Request parameter. |
new_node | query | yes | string | Request parameter. |
shared_data_storage | query | no | boolean | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
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
| Parameter | Location | Required | Type | Description |
|---|
MEDIA | query | yes | string | Request parameter. |
POOLMODE | query | yes | string | Request parameter. |
TOTALSIZEINGB | query | yes | string | Request parameter. |
iSCSI_Only | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional 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
| 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 |
GET /api/v1/cluster-drives/shared-volumes
list shared cluster volumes.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/cluster-drives/shared-volumes
create a shared cluster volume.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
disk_path | query | yes | string | Request parameter. |
drive_name | query | yes | string | Request parameter. |
ip_address | query | yes | string (ipv4) | Request parameter. |
preferred_node | query | no | string | Request parameter. |
purpose | query | yes | string | Storage purpose. Use S3 when creating an eEKAS object-storage drive. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| Status | Meaning |
|---|
| 201 | 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 |
POST /api/v1/cluster/bootstrap
create or resume a three-node eEKAS HA cluster, then initialize node registration for Ceph.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
cluster_name | query | yes | string | Request parameter. |
node1_ip | query | yes | string (ipv4) | Request parameter. |
node1_replication | query | yes | string | Request parameter. |
node2_ip | query | yes | string (ipv4) | Request parameter. |
node2_replication | query | yes | string | Request parameter. |
node3_ip | query | yes | string (ipv4) | Request parameter. |
node3_replication | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | yes | string; maximum length 255 | Prevents duplicate execution when the same mutating request is retried. |
password | JSON body | yes | string | Request 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
| 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 |
| 428 | Idempotency-Key is required |
| 429 | Rate limit exceeded |
| 500 | Backend operation failed |
POST /api/v1/cluster/check-system-files
verify and fix system file permissions/ownership.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/cluster/csync2-config
create or recreate the csync2 cluster file sync configuration.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
recreate | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| Status | Meaning |
|---|
| 201 | 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 |
GET /api/v1/cluster/fencing
Get /api/v1/cluster/fencing.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/cluster/fencing
Post /api/v1/cluster/fencing.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/cluster/file-sync/switch
switch the cluster to cluster file sync mode.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/cluster/heartbeat/global-ocfs2
create the global OCFS2 heartbeat infrastructure.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| Status | Meaning |
|---|
| 201 | 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 |
POST /api/v1/cluster/heartbeat/initialize-ram-device
initialize the heartbeat RAM device.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| Status | Meaning |
|---|
| 201 | 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 |
POST /api/v1/cluster/import-drives
import non-configured cluster drives.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/cluster/import-resources
import non-configured cluster resources.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
DELETE /api/v1/cluster/ip-groups
delete an empty cluster IP group.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
group_name | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/ip-groups?group_name=example-group'
Responses
| 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 |
GET /api/v1/cluster/ip-groups
list cluster IP groups and their current members.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Example
curl \
-X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/cluster/ip-groups'
Responses
| 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 |
POST /api/v1/cluster/ip-groups
create a cluster IP group with an ordered gateway-node failover policy.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
address_mode | query | no | string | Request parameter. |
group_name | query | yes | string | Request parameter. |
ip_address | query | yes | string (ipv4) | Request parameter. |
preferred_node | query | yes | string | Request parameter. |
priority_nodes | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/ip-groups?group_name=example-group&ip_address=192.0.2.10&preferred_node=<preferred_node>'
Responses
| Status | Meaning |
|---|
| 201 | 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 |
POST /api/v1/cluster/ip-groups/clear-move
Post /api/v1/cluster/ip-groups/clear-move.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
group_name | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/ip-groups/clear-move?group_name=example-group'
Responses
| 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 |
POST /api/v1/cluster/ip-groups/edit
edit IP addresses or the ordered gateway-node policy for a cluster IP group.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
address_mode | query | no | string | Request parameter. |
group_name | query | yes | string | Request parameter. |
ip_address | query | no | string (ipv4) | Request parameter. |
preferred_node | query | no | string | Request parameter. |
priority_nodes | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/ip-groups/edit?group_name=example-group'
Responses
| 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 |
POST /api/v1/cluster/ip-groups/move
Post /api/v1/cluster/ip-groups/move.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
group_name | query | yes | string | Request parameter. |
target_node | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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/ip-groups/move?group_name=example-group&target_node=<target_node>'
Responses
| 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 |
DELETE /api/v1/cluster/ipmi-stonith
remove one managed BMC fencing resource and reconcile overall readiness.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
node | query | yes | string | Cluster node name. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/cluster/ipmi-stonith
report BMC fencing coverage or discovered BMC addresses without changing cluster configuration.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
view | query | no | string | Optional alternate representation, such as discovered BMC data. |
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/cluster/ipmi-stonith
create, update, or adopt BMC fencing resources for HA cluster nodes.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
bmc_admin_user | query | no | string | Request parameter. |
create_stonith | query | no | string | Request parameter. |
enable_stonith | query | no | string | Request parameter. |
ipmi_channel | query | no | string | Request parameter. |
ipmi_channels | query | no | string | Request parameter. |
ipmi_ip | query | yes | string (ipv4) | Request parameter. |
ipmi_map | query | no | string | Request parameter. |
ipmi_user_id | query | no | string | Request parameter. |
node | query | no | string | Cluster node name. |
provision_bmc_user | query | no | string | Request parameter. |
stonith_user | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents duplicate execution when the same mutating request is retried. |
bmc_admin_pass | JSON body | no | string | Request parameter. |
stonith_pass | JSON body | no | string | Request 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
| 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 |
POST /api/v1/cluster/join/add-node
add a new node to an existing cluster.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
heartbeat_ip | query | yes | string (ipv4) | Request parameter. |
node_ip | query | yes | string (ipv4) | Request parameter. |
replication_ip | query | yes | string (ipv4) | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | yes | string; maximum length 255 | Prevents duplicate execution when the same mutating request is retried. |
password | JSON body | yes | string | Request 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
| Status | Meaning |
|---|
| 201 | 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 |
| 428 | Idempotency-Key is required |
| 429 | Rate limit exceeded |
| 500 | Backend operation failed |
POST /api/v1/cluster/join/dual
join a node into a dual-node cluster.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
my_heartbeat | query | yes | string | Request parameter. |
my_replication | query | yes | string | Request parameter. |
remote_heartbeat | query | yes | string | Request parameter. |
remote_replication | query | yes | string | Request parameter. |
use_folder | query | no | boolean | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | yes | string; maximum length 255 | Prevents duplicate execution when the same mutating request is retried. |
password | JSON body | yes | string | Request 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
| Status | Meaning |
|---|
| 201 | 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 |
| 428 | Idempotency-Key is required |
| 429 | Rate limit exceeded |
| 500 | Backend operation failed |
GET /api/v1/cluster/join/info
inspect a remote node and collect cluster join information.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
ip_address | query | yes | string (ipv4) | Request parameter. |
user_name | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
password | JSON body | yes | string | Request 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
| 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 |
POST /api/v1/cluster/join/multi
join a node into a multi-node cluster.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
my_heartbeat | query | yes | string | Request parameter. |
my_replication | query | yes | string | Request parameter. |
remote_heartbeat | query | yes | string | Request parameter. |
remote_replication | query | yes | string | Request parameter. |
use_folder | query | no | boolean | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | yes | string; maximum length 255 | Prevents duplicate execution when the same mutating request is retried. |
password | JSON body | yes | string | Request 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
| Status | Meaning |
|---|
| 201 | 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 |
| 428 | Idempotency-Key is required |
| 429 | Rate limit exceeded |
| 500 | Backend operation failed |
GET /api/v1/cluster/maintenance
Get /api/v1/cluster/maintenance.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/cluster/maintenance
Post /api/v1/cluster/maintenance.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
confirm | query | no | string | Request parameter. |
node | query | no | string | Cluster node name. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/cluster/monitor
Get /api/v1/cluster/monitor.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/cluster/name
change the cluster base name.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
newname | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/cluster/non-configured-resources
scan for resources present on the nodes but missing in cluster configuration.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
GET /api/v1/cluster/ping-ips
ping configured cluster IPs locally or across nodes.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
local_only | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/cluster/push-system-files
push this node's system files to the other nodes.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/cluster/ra-monitor-timeouts
reconfigure resource-agent monitor intervals/timeouts.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
DELETE /api/v1/cluster/resources
delete a cluster resource.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
lun_number | query | no | integer; minimum 0 | Request parameter. |
resource_name | query | yes | string | Request parameter. |
resource_type | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/cluster/resources
list cluster resources relevant to storage/share targets.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
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
| Parameter | Location | Required | Type | Description |
|---|
resource_name | query | yes | string | Request parameter. |
wait_seconds | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/cluster/resources/move
return the resource's current node and whether a temporary Pacemaker move constraint is active.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
resource_name | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/cluster/resources/move
move a Pacemaker resource to a configured cluster node and wait for placement to complete.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
node_name | query | yes | string | Request parameter. |
resource_name | query | yes | string | Request parameter. |
run_async | query | no | string | Request parameter. |
wait_seconds | query | no | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/cluster/resources/rename
rename a cluster resource.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
current_name | query | yes | string | Request parameter. |
new_name | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/cluster/resources/resize
resize a cluster resource.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
lun_number | query | no | integer; minimum 0 | Request parameter. |
new_size | query | yes | string | Request parameter. |
resource_name | query | yes | string | Request parameter. |
resource_type | query | yes | string | Request parameter. |
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
POST /api/v1/cluster/resources/upgrade
upgrade legacy cluster resource ordering/constraint syntax.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
GET /api/v1/cluster/status
return cluster and CEPH/node status information.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional 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
| 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 |
POST /api/v1/cluster/sync-system-files
synchronize system files from the newest node.
Parameters
| Parameter | Location | Required | Type | Description |
|---|
X-Correlation-ID | header | no | string | Optional request identifier. The server generates one when omitted. |
Idempotency-Key | header | no | string; maximum length 255 | Prevents 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
| 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 |
Object Storage
See the companion Customers and Billing API Guide for calculation rules, response fields, polling and complete examples.
GET /api/v1/object-storage/billing
Return per-customer JSON billing rows for inclusive UTC dates, with sampled storage peak, traffic amounts and coverage warnings. One selected range uses one storage peak and minimum charge. GB means 1073741824 bytes; monetary components round to three decimals.
| Parameter |
Location |
Required |
Type |
Description |
customer_id |
query |
no |
string |
Backend parameter customer_id. |
period_end |
query |
yes |
string (date) |
Backend parameter period_end. |
period_start |
query |
yes |
string (date) |
Backend parameter period_start. |
uid |
query |
no |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/billing?period_end=<PERIOD_END>&period_start=<PERIOD_START>'
Responses:
| 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 |
GET /api/v1/object-storage/billing/users
Return billing aggregated by S3 UID and site, with summary, filename and embedded CSV. Inclusive UTC dates are required. Traffic counters can be null when unavailable.
| Parameter |
Location |
Required |
Type |
Description |
period_end |
query |
yes |
string (date) |
Backend parameter period_end. |
period_start |
query |
yes |
string (date) |
Backend parameter period_start. |
uid |
query |
no |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/billing/users?period_end=<PERIOD_END>&period_start=<PERIOD_START>'
Responses:
| 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 |
DELETE /api/v1/object-storage/buckets
Handler: handle_object_storage_buckets_delete in object_storage_management.sh. Backend: radosgw-admin bucket rm
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
bypass_gc |
query |
no |
string |
Backend parameter bypass_gc. |
purge_objects |
query |
no |
string |
Backend parameter purge_objects. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X DELETE \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/buckets?bucket=<BUCKET>'
Responses:
| 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 |
GET /api/v1/object-storage/buckets
Handler: handle_object_storage_buckets_get in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
no |
string |
Backend parameter bucket. |
stats |
query |
no |
string |
Backend parameter stats. |
uid |
query |
no |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/buckets'
Responses:
| 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 |
POST /api/v1/object-storage/buckets
Handler: handle_object_storage_buckets_post in object_storage_management.sh. Backend: eucli_ceph_s3_bucket_management create_bucket
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/buckets?bucket=<BUCKET>&uid=<UID>'
Responses:
| Status |
Meaning |
| 201 |
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 |
DELETE /api/v1/object-storage/buckets/cors
Handler: handle_object_storage_bucket_cors_delete in object_storage_management.sh. Backend: eucli_ceph_s3_bucket_management delete_bucket_cors
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X DELETE \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/buckets/cors?bucket=<BUCKET>&uid=<UID>'
Responses:
| 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 |
GET /api/v1/object-storage/buckets/cors
Handler: handle_object_storage_bucket_cors_get in object_storage_management.sh. Backend: eucli_ceph_s3_bucket_management get_bucket_cors
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/buckets/cors?bucket=<BUCKET>&uid=<UID>'
Responses:
| 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 |
POST /api/v1/object-storage/buckets/cors
Handler: handle_object_storage_bucket_cors_post in object_storage_management.sh. Backend: eucli_ceph_s3_bucket_management set_bucket_cors
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
cors_b64 |
query |
yes |
string |
Backend parameter cors_b64. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/buckets/cors?bucket=<BUCKET>&cors_b64=<CORS_B64>&uid=<UID>'
Responses:
| 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 |
DELETE /api/v1/object-storage/buckets/lifecycle
Handler: handle_object_storage_bucket_lifecycle_delete in object_storage_management.sh. Backend: eucli_ceph_s3_bucket_management delete_bucket_lifecycle
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X DELETE \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/buckets/lifecycle?bucket=<BUCKET>&uid=<UID>'
Responses:
| 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 |
GET /api/v1/object-storage/buckets/lifecycle
Handler: handle_object_storage_bucket_lifecycle_get in object_storage_management.sh. Backend: eucli_ceph_s3_bucket_management get_bucket_lifecycle
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/buckets/lifecycle?bucket=<BUCKET>&uid=<UID>'
Responses:
| 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 |
POST /api/v1/object-storage/buckets/lifecycle
Handler: handle_object_storage_bucket_lifecycle_post in object_storage_management.sh. Backend: eucli_ceph_s3_bucket_management set_bucket_lifecycle
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
lifecycle_b64 |
query |
yes |
string |
Backend parameter lifecycle_b64. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/buckets/lifecycle?bucket=<BUCKET>&lifecycle_b64=<LIFECYCLE_B64>&uid=<UID>'
Responses:
| 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 |
DELETE /api/v1/object-storage/buckets/notification
Handler: handle_object_storage_bucket_notification_delete in object_storage_management.sh. Backend: eucli_ceph_s3_bucket_management delete_bucket_notification
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X DELETE \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/buckets/notification?bucket=<BUCKET>&uid=<UID>'
Responses:
| 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 |
GET /api/v1/object-storage/buckets/notification
Handler: handle_object_storage_bucket_notification_get in object_storage_management.sh. Backend: eucli_ceph_s3_bucket_management get_bucket_notification
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/buckets/notification?bucket=<BUCKET>&uid=<UID>'
Responses:
| 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 |
POST /api/v1/object-storage/buckets/notification
Handler: handle_object_storage_bucket_notification_post in object_storage_management.sh. Backend: eucli_ceph_s3_bucket_management set_bucket_notification
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
notification_b64 |
query |
yes |
string |
Backend parameter notification_b64. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/buckets/notification?bucket=<BUCKET>¬ification_b64=<NOTIFICATION_B64>&uid=<UID>'
Responses:
| 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 |
DELETE /api/v1/object-storage/buckets/policy
Handler: handle_object_storage_bucket_policy_delete in object_storage_management.sh. Backend: eucli_ceph_s3_bucket_management delete_bucket_policy
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X DELETE \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/buckets/policy?bucket=<BUCKET>&uid=<UID>'
Responses:
| 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 |
GET /api/v1/object-storage/buckets/policy
Handler: handle_object_storage_bucket_policy_get in object_storage_management.sh. Backend: eucli_ceph_s3_bucket_management get_bucket_policy
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/buckets/policy?bucket=<BUCKET>&uid=<UID>'
Responses:
| 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 |
POST /api/v1/object-storage/buckets/policy
Handler: handle_object_storage_bucket_policy_post in object_storage_management.sh. Backend: eucli_ceph_s3_bucket_management set_bucket_policy
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
policy_b64 |
query |
yes |
string |
Backend parameter policy_b64. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/buckets/policy?bucket=<BUCKET>&policy_b64=<POLICY_B64>&uid=<UID>'
Responses:
| 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 |
DELETE /api/v1/object-storage/customers
Remove customer registration; purge_data=true also purges its S3 data and user. Recreated customer IDs do not inherit prior storage usage.
| Parameter |
Location |
Required |
Type |
Description |
customer_id |
query |
yes |
string |
Backend parameter customer_id. |
purge_data |
query |
no |
boolean |
Backend parameter purge_data. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X DELETE \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/customers?customer_id=<CUSTOMER_ID>'
Responses:
| 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 |
GET /api/v1/object-storage/customers
List customers, current sampled storage and traffic. Optional period_start and period_end must be supplied together; period amounts use sampled storage peaks plus traffic charges.
| Parameter |
Location |
Required |
Type |
Description |
period_end |
query |
no |
string (date) |
Backend parameter period_end. |
period_start |
query |
no |
string (date) |
Backend parameter period_start. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/customers'
Responses:
| 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 |
PATCH /api/v1/object-storage/customers
Edit customer metadata, enforced Ceph bucket quota and storage/traffic prices. Omitted values remain unchanged. Current prices and billing status recalculate selected historical periods. suspended is billable and does not suspend S3 access.
| Parameter |
Location |
Required |
Type |
Description |
billing_status |
query |
no |
string; values: active, suspended, trial, cancelled, do_not_bill |
Backend parameter billing_status. |
charge_downloads |
query |
no |
boolean |
Backend parameter charge_downloads. |
charge_uploads |
query |
no |
boolean |
Backend parameter charge_uploads. |
currency |
query |
no |
string |
Backend parameter currency. |
customer_id |
query |
yes |
string |
Backend parameter customer_id. |
customer_name |
query |
no |
string |
Backend parameter customer_name. |
customer_number |
query |
no |
string |
Backend parameter customer_number. |
download_price_per_gb |
query |
no |
number; minimum 0 |
Backend parameter download_price_per_gb. |
email |
query |
no |
string (email) |
Backend parameter email. |
minimum_charge |
query |
no |
number; minimum 0 |
Backend parameter minimum_charge. |
price_per_gb |
query |
no |
number; minimum 0 |
Backend parameter price_per_gb. |
quota_gb |
query |
no |
integer; minimum 1 |
Backend parameter quota_gb. |
service_type |
query |
no |
string |
Backend parameter service_type. |
upload_price_per_gb |
query |
no |
number; minimum 0 |
Backend parameter upload_price_per_gb. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X PATCH \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/customers?customer_id=<CUSTOMER_ID>'
Responses:
| 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 |
POST /api/v1/object-storage/customers
Provision a customer, S3 user, bucket, quota and billing settings. Secret key is returned once. Traffic charging is supported for Ceph only; uploads default off, downloads default on, traffic prices default zero.
| Parameter |
Location |
Required |
Type |
Description |
billing_status |
query |
no |
string; values: active, suspended, trial, cancelled, do_not_bill |
Backend parameter billing_status. |
bucket |
query |
no |
string |
Backend parameter bucket. |
charge_downloads |
query |
no |
boolean |
Backend parameter charge_downloads. |
charge_uploads |
query |
no |
boolean |
Backend parameter charge_uploads. |
currency |
query |
no |
string |
Backend parameter currency. |
customer_id |
query |
yes |
string |
Backend parameter customer_id. |
customer_name |
query |
yes |
string |
Backend parameter customer_name. |
customer_number |
query |
no |
string |
Backend parameter customer_number. |
download_price_per_gb |
query |
no |
number; minimum 0 |
Backend parameter download_price_per_gb. |
email |
query |
no |
string (email) |
Backend parameter email. |
minimum_charge |
query |
no |
number; minimum 0 |
Backend parameter minimum_charge. |
price_per_gb |
query |
no |
number; minimum 0 |
Backend parameter price_per_gb. |
quota_gb |
query |
yes |
integer; minimum 1 |
Backend parameter quota_gb. |
service_type |
query |
no |
string |
Backend parameter service_type. |
site |
query |
no |
string |
Backend parameter site. |
upload_price_per_gb |
query |
no |
number; minimum 0 |
Backend parameter upload_price_per_gb. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/customers?customer_id=<CUSTOMER_ID>&customer_name=<CUSTOMER_NAME>"a_gb=<QUOTA_GB>'
Responses:
| Status |
Meaning |
| 201 |
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 |
POST /api/v1/object-storage/customers/usage
Capture storage usage snapshots and collect traffic. Inspect error_count, errors and traffic_error even when HTTP status is 200. The five-minute traffic timer does not capture storage snapshots.
| Parameter |
Location |
Required |
Type |
Description |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/customers/usage'
Responses:
| 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 |
GET /api/v1/object-storage/daemons
Handler: handle_object_storage_daemons_get in object_storage_management.sh. Backend: ceph orch ps --format json
| Parameter |
Location |
Required |
Type |
Description |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/daemons'
Responses:
| 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 |
GET /api/v1/object-storage/health
Handler: handle_object_storage_health_get in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/health'
Responses:
| 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 |
GET /api/v1/object-storage/quotas
Handler: handle_object_storage_quotas_get in object_storage_management.sh. Backend: radosgw-admin quota get
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
quota_scope |
query |
no |
string |
Backend parameter quota_scope. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/quotas?bucket=<BUCKET>&uid=<UID>'
Responses:
| 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 |
POST /api/v1/object-storage/quotas
Handler: handle_object_storage_quotas_post in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
bucket |
query |
yes |
string |
Backend parameter bucket. |
enabled |
query |
no |
boolean |
Backend parameter enabled. |
max_objects |
query |
no |
integer; minimum 0 |
Backend parameter max_objects. |
max_size |
query |
no |
string |
Backend parameter max_size. |
quota_scope |
query |
no |
string |
Backend parameter quota_scope. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/quotas?bucket=<BUCKET>&uid=<UID>'
Responses:
| 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 |
GET /api/v1/object-storage/realms
Handler: handle_object_storage_realms_get in object_storage_management.sh. Backend: radosgw-admin realm list --format json
| Parameter |
Location |
Required |
Type |
Description |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/realms'
Responses:
| 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 |
GET /api/v1/object-storage/replication
Handler: handle_object_storage_replication_get in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
limit |
query |
no |
string |
Backend parameter limit. |
marker |
query |
no |
string |
Backend parameter marker. |
query |
query |
no |
string |
Backend parameter query. |
relationship_id |
query |
no |
string |
Backend parameter relationship_id. |
view |
query |
no |
string; values: invitations, audit, buckets, backfill, destinations |
Backend parameter view. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/replication'
Responses:
| 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 |
POST /api/v1/object-storage/replication
Handler: handle_object_storage_replication_post in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
ack_conflicts |
query |
no |
string |
Backend parameter ack_conflicts. |
ack_data_loss |
query |
no |
string |
Backend parameter ack_data_loss. |
ack_delete_data |
query |
no |
string |
Backend parameter ack_delete_data. |
ack_scope |
query |
no |
string |
Backend parameter ack_scope. |
action |
query |
yes |
string; values: activate_credentials, adopt_credentials, cancel_backfill, compliance_report, decommission_local, dr_test, enable, finalize_credentials, orchestrate_recovery, pause, pause_backfill, promote, purge_invitations, recover_gateway, recovery_validate, refresh_topology, remove_site, resume, resume_backfill, revoke_invitation, rotate_credentials, run_archive, set_advanced_policy, set_mode, set_policy, start_backfill |
Backend parameter action. |
alert_on_failure |
query |
no |
string |
Backend parameter alert_on_failure. |
alert_on_lag |
query |
no |
string |
Backend parameter alert_on_lag. |
allow_untrusted |
query |
no |
string |
Backend parameter allow_untrusted. |
archive_id |
query |
no |
string |
Backend parameter archive_id. |
bucket_scope |
query |
no |
string |
Backend parameter bucket_scope. |
buckets |
query |
no |
string |
Backend parameter buckets. |
config_b64 |
query |
no |
string |
Backend parameter config_b64. |
confirm |
query |
no |
string |
Backend parameter confirm. |
delete_data |
query |
no |
string |
Backend parameter delete_data. |
force |
query |
no |
string |
Backend parameter force. |
included_buckets |
query |
no |
string |
Backend parameter included_buckets. |
instance |
query |
no |
string |
Backend parameter instance. |
invitation_id |
query |
no |
string |
Backend parameter invitation_id. |
job_id |
query |
no |
string |
Backend parameter job_id. |
mode |
query |
no |
string |
Backend parameter mode. |
primary_endpoint |
query |
no |
string |
Backend parameter primary_endpoint. |
primary_fenced |
query |
no |
string |
Backend parameter primary_fenced. |
relationship_id |
query |
yes |
string |
Backend parameter relationship_id. |
rpo_seconds |
query |
no |
string |
Backend parameter rpo_seconds. |
site_name |
query |
no |
string |
Backend parameter site_name. |
sync_window |
query |
no |
string |
Backend parameter sync_window. |
transfer_profile |
query |
no |
string |
Backend parameter transfer_profile. |
zone |
query |
no |
string |
Backend parameter zone. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/replication?action=<ACTION>&relationship_id=<RELATIONSHIP_ID>'
Responses:
| Status |
Meaning |
| 200 |
Successful response |
| 201 |
Successful response |
| 202 |
Asynchronous operation accepted |
| 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 |
JSON request body (credentials must stay in the body):
| Field |
Required |
Type |
Description |
archive_secret_b64 |
no |
string |
Sensitive backend parameter archive_secret_b64; never send it in the URL. |
global_webhook_url_b64 |
no |
string |
Sensitive backend parameter global_webhook_url_b64; never send it in the URL. |
webhook_url_b64 |
no |
string |
Sensitive backend parameter webhook_url_b64; never send it in the URL. |
ack_conflicts |
no |
boolean |
|
ack_data_loss |
no |
boolean |
|
ack_delete_data |
no |
boolean |
|
ack_scope |
no |
boolean |
|
action |
no |
string |
Allowed values: activate_credentials, adopt_credentials, cancel_backfill, compliance_report, decommission_local, dr_test, enable, finalize_credentials, orchestrate_recovery, pause, pause_backfill, promote, purge_invitations, recover_gateway, recovery_validate, refresh_topology, remove_site, resume, resume_backfill, revoke_invitation, rotate_credentials, run_archive, set_advanced_policy, set_mode, set_policy, start_backfill |
alert_on_failure |
no |
boolean |
|
alert_on_lag |
no |
boolean |
|
allow_untrusted |
no |
boolean |
|
archive_id |
no |
string |
|
bucket_scope |
no |
string |
|
buckets |
no |
structured |
|
config_b64 |
no |
string |
|
confirm |
no |
string |
|
delete_data |
no |
boolean |
|
force |
no |
boolean |
|
included_buckets |
no |
structured |
|
instance |
no |
string |
|
invitation_id |
no |
string |
|
job_id |
no |
string |
|
mode |
no |
string |
|
primary_endpoint |
no |
string |
|
primary_fenced |
no |
boolean |
|
relationship_id |
no |
string |
|
rpo_seconds |
no |
integer |
|
site_name |
no |
string |
|
sync_window |
no |
string |
|
transfer_profile |
no |
string |
|
zone |
no |
string |
|
POST /api/v1/object-storage/replication/invitations
Handler: handle_object_storage_replication_invitations_post in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
management_url |
query |
yes |
string |
Backend parameter management_url. |
method |
query |
yes |
string |
Backend parameter method. |
output_file |
query |
no |
string |
Backend parameter output_file. |
relationship_id |
query |
yes |
string |
Backend parameter relationship_id. |
ttl |
query |
no |
string |
Backend parameter ttl. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/replication/invitations?management_url=<MANAGEMENT_URL>&method=<METHOD>&relationship_id=<RELATIONSHIP_ID>'
Responses:
| Status |
Meaning |
| 201 |
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 |
JSON request body (credentials must stay in the body):
| Field |
Required |
Type |
Description |
passphrase |
no |
string |
Sensitive backend parameter passphrase; never send it in the URL. |
management_url |
no |
string |
|
method |
no |
string |
|
output_file |
no |
string |
|
relationship_id |
no |
string |
|
ttl |
no |
string |
|
POST /api/v1/object-storage/replication/invitations/redeem
Handler: handle_object_storage_replication_invitation_redeem_post in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/replication/invitations/redeem'
Responses:
| 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 |
JSON request body (credentials must stay in the body):
| Field |
Required |
Type |
Description |
token |
yes |
string |
Sensitive backend parameter token; never send it in the URL. |
POST /api/v1/object-storage/replication/join
Handler: handle_object_storage_replication_join_post in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
ack_conflicts |
query |
no |
string |
Backend parameter ack_conflicts. |
allow_untrusted |
query |
no |
string |
Backend parameter allow_untrusted. |
ca_file |
query |
no |
string |
Backend parameter ca_file. |
ca_pem |
query |
no |
string |
Backend parameter ca_pem. |
data_pool |
query |
no |
string |
Backend parameter data_pool. |
endpoint |
query |
no |
string |
Backend parameter endpoint. |
index_pool |
query |
no |
string |
Backend parameter index_pool. |
input_file |
query |
no |
string |
Backend parameter input_file. |
management_url |
query |
no |
string |
Backend parameter management_url. |
mode |
query |
no |
string |
Backend parameter mode. |
service_instance |
query |
no |
string |
Backend parameter service_instance. |
site_name |
query |
yes |
string |
Backend parameter site_name. |
validate_only |
query |
no |
string |
Backend parameter validate_only. |
zone |
query |
no |
string |
Backend parameter zone. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/replication/join?site_name=<SITE_NAME>'
Responses:
| 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 |
JSON request body (credentials must stay in the body):
| Field |
Required |
Type |
Description |
invitation_b64 |
no |
string |
Sensitive backend parameter invitation_b64; never send it in the URL. |
passphrase |
no |
string |
Sensitive backend parameter passphrase; never send it in the URL. |
token |
no |
string |
Sensitive backend parameter token; never send it in the URL. |
ack_conflicts |
no |
boolean |
|
allow_untrusted |
no |
boolean |
|
ca_file |
no |
string |
|
ca_pem |
no |
string |
|
data_pool |
no |
string |
|
endpoint |
no |
string |
|
index_pool |
no |
string |
|
input_file |
no |
string |
|
management_url |
no |
string |
|
mode |
no |
string |
|
service_instance |
no |
string |
|
site_name |
no |
string |
|
validate_only |
no |
boolean |
|
zone |
no |
string |
|
GET /api/v1/object-storage/services
Handler: handle_object_storage_services_get in object_storage_management.sh. Backend: ceph orch ls --format json
| Parameter |
Location |
Required |
Type |
Description |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/services'
Responses:
| 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 |
GET /api/v1/object-storage/usage
Handler: handle_object_storage_usage_get in object_storage_management.sh. Backend: radosgw-admin usage show --format json
| Parameter |
Location |
Required |
Type |
Description |
end |
query |
no |
string (date) |
Backend parameter end. |
show_entries |
query |
no |
boolean |
Backend parameter show_entries. |
start |
query |
no |
string (date) |
Backend parameter start. |
uid |
query |
no |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/usage'
Responses:
| 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 |
DELETE /api/v1/object-storage/users
Handler: handle_object_storage_users_delete in object_storage_management.sh. Backend: radosgw-admin user rm
| Parameter |
Location |
Required |
Type |
Description |
purge_data |
query |
no |
boolean |
Backend parameter purge_data. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X DELETE \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/users?uid=<UID>'
Responses:
| 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 |
GET /api/v1/object-storage/users
Handler: handle_object_storage_users_get in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
uid |
query |
no |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/users'
Responses:
| 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 |
POST /api/v1/object-storage/users
Handler: handle_object_storage_users_post in object_storage_management.sh. Backend: radosgw-admin user create
| Parameter |
Location |
Required |
Type |
Description |
display_name |
query |
yes |
string |
Backend parameter display_name. |
email |
query |
no |
string (email) |
Backend parameter email. |
max_buckets |
query |
no |
string |
Backend parameter max_buckets. |
system |
query |
no |
string |
Backend parameter system. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/users?display_name=<DISPLAY_NAME>&uid=<UID>'
Responses:
| Status |
Meaning |
| 201 |
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 |
JSON request body (credentials must stay in the body):
| Field |
Required |
Type |
Description |
access_key |
no |
string |
Sensitive backend parameter access_key; never send it in the URL. |
secret_key |
no |
string |
Sensitive backend parameter secret_key; never send it in the URL. |
DELETE /api/v1/object-storage/users/caps
Handler: handle_object_storage_user_caps_delete in object_storage_management.sh. Backend: radosgw-admin caps rm
| Parameter |
Location |
Required |
Type |
Description |
caps |
query |
yes |
string |
Backend parameter caps. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X DELETE \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/users/caps?caps=<CAPS>&uid=<UID>'
Responses:
| 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 |
GET /api/v1/object-storage/users/caps
Handler: handle_object_storage_user_caps_get in object_storage_management.sh. Backend: radosgw-admin user info --uid=<uid> --format json
| Parameter |
Location |
Required |
Type |
Description |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/users/caps?uid=<UID>'
Responses:
| 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 |
POST /api/v1/object-storage/users/caps
Handler: handle_object_storage_user_caps_post in object_storage_management.sh. Backend: radosgw-admin caps add
| Parameter |
Location |
Required |
Type |
Description |
caps |
query |
yes |
string |
Backend parameter caps. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/users/caps?caps=<CAPS>&uid=<UID>'
Responses:
| 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 |
DELETE /api/v1/object-storage/users/keys
Handler: handle_object_storage_user_keys_delete in object_storage_management.sh. Backend: radosgw-admin key rm
| Parameter |
Location |
Required |
Type |
Description |
key_type |
query |
no |
string |
Backend parameter key_type. |
subuser |
query |
no |
string |
Backend parameter subuser. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X DELETE \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/users/keys?uid=<UID>'
Responses:
| 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 |
JSON request body (credentials must stay in the body):
| Field |
Required |
Type |
Description |
access_key |
yes |
string |
Sensitive backend parameter access_key; never send it in the URL. |
POST /api/v1/object-storage/users/keys
Handler: handle_object_storage_user_keys_post in object_storage_management.sh. Backend: radosgw-admin key create
| Parameter |
Location |
Required |
Type |
Description |
generate_key |
query |
no |
boolean |
Backend parameter generate_key. |
key_type |
query |
no |
string |
Backend parameter key_type. |
subuser |
query |
no |
string |
Backend parameter subuser. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/users/keys?uid=<UID>'
Responses:
| Status |
Meaning |
| 201 |
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 |
JSON request body (credentials must stay in the body):
| Field |
Required |
Type |
Description |
access_key |
no |
string |
Sensitive backend parameter access_key; never send it in the URL. |
secret_key |
no |
string |
Sensitive backend parameter secret_key; never send it in the URL. |
DELETE /api/v1/object-storage/users/policies
Handler: handle_object_storage_user_policies_delete in object_storage_management.sh. Backend: radosgw-admin user policy detach
| Parameter |
Location |
Required |
Type |
Description |
policy_arn |
query |
yes |
string |
Backend parameter policy_arn. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X DELETE \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/users/policies?policy_arn=<POLICY_ARN>&uid=<UID>'
Responses:
| 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 |
GET /api/v1/object-storage/users/policies
Handler: handle_object_storage_user_policies_get in object_storage_management.sh. Backend: radosgw-admin user policy list attached
| Parameter |
Location |
Required |
Type |
Description |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/users/policies?uid=<UID>'
Responses:
| 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 |
POST /api/v1/object-storage/users/policies
Handler: handle_object_storage_user_policies_post in object_storage_management.sh. Backend: radosgw-admin user policy attach
| Parameter |
Location |
Required |
Type |
Description |
policy_arn |
query |
yes |
string |
Backend parameter policy_arn. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/users/policies?policy_arn=<POLICY_ARN>&uid=<UID>'
Responses:
| 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 |
DELETE /api/v1/object-storage/users/subusers
Handler: handle_object_storage_subusers_delete in object_storage_management.sh. Backend: radosgw-admin subuser rm
| Parameter |
Location |
Required |
Type |
Description |
purge_keys |
query |
no |
boolean |
Backend parameter purge_keys. |
subuser |
query |
yes |
string |
Backend parameter subuser. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X DELETE \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/users/subusers?subuser=<SUBUSER>&uid=<UID>'
Responses:
| 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 |
GET /api/v1/object-storage/users/subusers
Handler: handle_object_storage_subusers_get in object_storage_management.sh. Backend: radosgw-admin user info --uid=<uid> --format json
| Parameter |
Location |
Required |
Type |
Description |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/users/subusers?uid=<UID>'
Responses:
| 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 |
POST /api/v1/object-storage/users/subusers
Handler: handle_object_storage_subusers_post in object_storage_management.sh. Backend: radosgw-admin subuser create
| Parameter |
Location |
Required |
Type |
Description |
access |
query |
no |
string |
Backend parameter access. |
generate_secret |
query |
no |
boolean |
Backend parameter generate_secret. |
key_type |
query |
no |
string |
Backend parameter key_type. |
subuser |
query |
yes |
string |
Backend parameter subuser. |
uid |
query |
yes |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/users/subusers?subuser=<SUBUSER>&uid=<UID>'
Responses:
| Status |
Meaning |
| 201 |
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 |
JSON request body (credentials must stay in the body):
| Field |
Required |
Type |
Description |
secret_key |
no |
string |
Sensitive backend parameter secret_key; never send it in the URL. |
GET /api/v1/object-storage/zonegroups
Handler: handle_object_storage_zonegroups_get in object_storage_management.sh. Backend: radosgw-admin zonegroup list --format json
| Parameter |
Location |
Required |
Type |
Description |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/zonegroups'
Responses:
| 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 |
GET /api/v1/object-storage/zones
Handler: handle_object_storage_zones_get in object_storage_management.sh. Backend: radosgw-admin zone list --format json
| Parameter |
Location |
Required |
Type |
Description |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/zones'
Responses:
| 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 |
GET /api/v1/object-storage/billing/export
Return billing rows plus filename and CSV text in a JSON envelope. Optional customer_id and uid filters apply. Preserve approved exports because current pricing recalculates reports.
| Parameter |
Location |
Required |
Type |
Description |
customer_id |
query |
no |
string |
Backend parameter customer_id. |
period_end |
query |
yes |
string (date) |
Backend parameter period_end. |
period_start |
query |
yes |
string (date) |
Backend parameter period_start. |
uid |
query |
no |
string |
Backend parameter uid. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/billing/export?period_end=<PERIOD_END>&period_start=<PERIOD_START>'
Responses:
| 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 |
GET /api/v1/object-storage/traffic
Read tracking phase, activation boundary, last collection, message and warnings for all sites or one site. Ceph S3 only.
| Parameter |
Location |
Required |
Type |
Description |
site |
query |
no |
string |
Backend parameter site. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/traffic'
Responses:
| 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 |
POST /api/v1/object-storage/traffic
Queue traffic tracking activation for one required site. Poll GET on this endpoint until active or failed. Activation configures RGW usage logging and may restart gateway services. Accounting starts at the next full UTC hour. Usage logs are protected while tracking is enabled; disabling or clearing is intentionally unsupported.
| Parameter |
Location |
Required |
Type |
Description |
site |
query |
yes |
string |
Backend parameter site. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/traffic?site=<SITE>'
Responses:
| Status |
Meaning |
| 202 |
Activation queued; poll tracking status |
| 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 |
POST /api/v1/object-storage/traffic/collect
Collect Ceph request/response traffic for all sites or one optional site. Uses the shared distributed lease and hourly ledger; retries do not duplicate bytes. Recent hours are provisional and historical backfill is bounded per run.
| Parameter |
Location |
Required |
Type |
Description |
site |
query |
no |
string |
Backend parameter site. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/traffic/collect'
Responses:
| 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 |
GET /api/v1/object-storage/access-logs
Handler: handle_object_storage_access_logs_get in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
site |
query |
no |
string |
Backend parameter site. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/access-logs'
Responses:
| 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 |
POST /api/v1/object-storage/access-logs
Handler: handle_object_storage_access_logs_post in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
level |
query |
no |
string |
Backend parameter level. |
retention_days |
query |
no |
integer; minimum 0 |
Backend parameter retention_days. |
site |
query |
no |
string |
Backend parameter site. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/access-logs'
Responses:
| 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 |
POST /api/v1/object-storage/access-logs/clear
Handler: handle_object_storage_access_logs_clear_post in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
confirm |
query |
no |
string |
Backend parameter confirm. |
site |
query |
no |
string |
Backend parameter site. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/access-logs/clear'
Responses:
| 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 |
GET /api/v1/object-storage/access-logs/export
Handler: handle_object_storage_access_logs_export_get in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
days |
query |
no |
string |
Backend parameter days. |
site |
query |
no |
string |
Backend parameter site. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/access-logs/export'
Responses:
| 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 |
GET /api/v1/object-storage/billing/federation
Handler: handle_object_storage_federation_get in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/billing/federation'
Responses:
| 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 |
POST /api/v1/object-storage/billing/federation
Handler: handle_object_storage_federation_post in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/billing/federation'
Responses:
| 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 |
JSON request body (credentials must stay in the body):
| Field |
Required |
Type |
Description |
request |
yes |
object |
|
POST /api/v1/object-storage/billing/federation/report
Handler: handle_object_storage_federation_report_post in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/billing/federation/report'
Responses:
| 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 |
JSON request body (credentials must stay in the body):
| Field |
Required |
Type |
Description |
request |
yes |
object |
|
POST /api/v1/object-storage/customers/adopt
Handler: handle_object_storage_customers_adopt_post in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
billing_status |
query |
no |
string; values: active, suspended, trial, cancelled, do_not_bill |
Backend parameter billing_status. |
bucket |
query |
no |
string |
Backend parameter bucket. |
charge_downloads |
query |
no |
boolean |
Backend parameter charge_downloads. |
charge_uploads |
query |
no |
boolean |
Backend parameter charge_uploads. |
created_at |
query |
no |
string |
Backend parameter created_at. |
currency |
query |
no |
string |
Backend parameter currency. |
customer_id |
query |
no |
string |
Backend parameter customer_id. |
customer_name |
query |
no |
string |
Backend parameter customer_name. |
customer_number |
query |
no |
string |
Backend parameter customer_number. |
download_price_per_gb |
query |
no |
number; minimum 0 |
Backend parameter download_price_per_gb. |
email |
query |
no |
string (email) |
Backend parameter email. |
generation_id |
query |
no |
string |
Backend parameter generation_id. |
minimum_charge |
query |
no |
number; minimum 0 |
Backend parameter minimum_charge. |
price_per_gb |
query |
no |
number; minimum 0 |
Backend parameter price_per_gb. |
quota_gb |
query |
no |
string |
Backend parameter quota_gb. |
service_type |
query |
no |
string |
Backend parameter service_type. |
site |
query |
no |
string |
Backend parameter site. |
uid |
query |
no |
string |
Backend parameter uid. |
upload_price_per_gb |
query |
no |
number; minimum 0 |
Backend parameter upload_price_per_gb. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/customers/adopt'
Responses:
| Status |
Meaning |
| 201 |
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 |
GET /api/v1/object-storage/replication/backups
Handler: handle_object_storage_backups_get in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
action |
query |
no |
string |
Backend parameter action. |
continuation_token |
query |
no |
string |
Backend parameter continuation_token. |
cursor |
query |
no |
string |
Backend parameter cursor. |
id |
query |
no |
string |
Backend parameter id. |
limit |
query |
no |
string |
Backend parameter limit. |
query |
query |
no |
string |
Backend parameter query. |
realm |
query |
no |
string |
Backend parameter realm. |
source_zone |
query |
no |
string |
Backend parameter source_zone. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/replication/backups'
Responses:
| 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 |
POST /api/v1/object-storage/replication/backups
Handler: handle_object_storage_backups_post in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Idempotency-Key |
header |
no |
string |
Required for cluster membership changes; otherwise replays the cached response for an identical mutating request. |
Example:
sudo curl --cacert <CA_FILE> -X POST \
-H 'X-API-Key: <API_KEY>' \
-H 'Idempotency-Key: <REQUEST_ID>' \
'https://<server>:18443/api/v1/object-storage/replication/backups'
Responses:
| 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 |
| 202 |
Setup, bundle export/import or configuration apply accepted |
JSON request body (credentials must stay in the body):
| Field |
Required |
Type |
Description |
action |
yes |
string |
Allowed values: backup_discover, backup_bucket_search, backup_list, backup_save, backup_setup, backup_status, backup_checkpoints, backup_preview, backup_control, backup_bundle_export, backup_bundle_import, backup_configuration_preview, backup_configuration_apply |
request |
yes |
object |
Backend operation request. Credentials and bundle passphrases remain body-only. See S3_API_WORKFLOWS.html for fields and confirmations. |
Action-specific required fields and validation are defined in the accompanying openapi.json / openapi.yaml. See the S3 API workflows guide for complete requests and recovery confirmations.
GET /api/v1/object-storage/replication/backups/bundle
Handler: handle_object_storage_backup_bundle_get in object_storage_management.sh.
| Parameter |
Location |
Required |
Type |
Description |
job_id |
query |
no |
string |
Backend parameter job_id. |
X-Correlation-ID |
header |
no |
string |
Optional caller correlation ID; generated when omitted. |
Example:
sudo curl --cacert <CA_FILE> -X GET \
-H 'X-API-Key: <API_KEY>' \
'https://<server>:18443/api/v1/object-storage/replication/backups/bundle'
Responses:
| 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 |
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.