UFM Infra REST API
Add GUIDs to PKey
Description - Adds a list of configured GUIDs to PKey.
Request URL -
POST /ufmRestV2/plugin/fast_api/resources/pkeys
Request Content Type - Application/json
Return value – Transaction ID
Note – There is an option to add an empty PKey using
POST /ufmRestV2/plugin/fast_api/resources/pkeys/add
Request Data Parameters -
Name
Value
Default
Description
Mandatory/Optional
guids
["…",… ".."]Each GUID is a hexadecimal string with a minimum length of 16 characters and maximum length of 20 characters
None
List of port GUIDs
Mandatory
pkey
Hexadecimal string between "0x0"-"0x7fff" exclusive
None
Network PKey
Mandatory
index0
Boolean: true/false
False
If true, the API will store the PKey at index 0 of the PKey table of the GUID.
Optional
ip_over_ib
Boolean: true/false
True
PKey is a member in a multicast group that uses IP over InfiniBand
Optional
membership
“full”, “limited”
"full"
“
full
”- members with full membership can communicate with all hosts (members) within the network/partition
“
limited
” - members with limited membership cannot communicate with other members with limited membership. However, communication is allowed between every other combination of membership types.
Optional
memberships
[“full”, “limited”, ...]List of “full” or “limited” comma-separated strings. It must be the same length as the GUIDs list. Each value by an index represents a GUID membership.
[]
List of memberships to allow users to create or modify different membership per GUID in same PKey. GUID index 0 in the “guids” list will take index 0 from the memberships list and so on (by order)
This parameter is optional. This parameter conflicts with the “membership” parameter. Users must select either a list of memberships or just one membership for all GUIDs.
Remove GUIDs from PKey
Description - Removes a list of configured GUIDs from PKey
Request URL - DELETE /ufmRestV2/plugin/fast_api/resources/pkeys/
/guids/ , ,…
Return value – transaction ID
Request Data Parameters -
Name
Value
Default
Description
Mandatory/Optional
guids
Each GUID is a hexadecimal string with a minimum length of 16 characters and maximum length of 20 characters
None
List of port GUIDs
Mandatory
pkey
Hexadecimal string between "0x0"-"0x7fff" exclusive
None
Network PKey
Mandatory
Delete PKey
Description - Deletes a PKey and all of its configured GUIDs .
Request URL -
DELETE /ufmRestV2/plugin/fast_api/resources/pkeys/<pkey>/delete
Return value – transaction ID
Get Specific PKey
Description - returns information about the specified PKey. The "guids_data" parameter enables retrieving information on the GUIDs of the specified PKey as well.
Request URL - GET /ufmRestV2/plugin/fast_api/resources/pkeys/
?guids_data= – hexadecimal pkey in the range of 0x0-0x7fff
Response Data Example – without GUID data
{
"partition"
:"api_pkey_0x1"
,"ip_over_ib"
:true
}Response Data Example – with GUID data
{
"guids"
: [ {"membership"
:"full"
,"guid"
:"0002c903000e0b78"
,"index0"
:false
} ],"ip_over_ib"
:true
,"partition"
:"api_pkey_0x1"
}
Status Codes
200 – OK
Get All PKeys
Description - Returns a list of all PKeys.
Request URL -
GET /ufmRestV2/plugin/fast_api/resources/pkeys
Response Data Example
[
"0x1"
,"0x2"
,"0x3"
]
Get Transaction ID
Description – Returns a transaction ID’s status
Request URL –
GET /ufmRestV2/plugin/
fast_api
/transaction/<ID>
Optional Responses -
"WAITING"
"IN_PROGRESS"
"CONFIGURED_SM"
"FAILED"
"WAITING_FOR_SM"
Create SHARP Reservation
Description - Creates a new SHARP reservation for an application
Request URL - POST /ufmRestV2/plugin/fast_api/resources/sharp_reservation
Request Content Type - Application/json
Return value – transaction ID
Request Data Parameters
Name
Value
Default
Description
Mandatory/Optional
app_id
String
None
Application ID for the SHARP reservation
Mandatory
pkey
Hexadecimal string between "0x0"-"0x7fff"
"0x7fff"
Partition key for the SHARP reservation
Optional
port_guids
["...", "..."] List of port GUIDs
[]
List of port GUIDs to include in the SHARP reservation
Optional
app_resources_limit
Integer
-1
Resource limit for the application
Optional
Response Data Example:
{
"transaction_id"
:"123456"
}
Update SHARP Reservation
Description - Updates an SHARP reservation
Request URL -
PUT /ufmRestV2/plugin/
fast_api/resources/sharp_reservation
Request Content Type - Application/json
Return Value - transaction ID
Request Data Parameters
Name
Value
Default
Description
Mandatory/Optional
app_id
String
None
Application ID for the SHARP reservation
Mandatory
pkey
Hexadecimal string between "0x0"-"0x7fff"
"0x7fff"
Partition key for the SHARP reservation
Optional
port_guids
["...", "..."] List of port GUIDs
[]
List of port GUIDs to include in the SHARP reservation
Optional
Response Data Example:
{
"transaction_id"
:"123456"
}
Delete SHARP Reservation
Description - Deletes an existing SHARP reservation
Request URL - DELETE /ufmRestV2/plugin/fast_api/resources/sharp_reservation/{app_id}
Return value – transaction ID
Request Data Parameters:
Name
Value
Default
Description
Mandatory/Optional
app_id
String
None
Application ID for the SHARP reservation
Mandatory
Response Data Example:
{
"transaction_id"
:"123456"
}
Get All SHARP Reservations
Description - Retrieves details on all SHARP reservations
Request URL - GET /ufmRestV2/plugin/fast_api/resources/sharp_reservations
Response Data Example:
[ {
"app_id"
:"app1"
,"pkey"
:"0x7fff"
,"port_guids"
: ["0x123456789abcdef"
,"0x987654321fedcba"
],"app_resources_limit"
:100
}, {"app_id"
:"app2"
,"pkey"
:"0x7fff"
,"port_guids"
: ["0x123456789abcdef"
],"app_resources_limit"
: -1
} ]
Get Transaction Status
Description - Retrieves transaction status by transaction ID (TID)
Request URL -
GET /ufmRestV2/plugin/
fast_api/resources/sharp_reservation/transaction/{tid}
Response Data Example:
{
"transaction_id"
:"sharp_res_123456"
,"status"
:"CONFIGURED_SM"
}Optional Responses:
"WAITING"
"IN_PROGRESS"
"CONFIGURED_SM"
"FAILED"
"WAITING_FOR_SM"