OpenManage Enterprise Power Manager RESTful API Guide version 2.0 June 2021 Rev.
Notes, cautions, and warnings NOTE: A NOTE indicates important information that helps you make better use of your product. CAUTION: A CAUTION indicates either potential damage to hardware or loss of data and tells you how to avoid the problem. WARNING: A WARNING indicates a potential for property damage, personal injury, or death. © 2019 - 2021 Dell Inc. or its subsidiaries. All rights reserved. Dell, EMC, and other trademarks are trademarks of Dell Inc. or its subsidiaries.
Contents Chapter 1: About this document.................................................................................................... 7 Chapter 2: Overview......................................................................................................................8 Introduction to Power Manager.......................................................................................................................................8 RESTful application programming interface........................
/api/PowerService/Actions/PowerService.AddGroups......................................................................................... 28 POST method to add Groups................................................................................................................................... 28 /api/PowerService/Actions/PowerService.RemoveGroups................................................................................. 29 POST method to remove Monitored Groups.....................................
POST method to Disable EPR.................................................................................................................................. 58 Chapter 9: Unmonitored devices................................................................................................. 59 api/PowerService/UserDefinedEntities/Actions/UserDefinedEntities.Create................................................. 59 POST method to add unmonitored device............................................................
/api/PowerService/PowerDevice/Device(arg1)/Details........................................................................................83 Get method to retrieve power device details by id.............................................................................................83 Chapter 12: Virtual machines....................................................................................................... 85 /api/PowerService/VirtualEntities/VirtualMachines .........................................
1 About this document This document contains information about the resource models for Dell EMC OpenManage Enterprise Power Manager. Each RESTful API specification includes the URI, method, parameters, request codes, and response codes. For OpenManage Enterprise RESTful API specifications, see OpenManage Enterprise and OpenManage Enterprise - Modular Edition RESTful API Guide .
2 Overview RESTful API support in Dell EMC OpenManage Enterprise Power Manager Power Manager supports RESTful API. APIs on these products enhance the systems management capabilities. The RESTful interface is provided over HTTPS in JSON format that is based on ODATA v4 usable by clients, scripts, and browser-based GUIs. The APIs enable you to build console management tools that are based on common programming and scripting languages such as Python, Java, and C.
JSON data Console API represents data using JSON. JSON is a lightweight data-interchange format that is readable and can also be easily parsed by machines. JSON is based on a subset of the JavaScript Programming Language. JSON uses a text format that is language independent but uses conventions familiar to programmers of the C-family of languages such as C, C++, C#, Java, JavaScript, PERL, and Python. These properties make JSON an ideal data-interchange language.
3 Key integration concepts This section describes the key integration concepts that are applicable to the use cases and resource model. Topics: • • • • • • • • • • • • • Base URI Security Authentication Authorization Resource addressing Resource operations Security considerations Data filtering Data sorting Data pagination Request headers Response codes Response headers Base URI REST API tree structure The console software provides a web-based hypermedia driven API using a simple folder structure.
Resource model https://[IP or DNS name]/api/$metadata Security To improve security, only HTTPS is supported. You can also update the SSL self-signed certificate with a custom certificate. For example, you can upload a PKCS-12 certificate or sign an application-generated Certificate Signing Request (CSR). Authentication Several common schemes are available for enabling authentication of REST requests. Basic Authentication and X-Auth-Token Authentication are some of the common schemes.
Authorization Table 1. Authentication and authorization requirements Actions Authentication required Authorization required Read operation on any instrumentation data Y Y Modify instrumentation data Y Y Invoke actions Y Y View service root N N View metadata document N N View OData service document N N View message registry Y N View Redfish version URI N N View JSONSchemaFile resource URI N/A N/A View JSON schemas URI N/A N/A OME Table 2.
Resource addressing Each managed resource must be uniquely addressable using a distinct URI. The URI syntax must be intuitive and should indicate the relationships with a parent resource. There are several ways to address specific resources either as instances of specific resource classes or within an associated parent context.
Data filtering The console software provides filtering options on certain URIs that return a collection of entities. Using this feature, the clients can extract a selected set of records using comparison operators on attributes of the model entity behind the collection. The relevant URI sections contain the information about the attributes and the operators that support filtering.
Get first four devices from the Device collection /api/DeviceService/Devices?$top=4 NOTE: For more information about $skip and $top, see OData Version 4.0 Part 1: Protocol at docs.oasis-open.org. Request headers The request header represents headers in the client HTTPS request that are used to communicate client-preferences to the service end point. The service provides the supported preference in the response header. The following table lists a few examples of request headers: Table 4.
Table 5. HTTP response codes (continued) Request Response code Service unavailable 503 - Service unavailable For more information about response codes, see Status Code Definitions on the W3.org website. Response headers The following table lists a few examples of response headers: Table 6. Examples of response headers Response Header Description Example Connection Control options for the current connection and list of hop-by-hop request fields.
4 Settings Topics: • • /api/PowerService/Settings /api/PowerService/Actions/PowerService.UpdateSettings /api/PowerService/Settings This URI represents the list of power settings. Supported versions of Power Manager: ● 2.0 ● 1.2 ● 1.1 ● 1.0 GET method for Power Service Settings To get power and temperature monitoring units, metric gathering interval, date range configuration for Top Energy Consumers widgets and Report settings. Description This method returns the list of settings that are configured.
{ }, { }, { }, { } ] } "@odata.type": "#PowerService.Settings", "Id": 5, "Name": "BUILT_IN_REPORT_TIME_INTERVAL", "DefaultValue": 90, "Value": 90 "@odata.type": "#PowerService.Settings", "Id": 6, "Name": "BUILT_IN_REPORT_TIME_GRANULARITY", "DefaultValue": 2, "Value": 2 "@odata.type": "#PowerService.Settings", "Id": 7, "Name": "TOP_ENERGY_CONSUMERS_DURATION","DefaultValue": 8, "Value": 8 "@odata.type": "#PowerService.
HTTP response codes Example 200 Input: { "Settings":[ { "Id": 1, "Value": 1 }, { "Id": 2, "Value": 1 }, { "Id": 3, "Value": 15 }, { "Id": 5, "Value": 90 }, { "Id": 6, "Value": 2 }, { "Id": 7, "Value": 8 }, { "Id": 8, "Value": 1 } ] } Output: { "Status": true } Table 8.
Table 10. Power Display Unit Enumeration Enumeration Value Description 1 Watt 2 BTU/Hr Table 11. Metric Gathering Interval Enumeration Enumeration Value Description 15 15 Minutes 30 30 Minutes 60 60 Minutes Table 12. Built-in Report Time Interval Enumeration Enumeration Value Description 1 1 Day 7 7 Days 15 15 Days 30 30 Days 90 90 Days 180 180 Days 365 365 Days Table 13. Built In Report Time Granularity Enumeration Enumeration Value Description 1 1 Hour 2 1 Day Table 14.
5 Monitored Devices Topics: • • • • • /api/PowerService/Actions/PowerService.AddDevices /api/PowerService/Actions/PowerService.RemoveDevices /api/PowerService/MonitoredDevices /api/JobService/Jobs /api/PowerService/DeviceStatistics /api/PowerService/Actions/ PowerService.AddDevices This URI is to add the devices to Power Manager. Supported versions of Power Manager: ● ● ● ● 2.0 1.2 1.1 1.0 POST method to add Devices This method adds device(s) to Power Manager.
/api/PowerService/Actions/ PowerService.RemoveDevices This URI removes the device(s) from Power Manager monitored devices. Supported versions of Power Manager: ● ● ● ● 2.0 1.2 1.1 1.0 POST method to remove Monitored Devices This method removes device(s) from Power Manager. Description Removes device(s) from Power Manager. Privilege DEVICE_CONFIGURATION HTTP response codes 200 Example Input: { "Ids": [10128,10127] } Output: { "Status": "SUCCESS" } Table 17.
GET method for Monitored Devices This method returns monitored device details. Description Returns the monitored device details. Privilege VIEW HTTP response codes 200 Example Input: None Output: { "@odata.context": "/api/ $metadata#Collection(PowerService.MonitoredDevice)", "@odata.count": 1, "value": [ { "@odata.type": "#PowerService.MonitoredDevice", "@odata.id": "/api/PowerService/MonitoredDevices(10079)", "Id": 10079, "DeviceName": "100.96.27.
Table 19. Attributes (continued) Attribute Name Description ConnectionState Connection State of the device HealthStatus Health Status of the device ManagedState Managed State of the device AddedOn Date when the device is added. GroupAssociation Group to which the device belongs to. GroupAssociation.Id Group Id of the group to which the device belongs to. GroupAssociation.Name Group Name device belongs to. LicenseStatus License status of the device.
● ● ● ● ● ● ● ManagedState ConnectionState HealthStatus AddedOn IsPartOfGroup Location SlotNumber Table 22.
HTTP response codes Example 201 Input: { "JobName": "WorkingSet Management Task", "JobDescription": "WorkingSet Management Task - User Triggered", "Schedule": "startnow", "State": "Enabled", "JobType": { "Id": 306, "Name": "WorkingSet_Management_Task" }, "Params": [ { "Key": "23", "Value": "" } ], "Targets": [ { "Id": 500, "Data": "", "TargetType": { "Id": 6000, "Name": "GROUP" } } ] } Output: { "Id": 10219, "JobName": "WorkingSet Management Task", "JobDescription": "WorkingSet Management Task - User Trig
"Key": "23", "Value": "" } } ], "Visible": true, "Editable": true, "Builtin": false, "UserGenerated": true, "IdUserOwner": 10068 /api/PowerService/DeviceStatistics URI to represent total power manager capable and power manager monitored devices. Supported versions of Power Manager: ● 2.0 GET method to list device statistics This method represents the Power Manager capable, and Power Manager monitored devices.
6 Monitored Groups Topics: • • • • • • • /api/PowerService/Actions/PowerService.AddGroups /api/PowerService/Actions/PowerService.RemoveGroups /api/PowerService/CapableGroups /api/PowerService/CapableGroups()/Devices /api/PowerService/Groups()/Devices /api/PowerService/MonitoredGroups /api/PowerService/MonitoredGroups()/Devices /api/PowerService/Actions/PowerService.AddGroups This URI adds the group(s) to Power Manager. Supported versions of Power Manager: ● ● ● ● 2.0 1.2 1.
/api/PowerService/Actions/ PowerService.RemoveGroups This URI removes the group(s) from Power Manager. Supported versions of Power Manager: ● ● ● ● 2.0 1.2 1.1 1.0 POST method to remove Monitored Groups This method removes group(s) from Power Manager. Description Removes Group(s) from Power Manager Privilege GROUP_MANAGEMENT HTTP response codes 200 Example Input: { "Ids": [10131,10132] } Output: { "Status": "SUCCESS" } Table 25.
GET method for Representing Capable Groups This method represents the capable groups. Description Returns a list of capable groups. Privilege VIEW HTTP response codes 200 Example Input: None Output: { "@odata.context":"/api/$metadata#Collection(PowerService.CapableGroups)", "@odata.count": 1, "value": [ { "@odata.type": "#PowerService.CapableGroups", "@odata.
● 1.0 GET method for Representing All Devices from Capable Group This method represents all the devices from capable group. Description Returns all the devices belonging to a capable group. Privilege VIEW HTTP response codes 200 Example Input: None Output: { "@odata.context": "/api/$metadata#Collection(PowerService.Device)", "@odata.count": 1, "value": [ { "@odata.type": "#PowerService.Device", "Id": 10069, "DeviceName": "SKCLUSN1.tejd.bdcsv.
Table 30. Filters (continued) Field Operator DeviceName contains ServiceTag contains Model contains Type eq PowerState eq ManagedState eq ConnectionState eq HealthStatus eq IsAddedIndividually eq List of all the sort options that this method supports: ● Id ● DeviceName ● ServiceTag ● Model ● Type ● PowerState ● ManagedState ● ConnectionState ● HealthStatus ● IsAddedIndividually /api/PowerService/Groups()/Devices This URI represents all the Power Manager capable devices.
} ] { "@odata.type": "#PowerService.Device", "Id": 10069, "DeviceName": "SKCLUSN1.tejd.bdcsv.lab", "ServiceTag": "4xBzewP", "Type": 1000, "PowerState": 17, "ManagedState": 3000, "ConnectionState": true, "HealthStatus": 4000, "Model": "PowerEdge R940", "InWorkingSet": true, "IsPolicyCapable": true, "IsAddedIndividually": true } Table 31. Attributes Attribute Name Description Id Device Id. DeviceName Device Name. ServiceTag Device Service Tag. Type Device Type. PowerState Power State of device.
● ● ● ● ● ● ● ● ● ● Id DeviceName ServiceTag Model Type PowerState ManagedState ConnectionState HealthStatus IsAddedIndividually /api/PowerService/MonitoredGroups This URI represents groups which are monitored by the Power Manager. Table 33. Filters Filter Name Description Top Required number of records Skip Number of records to skip. Default value is zero. Supported versions of Power Manager: ● ● ● ● 2.0 1.2 1.1 1.
EPRStatus" }, "Policies@odata.navigationLink": "/api/PowerService/ MonitoredGroups(10690)/Policies" } ] } Table 34. Attributes Attribute name Description Id Group Id ParentId Parent group Id Type Type of the group Name Name of the group Description Description of the Group AddedOn Date of the group is added. DevicesInWorkingSet Number of devices available in monitored list TemperatureTriggeredPolicyExist Temperature policy is created or not. Table 35.
Supported versions of Power Manager: ● ● ● ● 2.0 1.2 1.1 1.0 GET method for Representing All Devices from a MonitoredGroup This method represents all the device of a monitored group. Description Returns all the devices belongs to a Monitored group. Privilege VIEW HTTP response codes 200 Example Input: None Output: { "@odata.context": "/api/$metadata#Collection(PowerService.Device)", "@odata.count": 1, "value": [ { "@odata.type": "#PowerService.Device", "Id": 10069, "DeviceName": "SKCLUSN1.tejd.
Table 37. Attributes (continued) Attribute name Description IsAddedIndividually Added as individual device for monitoring or not.
7 Power Policy Topics: • • • • • • • • • • • api/PowerService/PowerBounds /api/PowerService/Policies /api/PowerService/Policies() /api/PowerService/Policies()/PolicyDetails /api/PowerService/MonitoredDevices()/Policies /api/PowerService/MonitoredGroups()/Policies /api/PowerService/Actions/PowerService.CreatePolicy /api/PowerService/Actions/PowerService. EditPolicy /api/PowerService/Actions/PowerService.EnablePolicies /api/PowerService/Actions/PowerService.
Table 38. Attributes (continued) Attribute Description UpperBound Device Upper power bound. NOTE: Only single entity ID is supported and pass only device ids. /api/PowerService/Policies This URI represents the power policies that are created Table 39. Filters Filter Name Description Top Required number of records Skip Number of records to skip. Default value is zero. Supported versions of Power Manager: ● ● ● ● 2.0 1.2 1.1 1.
"Type": 1, "Name": "Group Policy", "Description": "Updated policy on group", "Enabled": true, "AssignedTo": "DeviceGroup", "CreatedTime": "2019-06-19 12:07:23.935816", "ExecutionState": 3, "IsAssociatedToGroup": false "PolicyDetails": { "@odata.id": "/api/PowerService/Policies(30)/ PolicyDetails" } } ] } Table 40. Attributes Attribute Name Description PolicyId ID of policy Name Name associated with the policy. Type Type of policy.
Table 43. Type (continued) Enumeration Value Description 2 Temperature-triggered policy List of all the sort options that this method supports: ● ● ● ● ● ● ● ● PolicyId Name Description Enabled AssignedTo CreatedTime Type IsAssociatedToGroup /api/PowerService/Policies() This URI represents a specific policy. Supported versions of Power Manager: ● ● ● ● 2.0 1.2 1.1 1.0 GET method for Policies() This method returns a specific policy.
} ] } Table 44. Attributes Attribute Name Description PolicyId ID of policy Name Name associated with the policy. Type Type of policy. Description Description associated with the policy Enabled Indicates if the policy is enabled or disabled. AssignedTo Entity on which the policy is assigned to. CreatedTime Time at which the policy is created. ExecutionState State associated with the policy. PolicyDetails Link to the detailed view of the policy.
{ } "@odata.context": "/api/$metadata#PowerService.PowerPolicyModel", "@odata.type": "#PowerService.PowerPolicyModel", "@odata.id": "/api/PowerService/Policies(30)/PolicyDetails", "PolicyId": 30, "Name": "Group Policy", "Type": 1, "Description": "Power policy created on group", "Enabled": true, "Schedule": { "StartTime": "", "EndTime": "", "StartDate": "", "EndDate": "", "DaysOfTheWeek": [] }, "Devices": [ { "Id": 10070, "DeviceName": "100.96.25.
Table 46. Attributes (continued) Attribute name Description Devices.PowerCapValue Power cap value for the device. Devices.Ip IP address of the device. Group Target group of the policy (if applicable). Group.Id ID of the group. Group.PowerCapValue Power cap value for the group. Group.TemperatureThreshold Temperature threshold value for the group. Group.Name Name of the group. Group.Description Description of the group.
} ] } "PolicyDescription": "Updated policy on group", "PolicyState": true Table 47. Attributes Attribute name Description Id ID of the policy Type Type of the policy. PolicyName Name associated with the policy. PolicyDescription Description associated with the policy PolicyState Indicates if the policy is enabled or disabled /api/PowerService/MonitoredGroups()/ Policies This URI returns the power policies that are created on the specified group.
Table 48. Attributes Attribute name Description Id ID of the policy. Type Type of the policy. NOTE: If you have not provided the Type attribute value, by default the value is considered as one. PolicyName Name associated with the policy. PolicyDescription Description associated with the policy. PolicyState Indicates if the policy is enabled or disabled. Table 49. Policy type Enumeration Value Policy Type 1 Static 2 Temperature-triggered /api/PowerService/Actions/ PowerService.
} "Targets": [ { "Id": 10070, "PowerCapValue": 16661 } ] Input to create Temperature Triggered policy: { "Name": "Temp 02", "Description": "Description 01", "Enabled": true, "Type": 2, "Targets": [ { "Id": 10189, "TemperatureThreshold": 21 } ] } Output: { "Id": 32 } Table 50. Attributes Attribute name Description Name Name associated with the policy. Description Description associated with the policy Enabled Indicates if the policy is enabled or disabled.
NOTE: StartTime and EndTime must be left empty for policy which is active entire day. NOTE: StartDate and EndDate must be left empty for policy which is active forever. NOTE: DaysOfTheWeek must be set as empty array for policy which is active on every day. /api/PowerService/Actions/PowerService. EditPolicy This URI edits a policy. Supported versions of Power Manager: ● ● ● ● 2.0 1.2 1.1 1.0 POST method for Editing Policy This method edits a power policy.
} ] Output: { "Id": 30 } Table 52. Attributes Attribute name Description Id ID of the power policy Name Name associated with the policy. Description Description associated with the policy Enabled Indicates if the policy is enabled or disabled. Schedule Indicates when the policy is enabled StartTime Time at which the policy interval starts. EndTime Time at which the policy interval ends. StartDate Date from which the policy is active. EndDate Date until which the policy is active.
POST method for Enabling Policy This method enables power policies.. Description Enables power policies. Privilege DEVICE_CONFIGURATION HTTP response codes 200 Example Input: { "Ids": [30, 32] } Output: { "Ids": [ 30, 32 ] } Table 54. Attributes Attribute name Description Ids List of IDs of power policies NOTE: To enable all power policies, provide value for Ids as -1. /api/PowerService/Actions/ PowerService.DisablePolicies This method disables a policy.
Example Input: { "Ids": [30, 32] } Output: { "Ids": [ 30, 32 ] } Table 55. Attributes Attribute name Description Ids List of IDs of power policies NOTE: To disable all power policies, provide value for Ids as -1. /api/PowerService/Actions/ PowerService.DeletePolicies This method deletes a policy. Supported versions of Power Manager: ● ● ● ● 2.0 1.2 1.1 1.0 POST method for Deleting Policy This method deletes power policies. Description Deletes power policies.
} Table 56. Attributes Attribute name Description Ids List of IDs of power policies NOTE: To delete all power policies, provide value for Ids as -1.
8 Emergency Power Reduction Topics: • • • • • /api/PowerService/MonitoredDevices()/EPRStatus /api/PowerService/MonitoredGroups()/EPRStatus /api/PowerService/EPR /api/PowerService/Actions/PowerService.EnableEPR /api/PowerService/Actions/PowerService.DisableEPR /api/PowerService/MonitoredDevices()/ EPRStatus This URI represents the EPR status of the Power Manager monitored devices Supported versions of Power Manager: ● ● ● ● 2.0 1.2 1.1 1.
Table 58. EPR Type Enumeration Enumeration Value Description 1 Power Throttle Down (0 power cap value). 2 Power Off. Table 59. EPR Source Enumeration Enumeration Value Description 1 Manual 2 Temperature-triggered /api/PowerService/MonitoredGroups()/ EPRStatus This URI represents the EPR status of the Power Manager monitored groups Supported versions of Power Manager: ● ● ● ● 2.0 1.2 1.1 1.
Table 61. EPR Type Enumeration Enumeration Value Description 1 Power Throttle Down (0 power cap value). 2 Power Off. Table 62. EPR Source Enumeration Enumeration Value Description 1 Manual 2 Temperature-triggered /api/PowerService/EPR This URI represents the list of Emergency Power Reduction applied on the targets. Supported versions of Power Manager: ● ● ● ● 2.0 1.2 1.1 1.
Table 63. Attributes Attribute Description PolicyId Id of the EPR created. Name Name of the EPR. Description Description of the EPR. Enabled Status of the EPR. AssignedTo Target on which EPR is applied. CreatedTime Time at which EPR is created. IsEprPowerDown True, if EPR type is Power Down. IsAssociatedToGroup True, if EPR is associated to a group. ExecutionState State of the EPR execution. Table 64.
Table 66. EprPowerDown (continued) Value Description True Shutdown /api/PowerService/Actions/PowerService.EnableEPR This URI enables you to enable EPR on the target. Supported versions of Power Manager: ● ● ● ● 2.0 1.2 1.1 1.0 POST method to Enable EPR This method enables EPR on the specified target. Description Enables EPR on the specified target Privilege DEVICE_CONFIGURATION HTTP response codes 200 Example Input: { "Target": 10149, "Action": "POWER_THROTTLE" } Output: { "Id": 7 } Table 67.
● 1.0 POST method to Disable EPR This method disables EPR on the specified target. Description Disbales EPR on the specified target Privilege DEVICE_CONFIGURATION HTTP response codes 200 Example Input: { "Ids": [6,7] } Output: { "Ids": [6,7] } Table 68. Attributes Attribute Name Description Id EPR Ids to be disabled. NOTE: To disable all the EPRs, provide value for Ids as -1.
9 Unmonitored devices Topics: • • • • • api/PowerService/UserDefinedEntities/Actions/UserDefinedEntities.Create api/PowerService/UserDefinedEntities/Actions/UserDefinedEntities.Update api/PowerService/UserDefinedEntities/Actions/UserDefinedEntities.Delete api/PowerService/UserDefinedEntities/Devices api/PowerService/UserDefinedEntities/Devices() api/PowerService/UserDefinedEntities/Actions/ UserDefinedEntities.
Table 69. Attributes (continued) Attribute Description Identifier Identifier of the unmonitored device. Size Space occupied by the unmonitored device in a rack. EstimatedMaxPower Maximum power defined for the unmonitored device. Model Model of the unmonitored device. api/PowerService/UserDefinedEntities/Actions/ UserDefinedEntities.Update Use this URI to edit the unmonitored device details. Supported versions of Power Manager: ● 2.0 ● 1.
Table 70. Attributes (continued) Attribute Description Model Model of the unmonitored device. api/PowerService/UserDefinedEntities/Actions/ UserDefinedEntities.Delete Use this URI to delete the unmonitored device details. Supported versions of Power Manager: ● 2.0 ● 1.2 POST method to delete unmonitored device Description Use this method to delete unmonitored devices that is not supported in OpenManange Enterprise.
HTTP response codes Example 200 Input: None Output: { "@odata.count": 1, "value": [ { "Id":1, "Name": "Device A", "Description": "Device A", "HostName": "W109GHK890", "Identifier": "CXDFGHJ", "Size": 2, "EstimatedMaxPower": 10000, "Model": "Power Edge", "Location": "DC/Room/Aisle/Rack1", "RackSlot": 10, } ] } Table 72.
● 2.0 ● 1.2 GET method to view individual user defined device details Description Use this method to view all the unmonitored devices.
10 Physical Groups Topics: • • • • • • • • • • • • • • • api/GroupService/Actions/GroupService.CreateGroup api/GroupService/Actions/GroupService.UpdateGroup api/GroupService/Actions/GroupService.DeleteGroup /api/PowerService/PhysicalGroups/GroupDetails /api/PowerService/PhysicalGroups/GroupDetails() api/PowerService/PhysicalGroups/GroupDetails/AllLeafgroups api/PowerService/Actions/PowerService.
{ }, { } } ] } "AttributeTypeName": "POWER_CAPACITY", "IdDataType": 2, "Value": "1000" "AttributeTypeName": "SPACE_CAPACITY", "IdDataType": 2, "Value": "42" Output: { 10113 } Table 73. Attributes Attribute Description Name Name of the physical group. Description Description of the physical group. MembershipTypeId Define the group type as static. To create a physical group, pass this value as 12. ParentId Id of the parent group.
api/GroupService/Actions/ GroupService.UpdateGroup Use this URI to update physical groups. Supported versions of Power Manager: ● 2.0 ● 1.2 POST method to update physical group Description Updates a physical group.
Privilege GROUP_MANAGEMENT HTTP response codes 204 Example Input: { "GroupIds": [10166] } Output: None /api/PowerService/PhysicalGroups/GroupDetails Use this URI to get a list of all the physical groups. Supported versions of Power Manager: ● 2.0 ● 1.2 GET method to list all physical groups Description Displays a list of all the physical groups created. Privilege VIEW HTTP response codes 200 Example Input: None Output: { "@odata.context": "/api/ $metadata#Collection(PhysicalGroup.
} Table 75. Attributes Attribute name Description id Group Id parentId Group Parent ID Name Group name description Group description addedOn Date when the group is added.
● SpaceCapacity ● PowerCapacity ● SparePowerCapacity NOTE: To view underutilized racks for power, use the SparePowerCapacity sort option. ● SpareSpaceCapacity NOTE: To view underutilized racks for space, use the SpareSpaceCapacity sort option. ● CalculatedPowerCapacity ● AddedOn /api/PowerService/PhysicalGroups/ GroupDetails() Use this URI to get individual physical group details. Supported versions of Power Manager: ● 2.0 ● 1.
Table 77. Attributes (continued) Attribute name Description parentId Group Parent ID Name Group name Description Group description addedOn Date when the group is added.
"Name": "Rack1", "Description": "Rack1", "AddedOn": "2020-06-15 12:04:17.941671", "DevicesInWorkingSet": 3, "Tag": "RACK", "Location": "DC", "SpaceCapacity": 21, "PowerCapacity": 1000, "CalculatedPowerCapacity": 1000, "SparePowerCapacity": 448, "SpareSpaceCapacity": 5, "AllLeafgroups@odata.navigationLink": "/api/PowerService/ PhysicalGroups/GroupDetails(11183)/AllLeafgroups", "Devices@odata.navigationLink": "/api/PowerService/ PhysicalGroups/GroupDetails(11183)/Devices" } ] } Table 78.
● 1.2 POST method to update device details Description Add device details information like device size and estimated max power. Privilege DEVICE_CONFIGURATION HTTP response codes 200 Example Input: { } "Devices": [ { "Id": 10069, "Size": 2, "EstimatedMaxPower": 1000 }, { "Id": 10068, "Size": 2, "EstimatedMaxPower": 10000 } ] Output: { "Status": "SUCCESS" } /api/PowerService/DeviceDetails Use this URI to view the device information such as device size and estimated maximum power.
} api/PowerService/PhysicalGroups/CapableDevices Use this URI to get all the OpenManageEnterprise devices such as servers (except blade servers), chassis, storage(only rack placeable) and network switches (only rack placeable), which can be added into a rack. Supported versions of Power Manager: ● 2.0 ● 1.2 GET method to list all rack placeable devices Description This method returns rack capable devices. Privilege VIEW HTTP response codes 200 Example Input: None Output: { "@odata.
Table 79. Attributes (continued) Attribute name Description Model Device model PowerState Power State of the device ManagedState Managed State of the device ConnectionState Connection State of the device HealthStatus Health Status of the device EstimatedMaxPower Maximum power defined for the device PduOutletCount Power State outlet count of the device. Table 80.
GET method for selected device details Description This method returns the selected rack capable devices. Privilege VIEW HTTP response codes 200 Example Input: None Output: { "@odata.context": "/api/$metadata#PhysicalGroup.CapableDevices", "@odata.type": "#PhysicalGroup.CapableDevices", "@odata.id": "/api/PowerService/PhysicalGroups/ CapableDevices(10218)", "Id": 10218, "Name": "100.96.24.
● 2.0 ● 1.2 POST method add device to physical groups Description This method adds a device as a member to a physical group at the rack level. Privilege GROUP_MANAGEMENT HTTP response codes 200 Example Input: { "GroupId": 10001, "MemberDevices" : [ { "Id": 10001, "SlotNumber": 1 }, { } ] } "Id": 10002, "SlotNumber": 2 Output: { "Status": "SUCCESS" } NOTE: To add the device automatically in an empty slot, provide the SlotNumber value as zero.
Example Input: { "GroupId": 10001, "MemberDeviceIds": [10001,10002] } Output: { "Status": "SUCCESS" } api/PowerService/PhysicalGroups/ GroupDetails()/Devices Use this URI to get all the devices such as supported and unsupported or either of them under the physical group in a rack. Supported versions of Power Manager: ● 2.0 ● 1.
Table 82. Attributes Attribute name Description Id Device id Name Device name ServiceTag Service tag of device HostName Host name of the device Type Device type PowerState Power State of the device ManagedState Managed State of the device ConnectionState Connection State of the device HealthStatus Health Status of the device Model Device Model DeviceBladeInfo List all devices under chassis IsUserDefined Value is true for unmonitored device. Value is false for monitored device.
● ● ● ● ● ● ● ● Size Model PowerState ManagedState ConnectionState HealthStatus SlotNumber EstimatedMaxPower api/PowerService/PhysicalGroups/Actions/ PhysicalGroup.UpdateSlots Use this URI to update physical group member rack slots. Supported versions of Power Manager: ● 2.0 ● 1.2 POST method to update device slots Description Use this method to update physical group member rack slots.
● 2.0 ● 1.2 POST method to move device from one rack to another Description Use this method to move the device from physical group. Privilege GROUP_MANAGEMENT HTTP response codes 200 Example Input: { "EntityId": 10000, "FromGroup" : 10001, "ToGroup": 10002 } Output: { "Status": "SUCCESS" } NOTE: Ensure that Emergency Power Reduction (EPR) is not enabled on the target group while moving a device to this group.
11 Power Distribution Units Topics: • • /api/PowerService/PhysicalGroups/GroupDetails()/AssociatedDevices /api/PowerService/PowerDevice/Device(arg1)/Details /api/PowerService/PhysicalGroups/ GroupDetails()/AssociatedDevices URI represents all the Power Distribution Unit (PDU) devices that are associated to a specific physical group. Supported versions of Power Manager: ● 2.
Table 84. Attributes Attribute Description Id Device id Name Device name Identifier Device identifier SerialNumber Serial number of device Type Device type PowerState Power State of the device Model Model number of device Manufacturer Manufacturer name of device FirmwareVersion Firmware version of the device HardwareRevision Hardware revision of device PowerRating Power rating of device OutletCount Outlet count of device MeteredOutletCount Metered outlet count Table 85.
/api/PowerService/PowerDevice/Device(arg1)/ Details URI represents power device with id. Supported versions of Power Manager: ● 2.0 Get method to retrieve power device details by id This method represents power device details. Description This method return power device details. Privilege VIEW HTTP response codes 200 Example Input: None Output: { "@odata.context": "/api/ $metadata#PowerDevice.DeviceInventoryDetails", "@odata.type": "#PowerDevice.DeviceInventoryDetails", "@odata.
Table 86.
12 Virtual machines Topics: • • • /api/PowerService/VirtualEntities/VirtualMachines /api/PowerService/VirtualEntities/VirtualMachines() PowerService/VirtualEntities/VirtualMachines()/Details /api/PowerService/VirtualEntities/VirtualMachines URI to represent all the virtual machines. Supported versions of Power Manager: ● 2.0 GET method to represent all the virtual machines This method displays all the virtual machines that are monitored in Power Manager.
"@odata.id": "/api/PowerService/VirtualEntities/ VirtualMachines(7)/Details" } ] } Table 87. Attributes Attribute Description Id Id of the device Name Device name Uuid Unique identifier of device DeviceId Device id or device name of the host server. DeviceName Device name ServiceTag Service tag of device Table 88.
Example Input: None Output: { "@odata.type": "#VirtualEntities.VirtualMachine", "@odata.id": "/api/PowerService/VirtualEntities/ VirtualMachines(4)", "Id": 4, "Uuid": "4d303ae2-7b2c-488b-9c09-c6d23f4e7fa3", "Name": "pmp1-edited", "DeviceId": 10207, "DeviceName": "BR1H903", "ServiceTag": "BR1H903", "Details": { "@odata.id": "/api/PowerService/VirtualEntities/ VirtualMachines(4)/Details" } } Table 89.
} "DevicePowerConsumption": 315, "DeviceCpuUtilization": 0, "VcpuCount": 1, "CurrentVcpuUsage": 0 Table 90.
13 Report Service Topics: • /api/ReportService/ReportDefs /api/ReportService/ReportDefs This method creates a custom report. Supported versions of Power Manager: ● ● ● ● 2.0 1.2 1.1 1.0 Post method for creating a custom Power Manager Report Description Creates a custom report.
}, { "FieldId":63 }, { "FieldId":99 }, { "FieldId":102 } ], "SortFields":[], "ReportSettings": [{ "SettingId": 1, "OperatorId": 1, "Value": "90" }, { "SettingId": 2, "OperatorId": 1, "Value": "2" }] } } Table 91. SettingId Enumeration Enumeration Value Description 1 Report duration 2 Aggregation period 3 Metric type Table 92. Report duration Enumeration Enumeration Value Description 1 1 Day 7 7 Days 15 15 Days 30 1 Month 90 3 Months 180 6 Months 365 1 Year Table 93.