Retrieve system recommendations for storage placement in NetApp Console local deployment
POST /v1/organizations/{organizationId}/systemrecommendations
Calculates the cluster and SVM storage in the fleet to make recommendations based on the constraints and storage classes. Returns a list of system recommendations for optimal storage placement.
|
|
Returns three recommendations by default. |
Parameters
| Name | Type | In | Required | Description |
|---|---|---|---|---|
organizationId |
string |
path |
True |
Organization ID |
Request Body
System recommendations request payload
| Name | Type | Required | Description |
|---|---|---|---|
capacityPolicyId |
string |
False |
Optional capacity policy identifier for the recommendation. |
fleetId |
string |
False |
Fleet identifier for the recommendation. |
performancePolicyId |
string |
False |
Optional performance policy identifier for the recommendation. |
securityPolicyId |
string |
False |
Optional security policy identifier for the recommendation. |
size |
integer |
True |
Size of the storage, in bytes. |
storageClassId |
string |
False |
Optional storage class identifier for the recommendation. |
storageCount |
integer |
False |
Number of storage units requested, used to specify LUN count. |
storageType |
string |
True |
Type of storage requested. |
type |
string |
True |
Media type of the resource. Defined values are:
|
version |
string |
True |
Version of the resource schema. Defined values are:
|
Example request
{
"fleetId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"size": 107374182400,
"storageClassId": "888c5g50-f6gc-7d84-c5b3-c89241970f54",
"storageCount": 4,
"storageType": "LUN",
"type": "application/vnd.netapp.bxp.systemrecommendations",
"version": 1
}
Response
Status: 200, Successful response with system recommendations
| Name | Type | Required | Description |
|---|---|---|---|
count |
integer |
False |
Number of recommendations provided |
items |
array[items] |
False |
List of placement recommendations.
|
Example response
{
"count": 1,
"items": [
{
"availableCapacity": 536870912000,
"name": "onprem-cluster-01",
"ontapVersion": "9.16.1",
"personality": "UNIFIED_ONTAP",
"recommendation": "STRICT",
"svms": [
{
"aggregates": [
{
"id": "bbb28j83-i9jk-0l17-f8g6-faa65243h81",
"name": "dataAggr",
"recommendation": "STRICT"
}
],
"enabledProtocols": [
"NFS",
"CIFS"
],
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"name": "svm1",
"recommendation": "STRICT"
},
{
"aggregates": [
{
"id": "bbb28j83-i9jk-0l17-f8g6-faa65243h81",
"name": "dataAggr",
"recommendation": "STRICT"
},
{
"id": "ccc39k94-j0kl-1m28-g9h7-gbb76354i92",
"name": "dataAggr2",
"recommendation": "RELAXED"
}
],
"enabledProtocols": [
"NFS"
],
"id": "4fb96g75-6828-5673-c4gd-3d074g77bgb7",
"name": "svm2",
"recommendation": "STRICT"
}
],
"totalCapacity": 1073741824000,
"type": "application/vnd.netapp.bxp.systemrecommendations",
"usedCapacity": 536870912000,
"version": 1,
"workingEnvironmentId": "OnPremWorkingEnvironment-abc123xyz"
}
]
}
Error
Status: 400, Bad request
| Name | Type | Required | Description |
|---|---|---|---|
correlationId |
string |
False |
Internal UUID representing the request or trace ID related. |
detail |
string |
False |
Details about the problem. |
invalidParams |
array[invalidParams] |
False |
List of invalid parameters. |
status |
string |
True |
HTTP error code related to the problem. |
title |
string |
True |
Title description of the problem. |
type |
string |
True |
Content-type of the object. |
Example error response
{
"detail": "The supplied query parameters are invalid.",
"status": "400",
"title": "Invalid query parameters",
"type": "https://bluexp.netapp.io/problems/1"
}
Error
Status: 401, Unauthorized
| Name | Type | Required | Description |
|---|---|---|---|
correlationId |
string |
False |
Internal UUID representing the request or trace ID related. |
detail |
string |
False |
Details about the problem. |
invalidParams |
array[invalidParams] |
False |
List of invalid parameters. |
status |
string |
True |
HTTP error code related to the problem. |
title |
string |
True |
Title description of the problem. |
type |
string |
True |
Content-type of the object. |
Example error response
{
"detail": "The request is missing the required bearer token.",
"status": "401",
"title": "Missing bearer token",
"type": "https://bluexp.netapp.io/problems/1"
}
Error
Status: 403, Forbidden
| Name | Type | Required | Description |
|---|---|---|---|
correlationId |
string |
False |
Internal UUID representing the request or trace ID related. |
detail |
string |
False |
Details about the problem. |
invalidParams |
array[invalidParams] |
False |
List of invalid parameters. |
status |
string |
True |
HTTP error code related to the problem. |
title |
string |
True |
Title description of the problem. |
type |
string |
True |
Content-type of the object. |
Example error response
{
"detail": "The requested operation isn't permitted.",
"status": "403",
"title": "Operation not permitted",
"type": "https://bluexp.netapp.io/problems/11"
}
Error
Status: 404, Not found
| Name | Type | Required | Description |
|---|---|---|---|
correlationId |
string |
False |
Internal UUID representing the request or trace ID related. |
detail |
string |
False |
Details about the problem. |
invalidParams |
array[invalidParams] |
False |
List of invalid parameters. |
status |
string |
True |
HTTP error code related to the problem. |
title |
string |
True |
Title description of the problem. |
type |
string |
True |
Content-type of the object. |
Example error response
{
"detail": "The collection specified in the request URI wasn't found.",
"status": "404",
"title": "Collection not found",
"type": "https://bluexp.netapp.io/problems/2"
}
Definitions
See Definitions
aggregates
| Name | Type | Required | Description |
|---|---|---|---|
id |
string |
False |
Aggregate identifier |
name |
string |
False |
Aggregate name |
recommendation |
string |
False |
Indicates whether the performance policy is followed or relaxed while recommending this aggregate. Defined values are:
|
svms
| Name | Type | Required | Description |
|---|---|---|---|
aggregates |
array[aggregates] |
False |
List of aggregates in the SVM. |
enabledProtocols |
array[string] |
True |
List of enabled protocols on the SVM. |
id |
string |
True |
Recommended Storage Virtual Machine identifier. |
name |
string |
True |
Storage Virtual Machine name. |
recommendation |
string |
False |
Indicates whether the performance policy is followed or relaxed while recommending this Storage VM. If any aggregate under this SVM is recommended with a strict policy, the SVM recommendation will also be strict. Defined values are:
|
items
| Name | Type | Required | Description |
|---|---|---|---|
availableCapacity |
integer |
True |
Available capacity of the system, in bytes. |
name |
string |
True |
Recommended cluster name. |
ontapVersion |
string |
False |
ONTAP version of the system.
|
personality |
string |
False |
The personality of the ONTAP cluster. Defined values are:
|
recommendation |
string |
False |
Indicates whether the performance policy is followed or relaxed while recommending this cluster. If any SVM under this cluster is recommended with a strict policy, the cluster recommendation will also be strict. Defined values are:
|
svms |
array[svms] |
True |
List of Storage Virtual Machines in the system. |
totalCapacity |
integer |
True |
Total capacity of the system, in bytes. |
type |
string |
True |
Media type of the resource. Defined values are:
|
usedCapacity |
integer |
False |
Used capacity of the system, in bytes. |
version |
string |
True |
Version of the resource schema. Defined values are:
|
workingEnvironmentId |
string |
True |
Recommended system identifier. |
invalidParams
| Name | Type | Required | Description |
|---|---|---|---|
name |
string |
True |
Name of the invalid parameter. |
reason |
string |
True |
Reason why the parameter is invalid. |