Portworx · Capability

OpenStorage SDK

OpenStorage SDK API capability.

Run with Naftiko PortworxAPI

What You Can Do

POST
Openstoragealerts delete — Delete alerts
/v1/alerts
POST
Openstoragealerts enumeratewithfilters — Allows querying alerts.
/v1/alerts/filters
POST
Openstoragebucket create — POST /v1/bucket
/v1/bucket
POST
Openstoragebucket grantaccess — POST /v1/bucket/access/{bucket_id}
/v1/bucket/access/{bucket_id}
POST
Openstoragebucket revokeaccess — POST /v1/bucket/revoke/{bucket_id}
/v1/bucket/revoke/{bucket_id}
DELETE
Openstoragebucket delete — DELETE /v1/bucket/{bucket_id}
/v1/bucket/{bucket_id}
POST
Openstoragecloudbackup create — Creates a backup request for a specified volume. Use OpenStorageCloudBackup.Status() to get the current status of the backup request.
/v1/cloudbackups
DELETE
Openstoragecloudbackup delete — Deletes a backup stored in the cloud. If the backup is an incremental backup and other backups are dependent on it, it will not be able to be deleted.
/v1/cloudbackups/backup/{backup_id}
POST
Openstoragecloudbackup catalog — Catalog returns a list of the contents in the backup
/v1/cloudbackups/catalog
POST
Openstoragecloudbackup deleteall — DeleteAll deletes all the backups in the cloud for the specified volume.
/v1/cloudbackups/deleteall
POST
Openstoragecloudbackup enumeratewithfilters — Return a list of backups for the specified volume
/v1/cloudbackups/enumerate/filters
POST
Openstoragecloudbackup groupcreate — Creates a group backup request for a specified group. Use OpenStorageCloudBackup.Status() to get the current status of the backup request.
/v1/cloudbackups/group
GET
Openstoragecloudbackup history — History returns a list of backups for a specified volume
/v1/cloudbackups/history/{src_volume_id}
POST
Openstoragecloudbackup restore — Restore creates a new volume from a backup id. The newly created volume has an ha_level (number of replicas) of only 1. To increase the number of replicas, use OpenStorageVolume.Set() to change the ha_level.
/v1/cloudbackups/restore
GET
Openstoragecloudbackup schedenumerate — Enumerate cloud backup schedules
/v1/cloudbackups/schedules
POST
Openstoragecloudbackup schedcreate — Create cloud backup schedule
/v1/cloudbackups/schedules
PUT
Openstoragecloudbackup schedupdate — Update existing cloud backup schedule
/v1/cloudbackups/schedules
DELETE
Openstoragecloudbackup scheddelete — Delete cloud backup schedule
/v1/cloudbackups/schedules/{backup_schedule_id}
GET
Openstoragecloudbackup size — Size returns the size of any cloud backups of a volume
/v1/cloudbackups/size
POST
Openstoragecloudbackup statechange — StateChange can be used to stop, pause, and restart a backup
/v1/cloudbackups/statechange
POST
Openstoragecloudbackup status — Status returns the status of any cloud backups of a volume
/v1/cloudbackups/status
GET
Openstorageclusterdomains enumerate — Enumerate returns names of all the cluster domains in the cluster
/v1/clusterdomains
POST
Openstorageclusterdomains activate — Activates a cluster domain in the cluster. All the nodes which are part of an active cluster domain will participate in cluster quorum calculation
/v1/clusterdomains/activate/{cluster_domain_name}
POST
Openstorageclusterdomains deactivate — Deactivates a cluster domain in the cluster. All the nodes which are part of a deactivated cluster domain. will not participate in cluster quorum calculation
/v1/clusterdomains/deactivate/{cluster_domain_name}
GET
Openstorageclusterdomains inspect — Inspect returns information about a cluster domain and a status indicating whether the cluster domain is active
/v1/clusterdomains/inspect/{cluster_domain_name}
GET
Openstorageclusterpair enumerate — Enumerate returns list of cluster pairs
/v1/clusterpairs
POST
Openstorageclusterpair create — Creates Pair with a remote cluster and returns details about the remote cluster
/v1/clusterpairs
GET
Openstorageclusterpair inspect — Inspect information about a cluster pair
/v1/clusterpairs/inspect/{id}
GET
Openstorageclusterpair gettoken — GetToken returns a auth token
/v1/clusterpairs/token
POST
Openstorageclusterpair resettoken — ResetToken returns a auth token
/v1/clusterpairs/token
DELETE
Openstorageclusterpair delete — Delete a cluster pair
/v1/clusterpairs/{cluster_id}
GET
Openstoragecluster inspectcurrent — InspectCurrent returns information about the current cluster
/v1/clusters/inspectcurrent
GET
Openstoragecredentials enumerate — Enumerate returns a list of credential ids
/v1/credentials
POST
Openstoragecredentials create — Create is used to submit cloud credentials. It will return an id of the credentials once they are verified to work.
/v1/credentials
GET
Openstoragecredentials inspect — Inspect returns the information about a credential, but does not return the secret key.
/v1/credentials/inspect/{credential_id}
DELETE
Openstoragecredentials deletereferences — DeleteReferences is used to remove references to credentials
/v1/credentials/references/{credential_id}
GET
Openstoragecredentials validate — Validate is used to validate credentials
/v1/credentials/validate/{credential_id}
DELETE
Openstoragecredentials delete — Delete a specified credential
/v1/credentials/{credential_id}
PUT
Openstoragecredentials update — input is very same as credential create
/v1/credentials/{credential_id}
POST
Openstoragediags collect — Collect starts a job to collect diagnostics from set of nodes that are selected based on the selectors provided in the SdkDiagsCollectRequest. See SdkDiagsCollectRequest for more details on how to select the nodes Returns SdkDiagsCollectRes
/v1/diags
POST
Openstoragefilesystemcheck deletesnapshots — Delete all fsck created snapshots on volume
/v1/filesystem-check/delete-snapshots
GET
Openstoragefilesystemcheck listsnapshots — List all fsck created snapshots on volume
/v1/filesystem-check/list-snapshots
GET
Openstoragefilesystemcheck listvolumes — List of all volumes which require fsck check/fix to be run
/v1/filesystem-check/list-volumes
POST
Openstoragefilesystemcheck start — Start a filesystem-check background operation on a unmounted volume.
/v1/filesystem-check/start
GET
Openstoragefilesystemcheck status — Get Status of a filesystem-check background operation on an unmounted volume, if any
/v1/filesystem-check/status
POST
Openstoragefilesystemcheck stop — Stop a filesystem check background operation on an unmounted volume, if any
/v1/filesystem-check/stop
POST
Openstoragefilesystemdefrag createschedule — Create a schedule to run defragmentation tasks periodically
/v1/filesystem-defrag/schedule
DELETE
Openstoragefilesystemdefrag cleanupschedules — Clean up all defrag schedules and stop all operations
/v1/filesystem-defrag/schedules
GET
Openstoragefilesystemdefrag enumeratenodestatus — Enumerate all nodes, returning defrag status of the entire cluster
/v1/filesystem-defrag/status
GET
Openstoragefilesystemdefrag getnodestatus — Get defrag status of a node
/v1/filesystem-defrag/status/{node_id}
POST
Openstoragefilesystemtrim autofstrimpop — Pop a auto filesystem Trim job from the queue
/v1/filesystem-trim/auto-fstrim-pop
POST
Openstoragefilesystemtrim autofstrimpush — Push a auto filesystem Trim job into the queue
/v1/filesystem-trim/auto-fstrim-push
GET
Openstoragefilesystemtrim autofstrimstatus — GET /v1/filesystem-trim/auto-fstrim-status
/v1/filesystem-trim/auto-fstrim-status
GET
Openstoragefilesystemtrim autofstrimusage — Usage of a filesystem Trim background operation on all locally mounted volume
/v1/filesystem-trim/auto-fstrim-usage
POST
Openstoragefilesystemtrim start — Start a filesystem Trim background operation on a mounted volume
/v1/filesystem-trim/start
GET
Openstoragefilesystemtrim status — Status of a filesystem Trim background operation on a mounted volume, if any
/v1/filesystem-trim/status
POST
Openstoragefilesystemtrim stop — Stop a filesystem Trim background operation on a mounted volume, if any
/v1/filesystem-trim/stop
GET
Openstorageidentity capabilities — Capabilities returns the supported services by the cluster. This allows SDK implementations to advertise their supported services as the API matures. With this information, clients can determine supported services from storage clusters at d
/v1/identities/capabilities
GET
Openstorageidentity version — Version returns version information about the system.
/v1/identities/version
GET
Openstoragejob enumerate — Enumerate returns all the jobs currently known to the system
/v1/jobs

MCP Tools

openstoragealerts-delete

Delete alerts

openstoragealerts-enumeratewithfilters

Allows querying alerts.

openstoragebucket-create

POST /v1/bucket

openstoragebucket-grantaccess

POST /v1/bucket/access/{bucket_id}

openstoragebucket-revokeaccess

POST /v1/bucket/revoke/{bucket_id}

openstoragebucket-delete

DELETE /v1/bucket/{bucket_id}

idempotent
openstoragecloudbackup-create

Creates a backup request for a specified volume. Use OpenStorageCloudBackup.Status() to get the current status of the backup request.

openstoragecloudbackup-delete

Deletes a backup stored in the cloud. If the backup is an incremental backup and other backups are dependent on it, it will not be able to be deleted.

idempotent
openstoragecloudbackup-catalog

Catalog returns a list of the contents in the backup

openstoragecloudbackup-deleteall

DeleteAll deletes all the backups in the cloud for the specified volume.

openstoragecloudbackup-enumeratewithfilters

Return a list of backups for the specified volume

openstoragecloudbackup-groupcreate

Creates a group backup request for a specified group. Use OpenStorageCloudBackup.Status() to get the current status of the backup request.

openstoragecloudbackup-history

History returns a list of backups for a specified volume

read-only idempotent
openstoragecloudbackup-restore

Restore creates a new volume from a backup id. The newly created volume has an ha_level (number of replicas) of only 1. To increase the number of replicas, use OpenStorageVolume.Set() to change the ha_level.

openstoragecloudbackup-schedenumerate

Enumerate cloud backup schedules

read-only idempotent
openstoragecloudbackup-schedcreate

Create cloud backup schedule

openstoragecloudbackup-schedupdate

Update existing cloud backup schedule

idempotent
openstoragecloudbackup-scheddelete

Delete cloud backup schedule

idempotent
openstoragecloudbackup-size

Size returns the size of any cloud backups of a volume

read-only idempotent
openstoragecloudbackup-statechange

StateChange can be used to stop, pause, and restart a backup

openstoragecloudbackup-status

Status returns the status of any cloud backups of a volume

openstorageclusterdomains-enumerate

Enumerate returns names of all the cluster domains in the cluster

read-only idempotent
openstorageclusterdomains-activate

Activates a cluster domain in the cluster. All the nodes which are part of an active cluster domain will participate in cluster quorum calculation

openstorageclusterdomains-deactivate

Deactivates a cluster domain in the cluster. All the nodes which are part of a deactivated cluster domain. will not participate in cluster quorum calculation

openstorageclusterdomains-inspect

Inspect returns information about a cluster domain and a status indicating whether the cluster domain is active

read-only idempotent
openstorageclusterpair-enumerate

Enumerate returns list of cluster pairs

read-only idempotent
openstorageclusterpair-create

Creates Pair with a remote cluster and returns details about the remote cluster

openstorageclusterpair-inspect

Inspect information about a cluster pair

read-only idempotent
openstorageclusterpair-gettoken

GetToken returns a auth token

read-only idempotent
openstorageclusterpair-resettoken

ResetToken returns a auth token

openstorageclusterpair-delete

Delete a cluster pair

idempotent
openstoragecluster-inspectcurrent

InspectCurrent returns information about the current cluster

read-only idempotent
openstoragecredentials-enumerate

Enumerate returns a list of credential ids

read-only idempotent
openstoragecredentials-create

Create is used to submit cloud credentials. It will return an id of the credentials once they are verified to work.

openstoragecredentials-inspect

Inspect returns the information about a credential, but does not return the secret key.

read-only idempotent
openstoragecredentials-deletereferences

DeleteReferences is used to remove references to credentials

idempotent
openstoragecredentials-validate

Validate is used to validate credentials

read-only idempotent
openstoragecredentials-delete

Delete a specified credential

idempotent
openstoragecredentials-update

input is very same as credential create

idempotent
openstoragediags-collect

Collect starts a job to collect diagnostics from set of nodes that are selected based on the selectors provided in the SdkDiagsCollectRequest. See SdkDiagsCollectRequest for more details on how to select the nodes Returns SdkDiagsCollectRes

openstoragefilesystemcheck-deletesnapshots

Delete all fsck created snapshots on volume

openstoragefilesystemcheck-listsnapshots

List all fsck created snapshots on volume

read-only idempotent
openstoragefilesystemcheck-listvolumes

List of all volumes which require fsck check/fix to be run

read-only idempotent
openstoragefilesystemcheck-start

Start a filesystem-check background operation on a unmounted volume.

openstoragefilesystemcheck-status

Get Status of a filesystem-check background operation on an unmounted volume, if any

read-only idempotent
openstoragefilesystemcheck-stop

Stop a filesystem check background operation on an unmounted volume, if any

openstoragefilesystemdefrag-createschedule

Create a schedule to run defragmentation tasks periodically

openstoragefilesystemdefrag-cleanupschedules

Clean up all defrag schedules and stop all operations

idempotent
openstoragefilesystemdefrag-enumeratenodestatus

Enumerate all nodes, returning defrag status of the entire cluster

read-only idempotent
openstoragefilesystemdefrag-getnodestatus

Get defrag status of a node

read-only idempotent
openstoragefilesystemtrim-autofstrimpop

Pop a auto filesystem Trim job from the queue

openstoragefilesystemtrim-autofstrimpush

Push a auto filesystem Trim job into the queue

openstoragefilesystemtrim-autofstrimstatus

GET /v1/filesystem-trim/auto-fstrim-status

read-only idempotent
openstoragefilesystemtrim-autofstrimusage

Usage of a filesystem Trim background operation on all locally mounted volume

read-only idempotent
openstoragefilesystemtrim-start

Start a filesystem Trim background operation on a mounted volume

openstoragefilesystemtrim-status

Status of a filesystem Trim background operation on a mounted volume, if any

read-only idempotent
openstoragefilesystemtrim-stop

Stop a filesystem Trim background operation on a mounted volume, if any

openstorageidentity-capabilities

Capabilities returns the supported services by the cluster. This allows SDK implementations to advertise their supported services as the API matures. With this information, clients can determine supported services from storage clusters at d

read-only idempotent
openstorageidentity-version

Version returns version information about the system.

read-only idempotent
openstoragejob-enumerate

Enumerate returns all the jobs currently known to the system

read-only idempotent

Capability Spec

portworx-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: OpenStorage SDK
  description: OpenStorage SDK API capability.
  tags:
  - Portworx
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: portworx
    baseUri: https://api.example.com
    description: OpenStorage SDK HTTP API.
    authentication:
      type: bearer
      token: '{{PORTWORX_TOKEN}}'
    resources:
    - name: v1-alerts
      path: /v1/alerts
      operations:
      - name: openstoragealerts-delete
        method: POST
        description: Delete alerts
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-alerts-filters
      path: /v1/alerts/filters
      operations:
      - name: openstoragealerts-enumeratewithfilters
        method: POST
        description: Allows querying alerts.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-bucket
      path: /v1/bucket
      operations:
      - name: openstoragebucket-create
        method: POST
        description: POST /v1/bucket
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-bucket-access-bucket-id
      path: /v1/bucket/access/{bucket_id}
      operations:
      - name: openstoragebucket-grantaccess
        method: POST
        description: POST /v1/bucket/access/{bucket_id}
        inputParameters:
        - name: bucket_id
          in: path
          type: string
          required: true
          description: Id of the bucket
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-bucket-revoke-bucket-id
      path: /v1/bucket/revoke/{bucket_id}
      operations:
      - name: openstoragebucket-revokeaccess
        method: POST
        description: POST /v1/bucket/revoke/{bucket_id}
        inputParameters:
        - name: bucket_id
          in: path
          type: string
          required: true
          description: Id of bucket to delete
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-bucket-bucket-id
      path: /v1/bucket/{bucket_id}
      operations:
      - name: openstoragebucket-delete
        method: DELETE
        description: DELETE /v1/bucket/{bucket_id}
        inputParameters:
        - name: bucket_id
          in: path
          type: string
          required: true
          description: Id of bucket to delete
        - name: region
          in: query
          type: string
          description: Region in which bucket will be created.
        - name: endpoint
          in: query
          type: string
          description: Endpoint to use when deleting the bucket.
        - name: clear_bucket
          in: query
          type: boolean
          description: Flag to allow non empty bucket deletion.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-cloudbackups
      path: /v1/cloudbackups
      operations:
      - name: openstoragecloudbackup-create
        method: POST
        description: Creates a backup request for a specified volume. Use OpenStorageCloudBackup.Status() to get the current
          status of the backup request.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-cloudbackups-backup-backup-id
      path: /v1/cloudbackups/backup/{backup_id}
      operations:
      - name: openstoragecloudbackup-delete
        method: DELETE
        description: Deletes a backup stored in the cloud. If the backup is an incremental backup and other backups are dependent
          on it, it will not be able to be deleted.
        inputParameters:
        - name: backup_id
          in: path
          type: string
          required: true
          description: ID is the ID of the cloud backup
        - name: credential_id
          in: query
          type: string
          description: Credential id is the credential for cloud to be used for the request.
        - name: force
          in: query
          type: boolean
          description: 'Force Delete cloudbackup even if there are dependencies. This may be needed if the backup is an incremental
            backup and subsequent backups depend on this backup '
        - name: bucket
          in: query
          type: string
          description: Bucket name to which cloud backup belongs to.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-cloudbackups-catalog
      path: /v1/cloudbackups/catalog
      operations:
      - name: openstoragecloudbackup-catalog
        method: POST
        description: Catalog returns a list of the contents in the backup
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-cloudbackups-deleteall
      path: /v1/cloudbackups/deleteall
      operations:
      - name: openstoragecloudbackup-deleteall
        method: POST
        description: DeleteAll deletes all the backups in the cloud for the specified volume.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-cloudbackups-enumerate-filters
      path: /v1/cloudbackups/enumerate/filters
      operations:
      - name: openstoragecloudbackup-enumeratewithfilters
        method: POST
        description: Return a list of backups for the specified volume
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-cloudbackups-group
      path: /v1/cloudbackups/group
      operations:
      - name: openstoragecloudbackup-groupcreate
        method: POST
        description: Creates a group backup request for a specified group. Use OpenStorageCloudBackup.Status() to get the
          current status of the backup request.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-cloudbackups-history-src-volume-id
      path: /v1/cloudbackups/history/{src_volume_id}
      operations:
      - name: openstoragecloudbackup-history
        method: GET
        description: History returns a list of backups for a specified volume
        inputParameters:
        - name: src_volume_id
          in: path
          type: string
          required: true
          description: This optional value defines which history of backups is being requested. If not provided, it will return
            the history for all volumes.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-cloudbackups-restore
      path: /v1/cloudbackups/restore
      operations:
      - name: openstoragecloudbackup-restore
        method: POST
        description: Restore creates a new volume from a backup id. The newly created volume has an ha_level (number of replicas)
          of only 1. To increase the number of replicas, use OpenStorageVolume.Set() to change the ha_level.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-cloudbackups-schedules
      path: /v1/cloudbackups/schedules
      operations:
      - name: openstoragecloudbackup-schedenumerate
        method: GET
        description: Enumerate cloud backup schedules
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: openstoragecloudbackup-schedcreate
        method: POST
        description: Create cloud backup schedule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: openstoragecloudbackup-schedupdate
        method: PUT
        description: Update existing cloud backup schedule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-cloudbackups-schedules-backup-schedule-id
      path: /v1/cloudbackups/schedules/{backup_schedule_id}
      operations:
      - name: openstoragecloudbackup-scheddelete
        method: DELETE
        description: Delete cloud backup schedule
        inputParameters:
        - name: backup_schedule_id
          in: path
          type: string
          required: true
          description: Id of cloud backup to delete
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-cloudbackups-size
      path: /v1/cloudbackups/size
      operations:
      - name: openstoragecloudbackup-size
        method: GET
        description: Size returns the size of any cloud backups of a volume
        inputParameters:
        - name: backup_id
          in: query
          type: string
          description: BackupId is a value which is used to get information on the size of the specified backup.
        - name: credential_id
          in: query
          type: string
          description: Credential id describe the credentials for the cloud.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-cloudbackups-statechange
      path: /v1/cloudbackups/statechange
      operations:
      - name: openstoragecloudbackup-statechange
        method: POST
        description: StateChange can be used to stop, pause, and restart a backup
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-cloudbackups-status
      path: /v1/cloudbackups/status
      operations:
      - name: openstoragecloudbackup-status
        method: POST
        description: Status returns the status of any cloud backups of a volume
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-clusterdomains
      path: /v1/clusterdomains
      operations:
      - name: openstorageclusterdomains-enumerate
        method: GET
        description: Enumerate returns names of all the cluster domains in the cluster
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-clusterdomains-activate-cluster-domain-name
      path: /v1/clusterdomains/activate/{cluster_domain_name}
      operations:
      - name: openstorageclusterdomains-activate
        method: POST
        description: Activates a cluster domain in the cluster. All the nodes which are part of an active cluster domain will
          participate in cluster quorum calculation
        inputParameters:
        - name: cluster_domain_name
          in: path
          type: string
          required: true
          description: Name of the cluster domain to activate
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-clusterdomains-deactivate-cluster-domain-name
      path: /v1/clusterdomains/deactivate/{cluster_domain_name}
      operations:
      - name: openstorageclusterdomains-deactivate
        method: POST
        description: Deactivates a cluster domain in the cluster. All the nodes which are part of a deactivated cluster domain.
          will not participate in cluster quorum calculation
        inputParameters:
        - name: cluster_domain_name
          in: path
          type: string
          required: true
          description: Name of the cluster domain to deactivate
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-clusterdomains-inspect-cluster-domain-name
      path: /v1/clusterdomains/inspect/{cluster_domain_name}
      operations:
      - name: openstorageclusterdomains-inspect
        method: GET
        description: Inspect returns information about a cluster domain and a status indicating whether the cluster domain
          is active
        inputParameters:
        - name: cluster_domain_name
          in: path
          type: string
          required: true
          description: Name of the cluster domain to inspect
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-clusterpairs
      path: /v1/clusterpairs
      operations:
      - name: openstorageclusterpair-enumerate
        method: GET
        description: Enumerate returns list of cluster pairs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: openstorageclusterpair-create
        method: POST
        description: Creates Pair with a remote cluster and returns details about the remote cluster
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-clusterpairs-inspect-id
      path: /v1/clusterpairs/inspect/{id}
      operations:
      - name: openstorageclusterpair-inspect
        method: GET
        description: Inspect information about a cluster pair
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
          description: ID of the cluster, if empty gets the default pair
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-clusterpairs-token
      path: /v1/clusterpairs/token
      operations:
      - name: openstorageclusterpair-gettoken
        method: GET
        description: GetToken returns a auth token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: openstorageclusterpair-resettoken
        method: POST
        description: ResetToken returns a auth token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-clusterpairs-cluster-id
      path: /v1/clusterpairs/{cluster_id}
      operations:
      - name: openstorageclusterpair-delete
        method: DELETE
        description: Delete a cluster pair
        inputParameters:
        - name: cluster_id
          in: path
          type: string
          required: true
          description: ID of the cluster pair to be deleted
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-clusters-inspectcurrent
      path: /v1/clusters/inspectcurrent
      operations:
      - name: openstoragecluster-inspectcurrent
        method: GET
        description: InspectCurrent returns information about the current cluster
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-credentials
      path: /v1/credentials
      operations:
      - name: openstoragecredentials-enumerate
        method: GET
        description: Enumerate returns a list of credential ids
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: openstoragecredentials-create
        method: POST
        description: Create is used to submit cloud credentials. It will return an id of the credentials once they are verified
          to work.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-credentials-inspect-credential-id
      path: /v1/credentials/inspect/{credential_id}
      operations:
      - name: openstoragecredentials-inspect
        method: GET
        description: Inspect returns the information about a credential, but does not return the secret key.
        inputParameters:
        - name: credential_id
          in: path
          type: string
          required: true
          description: Id of the credential
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-credentials-references-credential-id
      path: /v1/credentials/references/{credential_id}
      operations:
      - name: openstoragecredentials-deletereferences
        method: DELETE
        description: DeleteReferences is used to remove references to credentials
        inputParameters:
        - name: credential_id
          in: path
          type: string
          required: true
          description: Id of the credentials
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-credentials-validate-credential-id
      path: /v1/credentials/validate/{credential_id}
      operations:
      - name: openstoragecredentials-validate
        method: GET
        description: Validate is used to validate credentials
        inputParameters:
        - name: credential_id
          in: path
          type: string
          required: true
          description: Id of the credentials
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-credentials-credential-id
      path: /v1/credentials/{credential_id}
      operations:
      - name: openstoragecredentials-delete
        method: DELETE
        description: Delete a specified credential
        inputParameters:
        - name: credential_id
          in: path
          type: string
          required: true
          description: Id for credentials
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: openstoragecredentials-update
        method: PUT
        description: input is very same as credential create
        inputParameters:
        - name: credential_id
          in: path
          type: string
          required: true
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-diags
      path: /v1/diags
      operations:
      - name: openstoragediags-collect
        method: POST
        description: Collect starts a job to collect diagnostics from set of nodes that are selected based on the selectors
          provided in the SdkDiagsCollectRequest. See SdkDiagsCollectRequest for more details on how to select the nodes Returns
          SdkDiagsCollectRes
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-check-delete-snapshots
      path: /v1/filesystem-check/delete-snapshots
      operations:
      - name: openstoragefilesystemcheck-deletesnapshots
        method: POST
        description: Delete all fsck created snapshots on volume
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-check-list-snapshots
      path: /v1/filesystem-check/list-snapshots
      operations:
      - name: openstoragefilesystemcheck-listsnapshots
        method: GET
        description: List all fsck created snapshots on volume
        inputParameters:
        - name: volume_id
          in: query
          type: string
          description: Id of the volume.
        - name: node_id
          in: query
          type: string
          description: Node Id of the volume.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-check-list-volumes
      path: /v1/filesystem-check/list-volumes
      operations:
      - name: openstoragefilesystemcheck-listvolumes
        method: GET
        description: List of all volumes which require fsck check/fix to be run
        inputParameters:
        - name: node_id
          in: query
          type: string
          description: Node Id filter.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-check-start
      path: /v1/filesystem-check/start
      operations:
      - name: openstoragefilesystemcheck-start
        method: POST
        description: Start a filesystem-check background operation on a unmounted volume.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-check-status
      path: /v1/filesystem-check/status
      operations:
      - name: openstoragefilesystemcheck-status
        method: GET
        description: Get Status of a filesystem-check background operation on an unmounted volume, if any
        inputParameters:
        - name: volume_id
          in: query
          type: string
          description: Id of the volume.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-check-stop
      path: /v1/filesystem-check/stop
      operations:
      - name: openstoragefilesystemcheck-stop
        method: POST
        description: Stop a filesystem check background operation on an unmounted volume, if any
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-defrag-schedule
      path: /v1/filesystem-defrag/schedule
      operations:
      - name: openstoragefilesystemdefrag-createschedule
        method: POST
        description: Create a schedule to run defragmentation tasks periodically
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-defrag-schedules
      path: /v1/filesystem-defrag/schedules
      operations:
      - name: openstoragefilesystemdefrag-cleanupschedules
        method: DELETE
        description: Clean up all defrag schedules and stop all operations
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-defrag-status
      path: /v1/filesystem-defrag/status
      operations:
      - name: openstoragefilesystemdefrag-enumeratenodestatus
        method: GET
        description: Enumerate all nodes, returning defrag status of the entire cluster
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-defrag-status-node-id
      path: /v1/filesystem-defrag/status/{node_id}
      operations:
      - name: openstoragefilesystemdefrag-getnodestatus
        method: GET
        description: Get defrag status of a node
        inputParameters:
        - name: node_id
          in: path
          type: string
          required: true
          description: NodeId is uuid of the node
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-trim-auto-fstrim-pop
      path: /v1/filesystem-trim/auto-fstrim-pop
      operations:
      - name: openstoragefilesystemtrim-autofstrimpop
        method: POST
        description: Pop a auto filesystem Trim job from the queue
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-trim-auto-fstrim-push
      path: /v1/filesystem-trim/auto-fstrim-push
      operations:
      - name: openstoragefilesystemtrim-autofstrimpush
        method: POST
        description: Push a auto filesystem Trim job into the queue
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-trim-auto-fstrim-status
      path: /v1/filesystem-trim/auto-fstrim-status
      operations:
      - name: openstoragefilesystemtrim-autofstrimstatus
        method: GET
        description: GET /v1/filesystem-trim/auto-fstrim-status
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-trim-auto-fstrim-usage
      path: /v1/filesystem-trim/auto-fstrim-usage
      operations:
      - name: openstoragefilesystemtrim-autofstrimusage
        method: GET
        description: Usage of a filesystem Trim background operation on all locally mounted volume
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-trim-start
      path: /v1/filesystem-trim/start
      operations:
      - name: openstoragefilesystemtrim-start
        method: POST
        description: Start a filesystem Trim background operation on a mounted volume
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-trim-status
      path: /v1/filesystem-trim/status
      operations:
      - name: openstoragefilesystemtrim-status
        method: GET
        description: Status of a filesystem Trim background operation on a mounted volume, if any
        inputParameters:
        - name: volume_id
          in: query
          type: string
          description: Id of the volume.
        - name: mount_path
          in: query
          type: string
          description: Path where the volume is mounted.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-filesystem-trim-stop
      path: /v1/filesystem-trim/stop
      operations:
      - name: openstoragefilesystemtrim-stop
        method: POST
        description: Stop a filesystem Trim background operation on a mounted volume, if any
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-identities-capabilities
      path: /v1/identities/capabilities
      operations:
      - name: openstorageidentity-capabilities
        method: GET
        description: Capabilities returns the supported services by the cluster. This allows SDK implementations to advertise
          their supported services as the API matures. With this information, clients can determine supported services from
          storage clusters at d
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-identities-version
      path: /v1/identities/version
      operations:
      - name: openstorageidentity-version
        method: GET
        description: Version returns version information about the system.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-jobs
      path: /v1/jobs
      operations:
      - name: openstoragejob-enumerate
        method: GET
        description: Enumerate returns all the jobs currently known to the system
        inputParameters:
        - name: type
          in: query
          type: string
          description: 'Type if specified will list the jobs of the provided type. - UNSPECIFIED_TYPE: Unspecified - NONE:
            None - DRAIN_ATTACHMENTS: Job for draining volume attachments'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    port: 8080
    namespace: portworx-rest
    description: REST adapter for OpenStorage SDK.
    resources:
    - path: /v1/alerts
      name: openstoragealerts-delete
      operations:
      - method: POST
        name: openstoragealerts-delete
        description: Delete alerts
        call: portworx.openstoragealerts-delete
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/alerts/filters
      name: openstoragealerts-enumeratewithfilters
      operations:
      - method: POST
        name: openstoragealerts-enumeratewithfilters
        description: Allows querying alerts.
        call: portworx.openstoragealerts-enumeratewithfilters
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/bucket
      name: openstoragebucket-create
      operations:
      - method: POST
        name: openstoragebucket-create
        description: POST /v1/bucket
        call: portworx.openstoragebucket-create
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/bucket/access/{bucket_id}
      name: openstoragebucket-grantaccess
      operations:
      - method: POST
        name: openstoragebucket-grantaccess
        description: POST /v1/bucket/access/{bucket_id}
        call: portworx.openstoragebucket-grantaccess
        with:
          bucket_id: rest.bucket_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/bucket/revoke/{bucket_id}
      name: openstoragebucket-revokeaccess
      operations:
      - method: POST
        name: openstoragebucket-revokeaccess
        description: POST /v1/bucket/revoke/{bucket_id}
        call: portworx.openstoragebucket-revokeaccess
        with:
          bucket_id: rest.bucket_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/bucket/{bucket_id}
      name: openstoragebucket-delete
      operations:
      - method: DELETE
        name: openstoragebucket-delete
        description: DELETE /v1/bucket/{bucket_id}
        call: portworx.openstoragebucket-delete
        with:
          bucket_id: rest.bucket_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cloudbackups
      name: openstoragecloudbackup-create
      operations:
      - method: POST
        name: openstoragecloudbackup-create
        description: Creates a backup request for a specified volume. Use OpenStorageCloudBackup.Status() to get the current
          status of the backup request.
        call: portworx.openstoragecloudbackup-create
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cloudbackups/backup/{backup_id}
      name: openstoragecloudbackup-delete
      operations:
      - method: DELETE
        name: openstoragecloudbackup-delete
        description: Deletes a backup stored in the cloud. If the backup is an incremental backup and other backups are dependent
          on it, it will not be able to be deleted.
        call: portworx.openstoragecloudbackup-delete
        with:
          backup_id: rest.backup_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cloudbackups/catalog
      name: openstoragecloudbackup-catalog
      operations:
      - method: POST
        name: openstoragecloudbackup-catalog
        description: Catalog returns a list of the contents in the backup
        call: portworx.openstoragecloudbackup-catalog
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cloudbackups/deleteall
      name: openstoragecloudbackup-deleteall
      operations:
      - method: POST
        name: openstoragecloudbackup-deleteall
        description: DeleteAll deletes all the backups in the cloud for the specified volume.
        call: portworx.openstoragecloudbackup-deleteall
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cloudbackups/enumerate/filters
      name: openstoragecloudbackup-enumeratewithfilters
      operations:
      - method: POST
        name: openstoragecloudbackup-enumeratewithfilters
        description: Return a list of backups for the specified volume
        call: portworx.openstoragecloudbackup-enumeratewithfilters
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cloudbackups/group
      name: openstoragecloudbackup-groupcreate
      operations:
      - method: POST
        name: openstoragecloudbackup-groupcreate
        description: Creates a group backup request for a specified group. 

# --- truncated at 32 KB (77 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/portworx/refs/heads/main/capabilities/portworx-capability.yaml