Service levels
Use the methods listed in the following table to retrieve, create, modify, and delete service levels.
HTTP Method | Path | Description |
---|---|---|
|
|
Retrieve all service levels. |
|
|
Retrieve a service level by ID. |
|
|
Create a new service level. |
|
|
Modify service level details by ID. |
|
|
Delete a service level. |
Service level attributes
The following table lists the service level attributes.
Attribute | Type | Description |
---|---|---|
|
String |
The unique identifier for the service level. |
|
String |
The service level name. |
|
String |
The description of the service level. |
|
String |
Service level quality of service (QoS) name. Allowed values: nse_value, nse_standard, nse_performance, and nse_extreme. |
|
Boolean |
Indicates whether the service level is available for use. |
|
Boolean |
Indicates whether the service level has been retired. |
|
Integer |
The maximum possible IOPS per TiB. |
|
Integer |
The minimum expected IOPS per TiB. |
|
Integer |
The absolute minimum IOPS which is used as an override when the expected IOPS is less than this value. |
|
String |
The peak IOPS allocation. Allowed values: allocated_space and used_space. |
|
Integer |
The I/O block size (KiB). |
|
Integer |
The minimum size (GiB). |
|
Integer |
The maximum size (GiB). |
|
Integer |
The maximum peak IOPS for the service level. |
|
Integer |
The maximum expected IOPS. |
|
Integer |
The autogrow maximum percent. |
|
– |
The list of ONTAP aggregates.
"ontap_aggregates": [ { "cluster_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "aggr_name": "string", "aggr_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "node_name": "node01" } ] |
|
– |
"primary_volume_defaults": { "snapshot_auto_delete_target_free_space": 3, "auto_size_mode": "grow_shrink" |
Retrieve service levels
Use the method listed in the following table to retrieve all service levels.
HTTP Method | Path | Description | Parameters |
---|---|---|---|
|
|
Retrieve all service levels. |
None |
Required request body attributes: none
Request body example:
none
Response body example:
{ "status": { "user_message": "Okay. Returned 3 records.", "verbose_message": "", "code": 200 }, "result": { "total_records": 3, "records": [ { "name": "standard", "description": "Best suited for general purpose workloads", "slo": "1000IOPS/TB", "min_size": 137438953472, "io_block_size_kb": 32, "min_size_gb": 10, "max_size_gb": 40960, "min_iops": 100, "peak_iops_per_tb": 1000, "expected_iops_per_tb": 700, "max_peak_iops": 40000, "max_expected_iops": 28000, "max_peak_throughput": 1250, "max_expected_throughput": 875 }, { "name": "extreme", "description": "Best suited for performance-critical workloads", "slo": "12000IOPS/TB", "min_size": 91625968981, "io_block_size_kb": 32, "min_size_gb": 10, "max_size_gb": 10240, "min_iops": 500, "peak_iops_per_tb": 12000, "expected_iops_per_tb": 8000, "max_peak_iops": 120000, "max_expected_iops": 60000, "max_peak_throughput": 3750, "max_expected_throughput": 1875 }, { "name": "premium", "description": "Best suited for databases and high performance workloads", "slo": "4000IOPS/TB", "min_size": 137438953472, "io_block_size_kb": 32, "min_size_gb": 10, "max_size_gb": 10240, "min_iops": 300, "peak_iops_per_tb": 4000, "expected_iops_per_tb": 3000, "max_peak_iops": 40000, "max_expected_iops": 30000, "max_peak_throughput": 1250, "max_expected_throughput": 937 } ] } }
Retrieve service levels by name
Use the method listed in the following table to retrieve service levels by name.
HTTP Method | Path | Description | Parameters |
---|---|---|---|
|
|
Retrieve a service level by name. |
|
Required request body attributes: none
Request body example:
none
Response body example:
{ "status": { "user_message": "Okay. Returned 1 record.", "verbose_message": "", "code": 200 }, "result": { "returned_records": 1, "records": [ { "name": "premium", "description": "Best suited for databases and high performance workloads", "slo": "4096IOPS/TB", "min_size": 137438953472, "io_block_size_kb": 32, "min_size_gb": 10, "max_size_gb": 10240, "min_iops": 300, "peak_iops_per_tb": 4096, "expected_iops_per_tb": 3000, "max_peak_iops": 40000, "max_expected_iops": 30000, "max_peak_throughput": 1250, "max_expected_throughput": 937 } ] } }
Create a service level
Use the method listed in the following table to create a service level.
HTTP Method | Path | Description | Parameters |
---|---|---|---|
|
|
Create a service level. |
None |
Required request body attributes: name
, policy_name
Request body example:
{ "name": "MyServiceLevelName", "description": "My new service level description", "policy_name": "nse_value", "available": true, "grandfathered": false, "peak_iops_per_tb": 1000, "expected_iops_per_tb": 700, "absolute_min_iops": 100, "peak_iops_allocation": "allocated_space", "io_block_size_kb": 32, "min_size_gb": 10, "max_size_gb": 40960, "max_peak_iops": 20000, "max_expected_iops": 5000, "autogrow_max_percent": 3, "ontap_aggregates": [ { "cluster_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "aggr_name": "string", "aggr_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "node_name": "node01" } ], "primary_volume_defaults": { "snapshot_auto_delete_target_free_space": 3, "auto_size_mode": "grow_shrink" } }
Response body example:
{ "status": { "user_message": "Okay. New resource created.", "verbose_message": "", "code": 201 }, "result": { "total_records": 1, "records": [ { "name": "MyServiceLevelName", "description": "My new service level description", "slo": "1000IOPS/TB", "min_size": 0, "io_block_size_kb": 32, "min_size_gb": 10, "max_size_gb": 40960, "min_iops": 100, "peak_iops_per_tb": 1000, "expected_iops_per_tb": 700, "max_peak_iops": 20000, "max_expected_iops": 5000, "max_peak_throughput": 625, "max_expected_throughput": 156 } ] } }
Modify a service level
Use the method listed in the following table to modify a service level.
HTTP Method | Path | Description | Parameters |
---|---|---|---|
|
|
Modify the details of a service level. |
|
Required request body attributes: none
Request body example:
{ "name": "MyNewServiceLevelName", "description": "Service level description", "policy_name": "nse_value", "available": false, "grandfathered": false, "peak_iops_per_tb": 1000, "expected_iops_per_tb": 700, "absolute_min_iops": 100, "peak_iops_allocation": "allocated_space", "io_block_size_kb": 32, "min_size_gb": 10, "max_size_gb": 40960, "max_peak_iops": 20000, "max_expected_iops": 5000, "autogrow_max_percent": 3, "ontap_aggregates": [ { "cluster_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "aggr_name": "string", "aggr_uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "node_name": "node01" } ], "primary_volume_defaults": { "snapshot_auto_delete_target_free_space": 3, "auto_size_mode": "grow_shrink" } }
Response body example:
TBA
Delete service level by ID
Use the method listed in the following table to delete a service level by ID.
HTTP Method | Path | Description | Parameters |
---|---|---|---|
|
|
Delete the service level identified by ID. |
|
Request body example:
none
Response body example:
No content for succesful delete