FlashArray REST API (2.0)

Download OpenAPI specification:Download

Authorization

Pure Storage uses the OAuth 2.0 Token Exchange authorization grant and JSON Web Tokens (JWTs) to authenticate to the Pure Storage REST API. Before you can exchange the ID Token for an access token, create and enable the API client to generate the key_id, id, and issuer values. These values will be used as JWT claims for the subject_token parameter.

Get access token

Exchanges an ID Token for an OAuth 2.0 access token.

header Parameters
X-Request-ID
string

Supplied by client during request or generated by server.

Request Body schema: application/x-www-form-urlencoded
grant_type
required
string (formData_OauthGrantType)
Default: "urn:ietf:params:oauth:grant-type:token-exchange"

The method by which the access token will be obtained. The Pure Storage REST API supports the OAuth 2.0 "token exchange" grant type, which indicates that a token exchange is being performed. Set grant_type to urn:ietf:params:oauth:grant-type:token-exchange.

subject_token
required
string (formData_OauthSubjectToken)

An encoded security ID Token representing the identity of the party on behalf of whom the request is being made. The token must be issued by a trusted identity provider which must be either a registered application in Pure1 or an enabled API client on the array. The token must be a JSON Web Token and must contain the following claims:

| JWT claim | Location | API Client Field | Description | Required By |

|-|-|-|-|-|

| kid | Header | key_id | Key ID of the API client that issues the identity token. | FlashArray and FlashBlade only. |

| aud | Payload | id | Client ID of the API client that issues the identity token. | FlashArray and FlashBlade only. |

| sub | Payload | | Login name of the array user for whom the token should be issued. This must be a valid user in the system. | FlashArray and FlashBlade only. |

| iss | Payload | issuer | Application ID for the Pure1 or API client's trusted identity issuer on the array. | All products. |

| iat | Payload | | Timestamp of when the identity token was issued. Measured in milliseconds since the UNIX epoch. | All products. |

| exp | Payload | | Timestamp of when the identity token will expire. Measured in milliseconds since the UNIX epoch. | All products. |

Each token must also be signed with the private key that is paired with the API client's public key.

subject_token_type
required
string (formData_OauthSubjectTokenType)
Default: "urn:ietf:params:oauth:token-type:jwt"

An identifier that indicates the type of security token specifed in the subject_token parameter. The Pure Storage REST API supports the JSON Web Token (JWT) as the means for requesting the access token. Set subject_token_type to urn:ietf:params:oauth:token-type:jwt.

Responses

Response samples

Content type
application/json
{
  • "access_token": "eyJraWQiOiJqTlBzL1Ria2c4U2Vua3F3ZmkvbnI4bWxxQ3NPIiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJhdWQiOiI5NDcyMTkwOC1mNzkyLTcxMmUtYTYzOS0wODM5ZmE4MzA5MjIiLCJzdWIiOiJqb2UiLCJyb2xlIjoic3RvcmFnZV9hZG1pbiIsImlzcyI6Imh0dHA6Ly9sb2NhbGhvc3Q6OTAwMCIsImlhdCI6MTU0NDAzNjA1MiwiZXhwIjoxNTQ0MDcyMDUyLCJqdGkiOiJjOTg0MjgyNS1mNGM3LTRiNGUtODdkNy03OWFiZmIxYTUzNDgifQ.pnuYAx0CkmkIG0LDrMAQGRr5Ci4-t5yMto3A7BkmyKnAVHBXG5ZIWwvNkWDLhqbA4YjmG7LZmWHrCVehLy2zy2vRLahFURsd3GTnOaWSyWFIyrwpoO81jQRtOQATtseweuMT_-C8o3oa4MgBNBsuKrhwKQS3oDDpeRPaCRTGev1_xRDxh_K6CWJBTAeOP2pcR4LW6zIJkCLzzkMuyL4aTJWWUjSbl04mcFbyw8r8W1GURrmaDVOvvpT634Hk9-GGh9OMIRlS6OOq7cJKc-RRWn18IK2Gs53V_KYshXTBbnRr990Y_qOX8MaTWOJTqgzsojY02MSVuJ9XDJWoIU3TQytr4K1vM2EvwDZDgl7LuUYUn7vWhbKktFzpeZyyhOjq3eX-ViugYKpIjBcG2f_-fcTPceEWGV82rd6TyVNB5A-v9u2kxCdW198t_kesgVQfuupDeS02cZe0ABLCzEHPiVF17JfiVr6sjkciioxN7Wj_j18ga4U0mdSukauT8yhbgCW1ijTVTFu1VwWebW0s8z3BWMtXdTtZ3BhcZVAdKRF8bOq7nfEbUQGhTn9g7dK-yF050winjtp-VTL2oUtkF5j1v_N8vPNiN9ZdkGJZr7VVZ-qeOJZcjdaRbxL6YB__yT1wkTcKPh8RHz6GUq7Jbyw8VIlcBE2nvJ63d0tH9C4",
  • "issued_token_type": "urn:ietf:params:oauth:token-type:access_token",
  • "token_type": "Bearer",
  • "expires_in": 35999
}

List available API versions

Returns a list of available API versions. No authentication is required to access this endpoint.

header Parameters
X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "version": [
    ]
}

POST login (placeholder)

Exchange an API token for a session token.

header Parameters
X-Request-ID
string

Supplied by client during request or generated by server.

api-token
string
Example: 0f2e2884-9486-c6c2-438c-f50418f2aac3

API token for a user.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ]
}

POST logout (placeholder)

Invalidate a session token.

header Parameters
X-Request-ID
string

Supplied by client during request or generated by server.

x-auth-token
string
Example: 3be3d489-55c6-4643-90ac-a476dbc98812

Session token for a user.

Responses

Connections

A connection gives hosts access to volumes on the array. The system supports private (host-volume) connections and public (host group-volume) connections. A private connection connects one volume to one host. Private connections are typically used for boot volumes and for stand-alone (non-clustered) host applications. A shared connection connects a designated set of hosts (via a host group) to a designated set of volumes, providing the hosts with a consistent "view" of the volumes. All associated hosts use the same LUN to address a given associated volume. All hosts and volumes associated with a host group are automatically connected to each other by virtue of their associations with the group. Shared connections are useful for cluster applications in which several related hosts require consistent (same LUN) connectivity to a set of storage volumes.

List volume connections

Return a list of connections between a volume and its hosts and host groups, and the LUNs used by the associated hosts to address these volumes.

query Parameters
filter
string

Narrows down the results to only the response objects that satisfy the filter criteria.

host_group_names
Array of strings

Performs the operation on the host group specified. Enter multiple names in comma-separated format. A request cannot include a mix of multiple objects with multiple names. For example, a request cannot include a mix of multiple host group names and volume names; instead, at least one of the objects (e.g., host_group_names) must be set to only one name (e.g., hgroup01).

host_names
Array of strings

Performs the operation on the hosts specified. Enter multiple names in comma-separated format. For example, host01,host02. A request cannot include a mix of multiple objects with multiple names. For example, a request cannot include a mix of multiple host names and volume names; instead, at least one of the objects (e.g., host_names) must be set to only one name (e.g., host01).

limit
integer <int32> >= 0
Example: limit=10

Limits the size of the response to the specified number of objects on each page. To return the total number of resources, set limit=0. The total number of resources is returned as a total_item_count value. If the page size requested is larger than the system maximum limit, the server returns the maximum limit, disregarding the requested page size.

offset
integer <int32> >= 0
Example: offset=10

The starting position based on the results of the query in relation to the full set of response objects returned.

protocol_endpoint_names
Array of strings

Performs the operation on the protocol endpoints specified. Enter multiple names in comma-separated format. For example, pe01,pe02. A request cannot include a mix of multiple objects with multiple names. For example, a request cannot include a mix of multiple protocol endpoint names and host names; instead, at least one of the objects (e.g., protocol_endpoint_names) must be set to one name (e.g., pe01).

sort
Array of strings

Returns the response objects in the order specified. Set sort to the name in the response by which to sort. Sorting can be performed on any of the names in the response, and the objects can be sorted in ascending or descending order. By default, the response objects are sorted in ascending order. To sort in descending order, append the minus sign (-) to the name. A single request can be sorted on multiple objects. For example, you can sort all volumes from largest to smallest volume size, and then sort volumes of the same size in ascending order by volume name. To sort on multiple names, list the names as comma-separated values.

total_item_count
boolean

If set to true, the total_item_count matching the specified query parameters is calculated and returned in the response. If set to false, the total_item_count is null in the response. This may speed up queries where the total_item_count is large. If not specified, defaults to false.

volume_names
Array of strings

Performs the operation on the volume specified. Enter multiple names in comma-separated format. For example, vol01,vol02. A request cannot include a mix of multiple objects with multiple names. For example, a request cannot include a mix of multiple volume names and host names; instead, at least one of the objects (e.g., volume_names) must be set to only one name (e.g., vol01).

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "more_items_remaining": false,
  • "total_item_count": 0,
  • "items": [
    ]
}

Create a connection between a volume and host or host group

Create a connection between a volume and a host or host group. The volume_names and host_names or host_group_names query parameters are required.

query Parameters
host_group_names
Array of strings

Performs the operation on the host group specified. Enter multiple names in comma-separated format. A request cannot include a mix of multiple objects with multiple names. For example, a request cannot include a mix of multiple host group names and volume names; instead, at least one of the objects (e.g., host_group_names) must be set to only one name (e.g., hgroup01).

host_names
Array of strings

Performs the operation on the hosts specified. Enter multiple names in comma-separated format. For example, host01,host02. A request cannot include a mix of multiple objects with multiple names. For example, a request cannot include a mix of multiple host names and volume names; instead, at least one of the objects (e.g., host_names) must be set to only one name (e.g., host01).

volume_names
Array of strings

Performs the operation on the volume specified. Enter multiple names in comma-separated format. For example, vol01,vol02. A request cannot include a mix of multiple objects with multiple names. For example, a request cannot include a mix of multiple volume names and host names; instead, at least one of the objects (e.g., volume_names) must be set to only one name (e.g., vol01).

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Request Body schema: application/json
lun
integer <int32> [ 1 .. 4095 ]

The logical unit number (LUN) by which the specified hosts are to address the specified volume. If the LUN is not specified, the system automatically assigns a LUN to the connection. To automatically assign a LUN to a private connection, the system starts at LUN 1 and counts up to the maximum LUN 4095, assigning the first available LUN to the connection. For shared connections, the system starts at LUN 254 and counts down to the minimum LUN 1, assigning the first available LUN to the connection. If all LUNs in the [1...254] range are taken, the system starts at LUN 255 and counts up to the maximum LUN 4095, assigning the first available LUN to the connection.

object

A protocol endpoint (also known as a conglomerate volume) which acts as a proxy through which virtual volumes are created and then connected to VMware ESXi hosts or host groups. The protocol endpoint itself does not serve I/Os; instead, its job is to form connections between FlashArray volumes and ESXi hosts and host groups.

Responses

Request samples

Content type
application/json
{
  • "lun": 7,
  • "protocol_endpoint": {
    }
}

Response samples

Content type
application/json
{
  • "items": [
    ]
}

Break a connection between a volume and its host or host group

Break the connection between a volume and its associated host or host group. The volume_names and host_names or host_group_names query parameters are required.

query Parameters
host_group_names
Array of strings

Performs the operation on the host group specified. Enter multiple names in comma-separated format. A request cannot include a mix of multiple objects with multiple names. For example, a request cannot include a mix of multiple host group names and volume names; instead, at least one of the objects (e.g., host_group_names) must be set to only one name (e.g., hgroup01).

host_names
Array of strings

Performs the operation on the hosts specified. Enter multiple names in comma-separated format. For example, host01,host02. A request cannot include a mix of multiple objects with multiple names. For example, a request cannot include a mix of multiple host names and volume names; instead, at least one of the objects (e.g., host_names) must be set to only one name (e.g., host01).

volume_names
Array of strings

Performs the operation on the volume specified. Enter multiple names in comma-separated format. For example, vol01,vol02. A request cannot include a mix of multiple objects with multiple names. For example, a request cannot include a mix of multiple volume names and host names; instead, at least one of the objects (e.g., volume_names) must be set to only one name (e.g., vol01).

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Host Groups

Host groups implement consistent connections between a set of hosts and one or more volumes. Connections are consistent in the sense that all hosts associated with a host group address a volume connected to the group by the same LUN. Host groups are typically used to provide a common view of storage volumes to the hosts in a clustered application.

List host groups

Return a list of host groups.

query Parameters
filter
string

Narrows down the results to only the response objects that satisfy the filter criteria.

limit
integer <int32> >= 0
Example: limit=10

Limits the size of the response to the specified number of objects on each page. To return the total number of resources, set limit=0. The total number of resources is returned as a total_item_count value. If the page size requested is larger than the system maximum limit, the server returns the maximum limit, disregarding the requested page size.

names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

offset
integer <int32> >= 0
Example: offset=10

The starting position based on the results of the query in relation to the full set of response objects returned.

sort
Array of strings

Returns the response objects in the order specified. Set sort to the name in the response by which to sort. Sorting can be performed on any of the names in the response, and the objects can be sorted in ascending or descending order. By default, the response objects are sorted in ascending order. To sort in descending order, append the minus sign (-) to the name. A single request can be sorted on multiple objects. For example, you can sort all volumes from largest to smallest volume size, and then sort volumes of the same size in ascending order by volume name. To sort on multiple names, list the names as comma-separated values.

total_item_count
boolean

If set to true, the total_item_count matching the specified query parameters is calculated and returned in the response. If set to false, the total_item_count is null in the response. This may speed up queries where the total_item_count is large. If not specified, defaults to false.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "more_items_remaining": false,
  • "total_item_count": 0,
  • "items": [
    ]
}

Create a host group

Create a host group. The names query parameter is required.

query Parameters
names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ]
}

Delete a host group

Delete a host group. The names query parameter is required.

query Parameters
names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Manage a host group

Manage a host group. The names query parameter is required.

query Parameters
names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Request Body schema: application/json
name
string

The new name for the resource.

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "items": [
    ]
}

List host groups associated with hosts

Returns a list of host groups that are associated with hosts.

query Parameters
filter
string

Narrows down the results to only the response objects that satisfy the filter criteria.

group_names
Array of strings

Performs the operation on the unique group name specified. Examples of groups include host groups, pods, protection groups, and volume groups. Enter multiple names in comma-separated format. For example, hgroup01,hgroup02.

limit
integer <int32> >= 0
Example: limit=10

Limits the size of the response to the specified number of objects on each page. To return the total number of resources, set limit=0. The total number of resources is returned as a total_item_count value. If the page size requested is larger than the system maximum limit, the server returns the maximum limit, disregarding the requested page size.

member_names
Array of strings

Performs the operation on the unique member name specified. Examples of members include volumes, hosts, host groups, and directories. Enter multiple names in comma-separated format. For example, vol01,vol02.

offset
integer <int32> >= 0
Example: offset=10

The starting position based on the results of the query in relation to the full set of response objects returned.

sort
Array of strings

Returns the response objects in the order specified. Set sort to the name in the response by which to sort. Sorting can be performed on any of the names in the response, and the objects can be sorted in ascending or descending order. By default, the response objects are sorted in ascending order. To sort in descending order, append the minus sign (-) to the name. A single request can be sorted on multiple objects. For example, you can sort all volumes from largest to smallest volume size, and then sort volumes of the same size in ascending order by volume name. To sort on multiple names, list the names as comma-separated values.

total_item_count
boolean

If set to true, the total_item_count matching the specified query parameters is calculated and returned in the response. If set to false, the total_item_count is null in the response. This may speed up queries where the total_item_count is large. If not specified, defaults to false.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "more_items_remaining": false,
  • "total_item_count": 0,
  • "items": [
    ]
}

List host group performance data

Return real-time and historical performance data, real-time latency data, and average I/O sizes across all volumes, displayed both by host group and as a total across all host groups.

query Parameters
filter
string

Narrows down the results to only the response objects that satisfy the filter criteria.

limit
integer <int32> >= 0
Example: limit=10

Limits the size of the response to the specified number of objects on each page. To return the total number of resources, set limit=0. The total number of resources is returned as a total_item_count value. If the page size requested is larger than the system maximum limit, the server returns the maximum limit, disregarding the requested page size.

names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

offset
integer <int32> >= 0
Example: offset=10

The starting position based on the results of the query in relation to the full set of response objects returned.

sort
Array of strings

Returns the response objects in the order specified. Set sort to the name in the response by which to sort. Sorting can be performed on any of the names in the response, and the objects can be sorted in ascending or descending order. By default, the response objects are sorted in ascending order. To sort in descending order, append the minus sign (-) to the name. A single request can be sorted on multiple objects. For example, you can sort all volumes from largest to smallest volume size, and then sort volumes of the same size in ascending order by volume name. To sort on multiple names, list the names as comma-separated values.

total_item_count
boolean

If set to true, the total_item_count matching the specified query parameters is calculated and returned in the response. If set to false, the total_item_count is null in the response. This may speed up queries where the total_item_count is large. If not specified, defaults to false.

total_only
boolean

If set to true, returns the aggregate value of all items after filtering. Where it makes more sense, the average value is displayed instead. The values are displayed for each name where meaningful. If total_only=true, the items list will be empty.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "more_items_remaining": false,
  • "total_item_count": 0,
  • "items": [
    ],
  • "total": [
    ]
}

List host group performance data by array

Return real-time and historical performance data, real-time latency data, and average I/O size data. The data returned is for each volume that is connected to a host group on the current array and for each volume that is connected to a host group on any remote arrays that are visible to the current array. The data is displayed as a total across all host groups on each array and by individual host group.

query Parameters
filter
string

Narrows down the results to only the response objects that satisfy the filter criteria.

limit
integer <int32> >= 0
Example: limit=10

Limits the size of the response to the specified number of objects on each page. To return the total number of resources, set limit=0. The total number of resources is returned as a total_item_count value. If the page size requested is larger than the system maximum limit, the server returns the maximum limit, disregarding the requested page size.

names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

offset
integer <int32> >= 0
Example: offset=10

The starting position based on the results of the query in relation to the full set of response objects returned.

sort
Array of strings

Returns the response objects in the order specified. Set sort to the name in the response by which to sort. Sorting can be performed on any of the names in the response, and the objects can be sorted in ascending or descending order. By default, the response objects are sorted in ascending order. To sort in descending order, append the minus sign (-) to the name. A single request can be sorted on multiple objects. For example, you can sort all volumes from largest to smallest volume size, and then sort volumes of the same size in ascending order by volume name. To sort on multiple names, list the names as comma-separated values.

total_item_count
boolean

If set to true, the total_item_count matching the specified query parameters is calculated and returned in the response. If set to false, the total_item_count is null in the response. This may speed up queries where the total_item_count is large. If not specified, defaults to false.

total_only
boolean

If set to true, returns the aggregate value of all items after filtering. Where it makes more sense, the average value is displayed instead. The values are displayed for each name where meaningful. If total_only=true, the items list will be empty.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "more_items_remaining": false,
  • "total_item_count": 0,
  • "items": [
    ],
  • "total": [
    ]
}

Hosts

Hosts organize the storage network addresses (iSCSI Qualified Names, NVMe qualified names, or Fibre Channel world wide names) of client computers to identify the host's intiators. Hosts also control communications between clients and volumes. After a volume has been created, establish a host-volume connection so that the host can read data from and write data to the volume.

List hosts

Returns a list of hosts.

query Parameters
filter
string

Narrows down the results to only the response objects that satisfy the filter criteria.

limit
integer <int32> >= 0
Example: limit=10

Limits the size of the response to the specified number of objects on each page. To return the total number of resources, set limit=0. The total number of resources is returned as a total_item_count value. If the page size requested is larger than the system maximum limit, the server returns the maximum limit, disregarding the requested page size.

names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

offset
integer <int32> >= 0
Example: offset=10

The starting position based on the results of the query in relation to the full set of response objects returned.

sort
Array of strings

Returns the response objects in the order specified. Set sort to the name in the response by which to sort. Sorting can be performed on any of the names in the response, and the objects can be sorted in ascending or descending order. By default, the response objects are sorted in ascending order. To sort in descending order, append the minus sign (-) to the name. A single request can be sorted on multiple objects. For example, you can sort all volumes from largest to smallest volume size, and then sort volumes of the same size in ascending order by volume name. To sort on multiple names, list the names as comma-separated values.

total_item_count
boolean

If set to true, the total_item_count matching the specified query parameters is calculated and returned in the response. If set to false, the total_item_count is null in the response. This may speed up queries where the total_item_count is large. If not specified, defaults to false.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "more_items_remaining": false,
  • "total_item_count": 0,
  • "items": [
    ]
}

Create a host

Creates a host. The names query parameter is required.

query Parameters
names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Request Body schema: application/json
object (_chap)

Challenge-Handshake Authentication Protocol (CHAP).

iqns
Array of strings

The iSCSI qualified name (IQN) associated with the host.

nqns
Array of strings

The NVMe Qualified Name (NQN) associated with the host.

personality
string

Determines how the system tunes the array to ensure that it works optimally with the host. Set personality to the name of the host operating system or virtual memory system. Valid values are aix, esxi, hitachi-vsp, hpux, oracle-vm-server, solaris, and vms. If your system is not listed as one of the valid host personalities, do not set the option. By default, the personality is not set.

Array of objects (_reference)

For synchronous replication configurations, sets a host's preferred array to specify which array exposes active/optimized paths to that host. Enter multiple preferred arrays in comma-separated format. If a preferred array is set for a host, then the other arrays in the same pod will expose active/non-optimized paths to that host. If the host is in a host group, preferred_arrays cannot be set because host groups have their own preferred arrays. On a preferred array of a certain host, all the paths on all the ports (for both the primary and secondary controllers) are set up as A/O (active/optimized) paths, while on a non-preferred array, all the paths are A/N (Active/Non-optimized) paths.

wwns
Array of strings

The Fibre Channel World Wide Name (WWN) associated with the host.

Responses

Request samples

Content type
application/json
{
  • "chap": {
    },
  • "iqns": [
    ],
  • "nqns": [
    ],
  • "personality": "string",
  • "preferred_arrays": [
    ],
  • "wwns": [
    ]
}

Response samples

Content type
application/json
{
  • "items": [
    ]
}

Delete a host

Deletes an existing host. All volumes that are connected to the host, either through private or shared connections, must be disconnected from the host before the host can be deleted. The names query parameter is required.

query Parameters
names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Manage a host

Manages an existing host, including its storage network addresses, CHAP, host personality, and preferred arrays, or associate a host to a host group. The names query parameter is required.

query Parameters
names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Request Body schema: application/json
name
string

The new name for the resource.

add_iqns
Array of strings

Adds the specified iSCSI Qualified Names (IQNs) to those already associated with the specified host.

add_nqns
Array of strings

Adds the specified NVMe Qualified Names (NQNs) to those already associated with the specified host.

add_wwns
Array of strings

Adds the specified Fibre Channel World Wide Names (WWNs) to those already associated with the specified host.

object (_chap)

Challenge-Handshake Authentication Protocol (CHAP).

object

The host group to which the host should be associated.

iqns
Array of strings

The iSCSI qualified name (IQN) associated with the host.

nqns
Array of strings

The NVMe Qualified Name (NQN) associated with the host.

personality
string

Determines how the system tunes the array to ensure that it works optimally with the host. Set personality to the name of the host operating system or virtual memory system. Valid values are aix, esxi, hitachi-vsp, hpux, oracle-vm-server, solaris, and vms. If your system is not listed as one of the valid host personalities, do not set the option. By default, the personality is not set.

Array of objects (_reference)

For synchronous replication configurations, sets a host's preferred array to specify which array exposes active/optimized paths to that host. Enter multiple preferred arrays in comma-separated format. If a preferred array is set for a host, then the other arrays in the same pod will expose active/non-optimized paths to that host. If the host is in a host group, preferred_arrays cannot be set because host groups have their own preferred arrays. On a preferred array of a certain host, all the paths on all the ports (for both the primary and secondary controllers) are set up as A/O (active/optimized) paths, while on a non-preferred array, all the paths are A/N (Active/Non-optimized) paths.

remove_iqns
Array of strings

Disassociates the specified iSCSI Qualified Names (IQNs) from the specified host.

remove_nqns
Array of strings

Disassociates the specified NVMe Qualified Names (NQNs) from the specified host.

remove_wwns
Array of strings

Disassociates the specified Fibre Channel World Wide Names (WWNs) from the specified host.

wwns
Array of strings

The Fibre Channel World Wide Name (WWN) associated with the host.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "add_iqns": [
    ],
  • "add_nqns": [
    ],
  • "add_wwns": [
    ],
  • "chap": {
    },
  • "host_group": {
    },
  • "iqns": [
    ],
  • "nqns": [
    ],
  • "personality": "string",
  • "preferred_arrays": [
    ],
  • "remove_iqns": [
    ],
  • "remove_nqns": [
    ],
  • "remove_wwns": [
    ],
  • "wwns": [
    ]
}

Response samples

Content type
application/json
{
  • "items": [
    ]
}

List hosts associated with host groups

Returns a list of hosts that are associated with host groups.

query Parameters
filter
string

Narrows down the results to only the response objects that satisfy the filter criteria.

group_names
Array of strings

Performs the operation on the unique group name specified. Examples of groups include host groups, pods, protection groups, and volume groups. Enter multiple names in comma-separated format. For example, hgroup01,hgroup02.

limit
integer <int32> >= 0
Example: limit=10

Limits the size of the response to the specified number of objects on each page. To return the total number of resources, set limit=0. The total number of resources is returned as a total_item_count value. If the page size requested is larger than the system maximum limit, the server returns the maximum limit, disregarding the requested page size.

member_names
Array of strings

Performs the operation on the unique member name specified. Examples of members include volumes, hosts, host groups, and directories. Enter multiple names in comma-separated format. For example, vol01,vol02.

offset
integer <int32> >= 0
Example: offset=10

The starting position based on the results of the query in relation to the full set of response objects returned.

sort
Array of strings

Returns the response objects in the order specified. Set sort to the name in the response by which to sort. Sorting can be performed on any of the names in the response, and the objects can be sorted in ascending or descending order. By default, the response objects are sorted in ascending order. To sort in descending order, append the minus sign (-) to the name. A single request can be sorted on multiple objects. For example, you can sort all volumes from largest to smallest volume size, and then sort volumes of the same size in ascending order by volume name. To sort on multiple names, list the names as comma-separated values.

total_item_count
boolean

If set to true, the total_item_count matching the specified query parameters is calculated and returned in the response. If set to false, the total_item_count is null in the response. This may speed up queries where the total_item_count is large. If not specified, defaults to false.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "more_items_remaining": false,
  • "total_item_count": 0,
  • "items": [
    ]
}

List host performance data

Return real-time and historical performance data, real-time latency data, and average I/O sizes across all volumes, displayed both by host and as a total across all hosts.

query Parameters
filter
string

Narrows down the results to only the response objects that satisfy the filter criteria.

limit
integer <int32> >= 0
Example: limit=10

Limits the size of the response to the specified number of objects on each page. To return the total number of resources, set limit=0. The total number of resources is returned as a total_item_count value. If the page size requested is larger than the system maximum limit, the server returns the maximum limit, disregarding the requested page size.

names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

offset
integer <int32> >= 0
Example: offset=10

The starting position based on the results of the query in relation to the full set of response objects returned.

sort
Array of strings

Returns the response objects in the order specified. Set sort to the name in the response by which to sort. Sorting can be performed on any of the names in the response, and the objects can be sorted in ascending or descending order. By default, the response objects are sorted in ascending order. To sort in descending order, append the minus sign (-) to the name. A single request can be sorted on multiple objects. For example, you can sort all volumes from largest to smallest volume size, and then sort volumes of the same size in ascending order by volume name. To sort on multiple names, list the names as comma-separated values.

total_item_count
boolean

If set to true, the total_item_count matching the specified query parameters is calculated and returned in the response. If set to false, the total_item_count is null in the response. This may speed up queries where the total_item_count is large. If not specified, defaults to false.

total_only
boolean

If set to true, returns the aggregate value of all items after filtering. Where it makes more sense, the average value is displayed instead. The values are displayed for each name where meaningful. If total_only=true, the items list will be empty.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "more_items_remaining": false,
  • "total_item_count": 0,
  • "items": [
    ],
  • "total": [
    ]
}

List host performance data by array

Return real-time and historical performance data, real-time latency data, and average I/O size data. The data returned is for each volume that is connected to a host on the current array and for each volume that is connected to a host on any remote arrays that are visible to the current array. The data is displayed as a total across all hosts on each array and by individual host.

query Parameters
filter
string

Narrows down the results to only the response objects that satisfy the filter criteria.

limit
integer <int32> >= 0
Example: limit=10

Limits the size of the response to the specified number of objects on each page. To return the total number of resources, set limit=0. The total number of resources is returned as a total_item_count value. If the page size requested is larger than the system maximum limit, the server returns the maximum limit, disregarding the requested page size.

names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

offset
integer <int32> >= 0
Example: offset=10

The starting position based on the results of the query in relation to the full set of response objects returned.

sort
Array of strings

Returns the response objects in the order specified. Set sort to the name in the response by which to sort. Sorting can be performed on any of the names in the response, and the objects can be sorted in ascending or descending order. By default, the response objects are sorted in ascending order. To sort in descending order, append the minus sign (-) to the name. A single request can be sorted on multiple objects. For example, you can sort all volumes from largest to smallest volume size, and then sort volumes of the same size in ascending order by volume name. To sort on multiple names, list the names as comma-separated values.

total_item_count
boolean

If set to true, the total_item_count matching the specified query parameters is calculated and returned in the response. If set to false, the total_item_count is null in the response. This may speed up queries where the total_item_count is large. If not specified, defaults to false.

total_only
boolean

If set to true, returns the aggregate value of all items after filtering. Where it makes more sense, the average value is displayed instead. The values are displayed for each name where meaningful. If total_only=true, the items list will be empty.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "more_items_remaining": false,
  • "total_item_count": 0,
  • "items": [
    ],
  • "total": [
    ]
}

Volumes

A volume represents a container that manages the storage space on the array. After a volume has been created, establish a host-volume connection so that the host can read data from and write data to the volume. Furthermore, protect the volume data through asynchronous replication to a remote array, synchronous replication between remote arrays, and replication to external storage systems.

List volumes

Return a list of volumes, including those pending eradication.

query Parameters
destroyed
boolean

If set to true, lists only destroyed objects that are in the eradication pending state. If set to false, lists only objects that are not destroyed. For destroyed objects, the time remaining is displayed in milliseconds.

filter
string

Narrows down the results to only the response objects that satisfy the filter criteria.

ids
Array of strings

Performs the operation on the unique resource IDs specified. Enter multiple resource IDs in comma-separated format. The ids or names parameter is required, but they cannot be set together.

limit
integer <int32> >= 0
Example: limit=10

Limits the size of the response to the specified number of objects on each page. To return the total number of resources, set limit=0. The total number of resources is returned as a total_item_count value. If the page size requested is larger than the system maximum limit, the server returns the maximum limit, disregarding the requested page size.

names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

offset
integer <int32> >= 0
Example: offset=10

The starting position based on the results of the query in relation to the full set of response objects returned.

sort
Array of strings

Returns the response objects in the order specified. Set sort to the name in the response by which to sort. Sorting can be performed on any of the names in the response, and the objects can be sorted in ascending or descending order. By default, the response objects are sorted in ascending order. To sort in descending order, append the minus sign (-) to the name. A single request can be sorted on multiple objects. For example, you can sort all volumes from largest to smallest volume size, and then sort volumes of the same size in ascending order by volume name. To sort on multiple names, list the names as comma-separated values.

total_item_count
boolean

If set to true, the total_item_count matching the specified query parameters is calculated and returned in the response. If set to false, the total_item_count is null in the response. This may speed up queries where the total_item_count is large. If not specified, defaults to false.

total_only
boolean

If set to true, returns the aggregate value of all items after filtering. Where it makes more sense, the average value is displayed instead. The values are displayed for each name where meaningful. If total_only=true, the items list will be empty.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "more_items_remaining": false,
  • "total_item_count": 0,
  • "items": [
    ],
  • "total": [
    ]
}

Create a volume

Create one or more virtual storage volumes of the specified size. If provisioned is not specified, the size of the new volume defaults to 1 MB in size. The names query parameter is required.

query Parameters
names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

overwrite
boolean

If set to true, overwrites an existing object during an object copy operation. If set to false or not set at all and the target name is an existing object, the copy operation fails. Required if the source body parameter is set and the source overwrites an existing object during the copy operation.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Request Body schema: application/json
destroyed
boolean

If set to true, destroys a resource. Once set to true, the time_remaining value will display the amount of time left until the destroyed resource is permanently eradicated. Before the time_remaining period has elapsed, the destroyed resource can be recovered by setting destroyed=false. Once the time_remaining period has elapsed, the resource is permanently eradicated and can no longer be recovered.

provisioned
integer <int64> <= 4503599627370496

Sets the virtual size of the volume. Measured in bytes.

object

Sets QoS limits.

object

The source volume of a volume copy.

subtype
string

The type of volume. Valid values are protocol_endpoint and regular.

Responses

Request samples

Content type
application/json
{
  • "destroyed": true,
  • "provisioned": 0,
  • "qos": {
    },
  • "source": {
    },
  • "subtype": "string"
}

Response samples

Content type
application/json
{
  • "items": [
    ]
}

Eradicate a volume

Eradicate a volume that has been destroyed and is pending eradication. Eradicated volumes cannot be recovered. Volumes are destroyed through the PATCH method. The ids or names parameter is required, but they cannot be set together.

query Parameters
ids
Array of strings

Performs the operation on the unique resource IDs specified. Enter multiple resource IDs in comma-separated format. The ids or names parameter is required, but they cannot be set together.

names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Manage a volume

Renames or destroys a volume. To rename a volume, set name to the new name. To move a volume, set the pod or volume group parameters. To destroy a volume, set destroyed=true. To recover a volume that has been destroyed and is pending eradication, set destroyed=false. Sets the bandwidth and IOPs limits of a volume group. The ids or names parameter is required, but they cannot be set together.

query Parameters
ids
Array of strings

Performs the operation on the unique resource IDs specified. Enter multiple resource IDs in comma-separated format. The ids or names parameter is required, but they cannot be set together.

names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

truncate
boolean

If set to true, reduces the size of a volume during a volume resize operation. When a volume is truncated, Purity automatically takes an undo snapshot, providing a 24-hour window during which the previous contents can be retrieved. After truncating a volume, its provisioned size can be subsequently increased, but the data in truncated sectors cannot be retrieved. If set to false or not set at all and the volume is being reduced in size, the volume copy operation fails. Required if the provisioned parameter is set to a volume size that is smaller than the original size.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Request Body schema: application/json
destroyed
boolean

If set to true, destroys a resource. Once set to true, the time_remaining value will display the amount of time left until the destroyed resource is permanently eradicated. Before the time_remaining period has elapsed, the destroyed resource can be recovered by setting destroyed=false. Once the time_remaining period has elapsed, the resource is permanently eradicated and can no longer be recovered.

name
string

The new name for the resource.

object

Moves the volume into the specified pod.

provisioned
integer <int64> <= 4503599627370496

Updates the virtual size of the volume. Measured in bytes.

object

Sets QoS limits.

object

Adds the volume to the specified volume group.

Responses

Request samples

Content type
application/json
{
  • "destroyed": true,
  • "name": "string",
  • "pod": {
    },
  • "provisioned": 0,
  • "qos": {
    },
  • "volume_group": {
    }
}

Response samples

Content type
application/json
{
  • "items": [
    ]
}

List volume performance data

Returns real-time and historical performance data, real-time latency data, and average I/O sizes for each volume and and as a total of all volumes across the entire array.

query Parameters
destroyed
boolean

If set to true, lists only destroyed objects that are in the eradication pending state. If set to false, lists only objects that are not destroyed. For destroyed objects, the time remaining is displayed in milliseconds.

filter
string

Narrows down the results to only the response objects that satisfy the filter criteria.

end_time
integer <int64>

Displays historical performance data for the specified time window, where start_time is the beginning of the time window, and end_time is the end of the time window. The start_time and end_time parameters are specified in milliseconds since the UNIX epoch. If start_time is not specified, the start time will default to one resolution before the end time, meaning that the most recent sample of performance data will be displayed. If end_timeis not specified, the end time will default to the current time. Include the resolution parameter to display the performance data at the specified resolution. If not specified, resolution defaults to the lowest valid resolution.

resolution
integer <int64> >= 0
Example: resolution=30000

The number of milliseconds between samples of historical data. For array-wide performance metrics (/arrays/performance endpoint), valid values are 1000 (1 second), 30000 (30 seconds), 300000 (5 minutes), 1800000 (30 minutes), 7200000 (2 hours), 28800000 (8 hours), and 86400000 (24 hours). For performance metrics on storage objects (<object name>/performance endpoint), such as volumes, valid values are 30000 (30 seconds), 300000 (5 minutes), 1800000 (30 minutes), 7200000 (2 hours), 28800000 (8 hours), and 86400000 (24 hours). For space metrics, (<object name>/space endpoint), valid values are 300000 (5 minutes), 1800000 (30 minutes), 7200000 (2 hours), 28800000 (8 hours), and 86400000 (24 hours). Include the start_time parameter to display the performance data starting at the specified start time. If start_time is not specified, the start time will default to one resolution before the end time, meaning that the most recent sample of performance data will be displayed. Include the end_time parameter to display the performance data until the specified end time. If end_timeis not specified, the end time will default to the current time. If the resolution parameter is not specified but either the start_time or end_time parameter is, then resolution will default to the lowest valid resolution.

start_time
integer <int64>

Displays historical performance data for the specified time window, where start_time is the beginning of the time window, and end_time is the end of the time window. The start_time and end_time parameters are specified in milliseconds since the UNIX epoch. If start_time is not specified, the start time will default to one resolution before the end time, meaning that the most recent sample of performance data will be displayed. If end_timeis not specified, the end time will default to the current time. Include the resolution parameter to display the performance data at the specified resolution. If not specified, resolution defaults to the lowest valid resolution.

ids
Array of strings

Performs the operation on the unique resource IDs specified. Enter multiple resource IDs in comma-separated format. The ids or names parameter is required, but they cannot be set together.

limit
integer <int32> >= 0
Example: limit=10

Limits the size of the response to the specified number of objects on each page. To return the total number of resources, set limit=0. The total number of resources is returned as a total_item_count value. If the page size requested is larger than the system maximum limit, the server returns the maximum limit, disregarding the requested page size.

names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

offset
integer <int32> >= 0
Example: offset=10

The starting position based on the results of the query in relation to the full set of response objects returned.

sort
Array of strings

Returns the response objects in the order specified. Set sort to the name in the response by which to sort. Sorting can be performed on any of the names in the response, and the objects can be sorted in ascending or descending order. By default, the response objects are sorted in ascending order. To sort in descending order, append the minus sign (-) to the name. A single request can be sorted on multiple objects. For example, you can sort all volumes from largest to smallest volume size, and then sort volumes of the same size in ascending order by volume name. To sort on multiple names, list the names as comma-separated values.

total_item_count
boolean

If set to true, the total_item_count matching the specified query parameters is calculated and returned in the response. If set to false, the total_item_count is null in the response. This may speed up queries where the total_item_count is large. If not specified, defaults to false.

total_only
boolean

If set to true, returns the aggregate value of all items after filtering. Where it makes more sense, the average value is displayed instead. The values are displayed for each name where meaningful. If total_only=true, the items list will be empty.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "more_items_remaining": false,
  • "total_item_count": 0,
  • "items": [
    ],
  • "total": [
    ]
}

List volume performance data by array

Returns real-time and historical performance data, real-time latency data, and average I/O size data. The data returned is for each volume on the current array and for each volume on any remote arrays that are visible to the current array. The data is grouped by individual volumes and as a total across all volumes on each array.

query Parameters
destroyed
boolean

If set to true, lists only destroyed objects that are in the eradication pending state. If set to false, lists only objects that are not destroyed. For destroyed objects, the time remaining is displayed in milliseconds.

filter
string

Narrows down the results to only the response objects that satisfy the filter criteria.

end_time
integer <int64>

Displays historical performance data for the specified time window, where start_time is the beginning of the time window, and end_time is the end of the time window. The start_time and end_time parameters are specified in milliseconds since the UNIX epoch. If start_time is not specified, the start time will default to one resolution before the end time, meaning that the most recent sample of performance data will be displayed. If end_timeis not specified, the end time will default to the current time. Include the resolution parameter to display the performance data at the specified resolution. If not specified, resolution defaults to the lowest valid resolution.

resolution
integer <int64> >= 0
Example: resolution=30000

The number of milliseconds between samples of historical data. For array-wide performance metrics (/arrays/performance endpoint), valid values are 1000 (1 second), 30000 (30 seconds), 300000 (5 minutes), 1800000 (30 minutes), 7200000 (2 hours), 28800000 (8 hours), and 86400000 (24 hours). For performance metrics on storage objects (<object name>/performance endpoint), such as volumes, valid values are 30000 (30 seconds), 300000 (5 minutes), 1800000 (30 minutes), 7200000 (2 hours), 28800000 (8 hours), and 86400000 (24 hours). For space metrics, (<object name>/space endpoint), valid values are 300000 (5 minutes), 1800000 (30 minutes), 7200000 (2 hours), 28800000 (8 hours), and 86400000 (24 hours). Include the start_time parameter to display the performance data starting at the specified start time. If start_time is not specified, the start time will default to one resolution before the end time, meaning that the most recent sample of performance data will be displayed. Include the end_time parameter to display the performance data until the specified end time. If end_timeis not specified, the end time will default to the current time. If the resolution parameter is not specified but either the start_time or end_time parameter is, then resolution will default to the lowest valid resolution.

start_time
integer <int64>

Displays historical performance data for the specified time window, where start_time is the beginning of the time window, and end_time is the end of the time window. The start_time and end_time parameters are specified in milliseconds since the UNIX epoch. If start_time is not specified, the start time will default to one resolution before the end time, meaning that the most recent sample of performance data will be displayed. If end_timeis not specified, the end time will default to the current time. Include the resolution parameter to display the performance data at the specified resolution. If not specified, resolution defaults to the lowest valid resolution.

ids
Array of strings

Performs the operation on the unique resource IDs specified. Enter multiple resource IDs in comma-separated format. The ids or names parameter is required, but they cannot be set together.

limit
integer <int32> >= 0
Example: limit=10

Limits the size of the response to the specified number of objects on each page. To return the total number of resources, set limit=0. The total number of resources is returned as a total_item_count value. If the page size requested is larger than the system maximum limit, the server returns the maximum limit, disregarding the requested page size.

names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

offset
integer <int32> >= 0
Example: offset=10

The starting position based on the results of the query in relation to the full set of response objects returned.

sort
Array of strings

Returns the response objects in the order specified. Set sort to the name in the response by which to sort. Sorting can be performed on any of the names in the response, and the objects can be sorted in ascending or descending order. By default, the response objects are sorted in ascending order. To sort in descending order, append the minus sign (-) to the name. A single request can be sorted on multiple objects. For example, you can sort all volumes from largest to smallest volume size, and then sort volumes of the same size in ascending order by volume name. To sort on multiple names, list the names as comma-separated values.

total_item_count
boolean

If set to true, the total_item_count matching the specified query parameters is calculated and returned in the response. If set to false, the total_item_count is null in the response. This may speed up queries where the total_item_count is large. If not specified, defaults to false.

total_only
boolean

If set to true, returns the aggregate value of all items after filtering. Where it makes more sense, the average value is displayed instead. The values are displayed for each name where meaningful. If total_only=true, the items list will be empty.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "more_items_remaining": false,
  • "total_item_count": 0,
  • "items": [
    ],
  • "total": [
    ]
}

List volume space information

Return provisioned size and physical storage consumption data for each volume.

query Parameters
names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

destroyed
boolean

If set to true, lists only destroyed objects that are in the eradication pending state. If set to false, lists only objects that are not destroyed. For destroyed objects, the time remaining is displayed in milliseconds.

filter
string

Narrows down the results to only the response objects that satisfy the filter criteria.

end_time
integer <int64>

Displays historical performance data for the specified time window, where start_time is the beginning of the time window, and end_time is the end of the time window. The start_time and end_time parameters are specified in milliseconds since the UNIX epoch. If start_time is not specified, the start time will default to one resolution before the end time, meaning that the most recent sample of performance data will be displayed. If end_timeis not specified, the end time will default to the current time. Include the resolution parameter to display the performance data at the specified resolution. If not specified, resolution defaults to the lowest valid resolution.

resolution
integer <int64> >= 0
Example: resolution=30000

The number of milliseconds between samples of historical data. For array-wide performance metrics (/arrays/performance endpoint), valid values are 1000 (1 second), 30000 (30 seconds), 300000 (5 minutes), 1800000 (30 minutes), 7200000 (2 hours), 28800000 (8 hours), and 86400000 (24 hours). For performance metrics on storage objects (<object name>/performance endpoint), such as volumes, valid values are 30000 (30 seconds), 300000 (5 minutes), 1800000 (30 minutes), 7200000 (2 hours), 28800000 (8 hours), and 86400000 (24 hours). For space metrics, (<object name>/space endpoint), valid values are 300000 (5 minutes), 1800000 (30 minutes), 7200000 (2 hours), 28800000 (8 hours), and 86400000 (24 hours). Include the start_time parameter to display the performance data starting at the specified start time. If start_time is not specified, the start time will default to one resolution before the end time, meaning that the most recent sample of performance data will be displayed. Include the end_time parameter to display the performance data until the specified end time. If end_timeis not specified, the end time will default to the current time. If the resolution parameter is not specified but either the start_time or end_time parameter is, then resolution will default to the lowest valid resolution.

start_time
integer <int64>

Displays historical performance data for the specified time window, where start_time is the beginning of the time window, and end_time is the end of the time window. The start_time and end_time parameters are specified in milliseconds since the UNIX epoch. If start_time is not specified, the start time will default to one resolution before the end time, meaning that the most recent sample of performance data will be displayed. If end_timeis not specified, the end time will default to the current time. Include the resolution parameter to display the performance data at the specified resolution. If not specified, resolution defaults to the lowest valid resolution.

ids
Array of strings

Performs the operation on the unique resource IDs specified. Enter multiple resource IDs in comma-separated format. The ids or names parameter is required, but they cannot be set together.

limit
integer <int32> >= 0
Example: limit=10

Limits the size of the response to the specified number of objects on each page. To return the total number of resources, set limit=0. The total number of resources is returned as a total_item_count value. If the page size requested is larger than the system maximum limit, the server returns the maximum limit, disregarding the requested page size.

offset
integer <int32> >= 0
Example: offset=10

The starting position based on the results of the query in relation to the full set of response objects returned.

sort
Array of strings

Returns the response objects in the order specified. Set sort to the name in the response by which to sort. Sorting can be performed on any of the names in the response, and the objects can be sorted in ascending or descending order. By default, the response objects are sorted in ascending order. To sort in descending order, append the minus sign (-) to the name. A single request can be sorted on multiple objects. For example, you can sort all volumes from largest to smallest volume size, and then sort volumes of the same size in ascending order by volume name. To sort on multiple names, list the names as comma-separated values.

total_item_count
boolean

If set to true, the total_item_count matching the specified query parameters is calculated and returned in the response. If set to false, the total_item_count is null in the response. This may speed up queries where the total_item_count is large. If not specified, defaults to false.

total_only
boolean

If set to true, returns the aggregate value of all items after filtering. Where it makes more sense, the average value is displayed instead. The values are displayed for each name where meaningful. If total_only=true, the items list will be empty.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "more_items_remaining": false,
  • "total_item_count": 0,
  • "items": [
    ],
  • "total": [
    ]
}

Volume Snapshots

Volume snapshots are immutable, point-in-time images of the contents of one or more volumes. There are two types of volume snapshots: volume snapshots and protection group volume snapshots. A volume snapshot is a snapshot that captures the contents of a single volume. A protection group volume snapshot is a volume snapshot that is created from a group of volumes that are part of the same protection group. All of the volume snapshots created from a protection group snapshot are point-in-time consistent with each other.

List volume snapshots

Return a list of volume snapshots, including those pending eradication.

query Parameters
destroyed
boolean

If set to true, lists only destroyed objects that are in the eradication pending state. If set to false, lists only objects that are not destroyed. For destroyed objects, the time remaining is displayed in milliseconds.

filter
string

Narrows down the results to only the response objects that satisfy the filter criteria.

ids
Array of strings

Performs the operation on the unique resource IDs specified. Enter multiple resource IDs in comma-separated format. The ids or names parameter is required, but they cannot be set together.

limit
integer <int32> >= 0
Example: limit=10

Limits the size of the response to the specified number of objects on each page. To return the total number of resources, set limit=0. The total number of resources is returned as a total_item_count value. If the page size requested is larger than the system maximum limit, the server returns the maximum limit, disregarding the requested page size.

names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

offset
integer <int32> >= 0
Example: offset=10

The starting position based on the results of the query in relation to the full set of response objects returned.

sort
Array of strings

Returns the response objects in the order specified. Set sort to the name in the response by which to sort. Sorting can be performed on any of the names in the response, and the objects can be sorted in ascending or descending order. By default, the response objects are sorted in ascending order. To sort in descending order, append the minus sign (-) to the name. A single request can be sorted on multiple objects. For example, you can sort all volumes from largest to smallest volume size, and then sort volumes of the same size in ascending order by volume name. To sort on multiple names, list the names as comma-separated values.

source_ids
Array of strings

Performs the operation on the source ID specified. Enter multiple source IDs in comma-separated format.

source_names
Array of strings

Performs the operation on the source name specified. Enter multiple source names in comma-separated format. For example, name01,name02.

total_item_count
boolean

If set to true, the total_item_count matching the specified query parameters is calculated and returned in the response. If set to false, the total_item_count is null in the response. This may speed up queries where the total_item_count is large. If not specified, defaults to false.

total_only
boolean

If set to true, returns the aggregate value of all items after filtering. Where it makes more sense, the average value is displayed instead. The values are displayed for each name where meaningful. If total_only=true, the items list will be empty.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "more_items_remaining": false,
  • "total_item_count": 0,
  • "items": [
    ],
  • "total": [
    ]
}

Generate a volume snapshot

Create a point-in-time snapshot of the contents of a volume. The source_ids or source_names parameter is required, but they cannot be set together.

query Parameters
on
string

Performs the operation on the target name specified. For example, targetName01.

source_ids
Array of strings

Performs the operation on the source ID specified. Enter multiple source IDs in comma-separated format.

source_names
Array of strings

Performs the operation on the source name specified. Enter multiple source names in comma-separated format. For example, name01,name02.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Request Body schema: application/json
destroyed
boolean

If set to true, destroys a resource. Once set to true, the time_remaining value will display the amount of time left until the destroyed resource is permanently eradicated. Before the time_remaining period has elapsed, the destroyed resource can be recovered by setting destroyed=false. Once the time_remaining period has elapsed, the resource is permanently eradicated and can no longer be recovered.

suffix
string

The suffix that is appended to the source_name value to generate the full volume snapshot name in the form VOL.SUFFIX. If the suffix is not specified, the system constructs the snapshot name in the form VOL.NNN, where VOL is the volume name, and NNN is a monotonically increasing number.

Responses

Request samples

Content type
application/json
{
  • "destroyed": true,
  • "suffix": "string"
}

Response samples

Content type
application/json
{
  • "items": [
    ]
}

Eradicate a volume snapshot

Eradicate a volume snapshot that has been destroyed and is pending eradication. Eradicated volumes snapshots cannot be recovered. Volume snapshots are destroyed through the PATCH method. The ids or names parameter is required, but they cannot be set together.

query Parameters
ids
Array of strings

Performs the operation on the unique resource IDs specified. Enter multiple resource IDs in comma-separated format. The ids or names parameter is required, but they cannot be set together.

names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Manage a volume snapshot

Rename, destroy, or recover a volume snapshot. To rename the suffix of a volume snapshot, set name to the new suffix name. To recover a volume snapshot that has been destroyed and is pending eradication, set destroyed=true. The ids or names parameter is required, but they cannot be set together.

query Parameters
ids
Array of strings

Performs the operation on the unique resource IDs specified. Enter multiple resource IDs in comma-separated format. The ids or names parameter is required, but they cannot be set together.

names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Request Body schema: application/json
destroyed
boolean

If set to true, destroys a resource. Once set to true, the time_remaining value will display the amount of time left until the destroyed resource is permanently eradicated. Before the time_remaining period has elapsed, the destroyed resource can be recovered by setting destroyed=false. Once the time_remaining period has elapsed, the resource is permanently eradicated and can no longer be recovered.

name
string

The new name for the resource.

Responses

Request samples

Content type
application/json
{
  • "destroyed": true,
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "items": [
    ]
}

List volume snapshots with transfer statistics

Returns a list of volume snapshots and their transfer statistics.

query Parameters
names
Array of strings

Performs the operation on the unique name specified. Enter multiple names in comma-separated format. For example, name01,name02.

destroyed
boolean

If set to true, lists only destroyed objects that are in the eradication pending state. If set to false, lists only objects that are not destroyed. For destroyed objects, the time remaining is displayed in milliseconds.

filter
string

Narrows down the results to only the response objects that satisfy the filter criteria.

ids
Array of strings

Performs the operation on the unique resource IDs specified. Enter multiple resource IDs in comma-separated format. The ids or names parameter is required, but they cannot be set together.

limit
integer <int32> >= 0
Example: limit=10

Limits the size of the response to the specified number of objects on each page. To return the total number of resources, set limit=0. The total number of resources is returned as a total_item_count value. If the page size requested is larger than the system maximum limit, the server returns the maximum limit, disregarding the requested page size.

offset
integer <int32> >= 0
Example: offset=10

The starting position based on the results of the query in relation to the full set of response objects returned.

sort
Array of strings

Returns the response objects in the order specified. Set sort to the name in the response by which to sort. Sorting can be performed on any of the names in the response, and the objects can be sorted in ascending or descending order. By default, the response objects are sorted in ascending order. To sort in descending order, append the minus sign (-) to the name. A single request can be sorted on multiple objects. For example, you can sort all volumes from largest to smallest volume size, and then sort volumes of the same size in ascending order by volume name. To sort on multiple names, list the names as comma-separated values.

source_ids
Array of strings

Performs the operation on the source ID specified. Enter multiple source IDs in comma-separated format.

source_names
Array of strings

Performs the operation on the source name specified. Enter multiple source names in comma-separated format. For example, name01,name02.

total_item_count
boolean

If set to true, the total_item_count matching the specified query parameters is calculated and returned in the response. If set to false, the total_item_count is null in the response. This may speed up queries where the total_item_count is large. If not specified, defaults to false.

total_only
boolean

If set to true, returns the aggregate value of all items after filtering. Where it makes more sense, the average value is displayed instead. The values are displayed for each name where meaningful. If total_only=true, the items list will be empty.

header Parameters
Authorization
string

Access token (in JWT format) required to use any API endpoint (except /oauth2, /login, and /logout)

X-Request-ID
string

Supplied by client during request or generated by server.

Responses

Response samples

Content type
application/json
{
  • "more_items_remaining": false,
  • "total_item_count": 0,
  • "items": [
    ],
  • "total": [
    ]
}