System resources are used to query the system nodes, operating system status, network, time, storage, power, and firewall information of the device.
Authentication and Access Protocol
Plain HTTP requests on this page support HTTP Basic Auth and session tokens. The token is carried in the X-Xsrf-Token request header, not in the request body. In the examples, <protocol> is http or https depending on the service configuration.
Query the system resource members on the current device. Clients should obtain the actual SystemId from Members[].@odata.id instead of assuming a fixed number or naming of system members.
Item Content Method GETPath /redfish/v1/SystemsAuthentication HTTP Basic Auth or X-Xsrf-Token Request body None Success status code 200 OK
Query the System Resource Collection curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems'
The following is a real response returned by a test device, with HTTP status code 200 OK.
{
"@odata.id" : "/redfish/v1/Systems" ,
"@odata.type" : "#ComputerSystemCollection.ComputerSystemCollection" ,
"Name" : "Computer System Collection" ,
"Members@odata.count" : 11 ,
"Members" : [
{ "@odata.id" : "/redfish/v1/Systems/bmc" },
{ "@odata.id" : "/redfish/v1/Systems/sub01" },
{ "@odata.id" : "/redfish/v1/Systems/sub02" },
{ "@odata.id" : "/redfish/v1/Systems/sub03" },
{ "@odata.id" : "/redfish/v1/Systems/sub04" },
{ "@odata.id" : "/redfish/v1/Systems/sub05" },
{ "@odata.id" : "/redfish/v1/Systems/sub06" },
{ "@odata.id" : "/redfish/v1/Systems/sub07" },
{ "@odata.id" : "/redfish/v1/Systems/sub08" },
{ "@odata.id" : "/redfish/v1/Systems/sub09" },
{ "@odata.id" : "/redfish/v1/Systems/sub10" }
]
}
Field Type Description @odata.idstring Access path of the system resource collection. @odata.typestring OData type of the system resource collection. Namestring Name of the system resource collection. Members@odata.countnumber Number of system resource members. Membersarray List of system resource members. Members[].@odata.idstring Access path of a specific system resource.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}Path parameter SystemId: obtained from the system resource collection; the example below uses bmcAuthentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
Query the bmc System Status curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc'
The following is an excerpt of the core fields from a real 200 OK response.
200 OK · Excerpt of a Real Response {
"@odata.id" : "/redfish/v1/Systems/bmc" ,
"@odata.type" : "#ComputerSystem.v1_20_0.ComputerSystem" ,
"Id" : "bmc" ,
"Name" : "Systems" ,
"SystemType" : "Physical" ,
"Description" : "System bmc" ,
"Status" : {
"Health" : "Critical" ,
"HealthRollup" : "" ,
"State" : ""
},
"SerialNumber" : "5a674dc0e7ccb348" ,
"ProcessorSummary" : {
"CoreCount" : 8 ,
"Count" : 1 ,
"LogicalProcessorCount" : 8 ,
"Model" : "Cortex-A55" ,
"ThreadingEnabled" : false ,
"Status" : {
"Health" : "OK" ,
"HealthRollup" : "OK" ,
"State" : "Enabled"
}
},
"HostingRoles" : "BareMetalServer" ,
"HostName" : "bmc" ,
"Manufacturer" : "Firefly" ,
"ManufacturingMode" : false ,
"UUID" : "a1f1c73c-3fc0-5358-8ea8-b5c29ec52c48"
}
Field Type Description @odata.idstring Access path of the system resource. @odata.typestring OData type of the system resource. Idstring System resource identifier. Namestring System resource name. SystemTypestring System type. Descriptionstring System resource description. Statusobject System status information. Status.Healthstring System health status. Status.HealthRollupstring Rolled-up system health status. Status.Statestring System operating state. SerialNumberstring System serial number. ProcessorSummaryobject Processor summary information. ProcessorSummary.CoreCountnumber Total number of processor cores. ProcessorSummary.Countnumber Number of physical processors. ProcessorSummary.LogicalProcessorCountnumber Number of logical processors. ProcessorSummary.Modelstring Processor model. ProcessorSummary.ThreadingEnabledboolean Whether hardware threads are enabled. ProcessorSummary.Statusobject Processor status information. ProcessorSummary.Status.Healthstring Processor health status. ProcessorSummary.Status.HealthRollupstring Rolled-up processor health status. ProcessorSummary.Status.Statestring Processor operating state. HostingRolesstring Hosting role of the system. HostNamestring System host name. Manufacturerstring System manufacturer. ManufacturingModeboolean Whether the system is in manufacturing mode. UUIDstring Globally unique identifier of the system.
Method Path Description Verified on Device GET/redfish/v1/Systems/{SystemId}/Oem/Firefly/StatusQueries the operating system, kernel, SoC, and BMC software status. 200 OKGET/redfish/v1/Systems/{SystemId}/Oem/Firefly/ProductSpecificationsQueries memory, storage, and SoC product specifications. 200 OK
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/EthernetInterfacesAuthentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
Query the Network Interface Resource Collection curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/EthernetInterfaces'
{
"@odata.id" : "/redfish/v1/Systems/bmc/EthernetInterfaces" ,
"@odata.type" : "#EthernetInterfaceCollection.EthernetInterfaceCollection" ,
"Name" : "Ethernet Interface Collection" ,
"Members@odata.count" : 6 ,
"Members" : [
{ "@odata.id" : "/redfish/v1/Systems/bmc/EthernetInterfaces/nic3" },
{ "@odata.id" : "/redfish/v1/Systems/bmc/EthernetInterfaces/MGMT" },
{ "@odata.id" : "/redfish/v1/Systems/bmc/EthernetInterfaces/lo" },
{ "@odata.id" : "/redfish/v1/Systems/bmc/EthernetInterfaces/nic0" },
{ "@odata.id" : "/redfish/v1/Systems/bmc/EthernetInterfaces/nic1" },
{ "@odata.id" : "/redfish/v1/Systems/bmc/EthernetInterfaces/nic2" }
]
}
Field Type Description @odata.idstring Access path of the network interface resource collection. @odata.typestring OData type of the network interface resource collection. Namestring Name of the network interface resource collection. Members@odata.countnumber Number of network interfaces. Membersarray List of network interface resource members. Members[].@odata.idstring Access path of a specific network interface.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/EthernetInterfaces/{EthernetInterfaceId}Path parameter EthernetInterfaceId: obtained from the network interface resource collection; the example below uses the non-management network interface nic0Authentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
Query the Non-Management Network Interface nic0 curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/EthernetInterfaces/nic0'
200 OK · Excerpt of a Real Response {
"@odata.id" : "/redfish/v1/Systems/bmc/EthernetInterfaces/nic0" ,
"@odata.type" : "#EthernetInterface.v1_9_0.EthernetInterface" ,
"AutoNeg" : false ,
"DHCPv4" : false ,
"EthernetInterfaceType" : "Physical" ,
"FQDN" : "bmc" ,
"FullDuplex" : "full" ,
"HostName" : "bmc" ,
"IPv4Addresses" : [
{
"Address" : "172.22.10.0" ,
"SubnetMask" : "255.255.0.0" ,
"PrefixLen" : 16 ,
"AddressOrigin" : "Static"
}
],
"Id" : "nic0" ,
"InterfaceEnabled" : false ,
"LinkStatus" : "1" ,
"MACAddress" : "42:07:6e:26:82:7b" ,
"MTUSize" : "1500" ,
"Name" : "nic0" ,
"NameServers" : [ "114.114.114.114" ],
"Routes" : [],
"Speed" : "1000"
}
Field Type Description @odata.idstring Access path of the network interface resource. @odata.typestring OData type of the network interface resource. AutoNegboolean Whether auto-negotiation is enabled. DHCPv4boolean Whether the address is obtained through DHCPv4. EthernetInterfaceTypestring Network interface type. FQDNstring Fully qualified domain name. FullDuplexstring Duplex mode. HostNamestring Host name. IPv4Addressesarray List of IPv4 addresses. IPv4Addresses[].Addressstring IPv4 address. IPv4Addresses[].SubnetMaskstring IPv4 subnet mask. IPv4Addresses[].PrefixLennumber IPv4 prefix length. IPv4Addresses[].AddressOriginstring IPv4 address origin. Idstring Network interface identifier. InterfaceEnabledboolean Whether the network interface is enabled. LinkStatusstring Network interface link status. MACAddressstring MAC address. MTUSizestring Maximum transmission unit. Namestring Network interface name. NameServersarray List of DNS servers. Routesarray List of static routes. Speedstring Network interface speed in Mbps.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/NetworkBondingsAuthentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
Query the Bond Resource Collection curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkBondings'
{
"@odata.id" : "/redfish/v1/Systems/bmc/NetworkBondings" ,
"@odata.type" : "#FFNetworkBondingCollection.FFNetworkBondingCollection" ,
"Name" : "Ethernet Bonding Collection" ,
"Members@odata.count" : 2 ,
"Members" : [
{ "@odata.id" : "/redfish/v1/Systems/bmc/NetworkBondings/bond1" },
{ "@odata.id" : "/redfish/v1/Systems/bmc/NetworkBondings/bond0" }
]
}
Field Type Description @odata.idstring Path of the Bond resource collection. @odata.typestring OData type of the Bond resource collection. Namestring Name of the Bond resource collection. Members@odata.countnumber Number of Bonds. Membersarray List of Bond members. Members[].@odata.idstring Access path of a specific Bond.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/NetworkBondings/{NetworkBondingId}Path parameter NetworkBondingId: obtained from the Bond resource collection; the example below uses bond1Authentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkBondings/bond1'
200 OK · Excerpt of a Real Response {
"@odata.id" : "/redfish/v1/Systems/bmc/NetworkBondings/bond1" ,
"@odata.type" : "#EthNetworkBonding.v1_9_0.EthNetworkBonding" ,
"Id" : "bond1" ,
"Name" : "bond1" ,
"IPv4Addresses" : [],
"MACAddress" : "de:38:b5:b6:5f:1d" ,
"LinkStatus" : "1" ,
"Oem" : {
"Firefly" : {
"Mode" : "802.3ad" ,
"Interfaces" : [ "nic2" ],
"MIIStatus" : "up" ,
"SettingEnabled" : true ,
"Bonding" : true ,
"BondingMaster" : "bond1"
}
}
}
Field Type Description @odata.idstring Path of the Bond resource. @odata.typestring OData type of the Bond resource. Idstring Bond identifier. Namestring Bond name. IPv4Addressesarray List of IPv4 addresses of the Bond. MACAddressstring MAC address of the Bond. LinkStatusstring Bond link status. Oemobject OEM extension information. Oem.Fireflyobject Firefly Bond extension information. Oem.Firefly.Modestring Bond mode. Oem.Firefly.Interfacesarray Physical network interfaces included in the Bond. Oem.Firefly.MIIStatusstring MII link status. Oem.Firefly.SettingEnabledboolean Whether configuration is allowed. Oem.Firefly.Bondingboolean Whether this is a Bond interface. Oem.Firefly.BondingMasterstring Name of the Bond primary interface.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/NetworkVLANsAuthentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
Query the VLAN Resource Collection curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkVLANs'
{
"@odata.id" : "/redfish/v1/Systems/bmc/NetworkVLANs" ,
"@odata.type" : "#EthernetInterface.v1_9_0.EthernetInterface" ,
"Name" : "Ethernet VLAN Collection" ,
"Members@odata.count" : 2 ,
"Members" : [
{ "@odata.id" : "/redfish/v1/Systems/bmc/NetworkVLANs/vlan4000" },
{ "@odata.id" : "/redfish/v1/Systems/bmc/NetworkVLANs/vlan400" }
]
}
Field Type Description @odata.idstring Path of the VLAN resource collection. @odata.typestring OData type of the VLAN resource collection. Namestring Name of the VLAN resource collection. Members@odata.countnumber Number of VLANs. Membersarray List of VLAN members. Members[].@odata.idstring Access path of a specific VLAN.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/NetworkVLANs/{NetworkVLANId}Path parameter NetworkVLANId: obtained from the VLAN resource collection; the example below uses vlan400Authentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkVLANs/vlan400'
The following shows the core fields of the 200 OK response returned by the real device; vlan400 is associated with the non-management network interface nic3.
200 OK · Excerpt of a Real Response {
"@odata.id" : "/redfish/v1/Systems/bmc/NetworkVLANs/vlan400" ,
"@odata.type" : "#EthNetworkVLAN.v1_9_0.EthNetworkVLAN" ,
"Id" : "vlan400" ,
"Name" : "vlan400" ,
"DHCPv4" : false ,
"EthernetInterfaceType" : "Virtual" ,
"IPv4Addresses" : [],
"InterfaceEnabled" : false ,
"LinkStatus" : "1" ,
"MACAddress" : "56:bd:58:51:7f:f7" ,
"MTUSize" : "1500" ,
"NameServers" : [ "114.114.114.114" ],
"Routes" : [],
"Speed" : "1000" ,
"Oem" : {
"Firefly" : {
"VlanId" : "400" ,
"VlanLink" : "nic3" ,
"SettingEnabled" : true ,
"HaveConfig" : false ,
"NicType" : 4
}
}
}
Field Type Description @odata.idstring Path of the VLAN resource. @odata.typestring OData type of the VLAN resource. Idstring VLAN resource identifier. Namestring VLAN name. DHCPv4boolean Whether the address is obtained through DHCPv4. EthernetInterfaceTypestring Interface type; for a VLAN this is a virtual interface. IPv4Addressesarray List of IPv4 addresses of the VLAN. InterfaceEnabledboolean Whether the VLAN interface is enabled. LinkStatusstring VLAN link status. MACAddressstring MAC address of the VLAN interface. MTUSizestring Maximum transmission unit. NameServersarray List of DNS servers. Routesarray List of static routes. Speedstring Interface speed in Mbps. Oemobject OEM extension information. Oem.Fireflyobject Firefly VLAN extension information. Oem.Firefly.VlanIdstring IEEE 802.1Q VLAN ID. Oem.Firefly.VlanLinkstring Underlying network interface the VLAN attaches to. Oem.Firefly.SettingEnabledboolean Whether configuring this VLAN is allowed. Oem.Firefly.HaveConfigboolean Whether the backend has detected a persisted configuration. Oem.Firefly.NicTypenumber Network interface type number defined by the backend.
Do Not Modify the Management Network Interface Directly
Before configuring, query the network interface resources to confirm that the current management IP is not on the target network interface. Testing on the real device confirmed that the management address is on MGMT, so the test was performed only on nic1.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/EthernetInterfaces/{EthernetInterfaceId}/Actions/Oem/Firefly/ConfigureActionInfoPath /redfish/v1/Systems/{SystemId}/EthernetInterfaces/{EthernetInterfaceId}/Actions/Oem/Firefly/EthernetInterface.ConfigurePrivilege OemConfigureNetwork
Request Field Type Required Description IPv4Addressesobject Yes IPv4 configuration object. IPv4Addresses.Dhcp4boolean No Whether DHCPv4 is enabled. IPv4Addresses.Addressesobject[] No List of static IPv4 addresses. IPv4Addresses.Addresses[].Addressstring Yes IPv4 address. IPv4Addresses.Addresses[].PrefixLennumber Yes Network prefix length. IPv4Addresses.Gateway4string No Default gateway address. IPv4Addresses.Gateway4Prioritynumber No Default gateway priority. IPv4Addresses.Optionalboolean No Whether the interface is allowed to be not ready at startup. IPv4Addresses.NameServersstring[] No List of DNS servers. Routesobject[] No List of static routes. Routes[].Tostring Yes Route destination network segment. Routes[].Viastring Yes Next-hop address. Routes[].Metricnumber No Route metric.
Configure the Non-Management Network Interface nic1 curl --request POST \
--user '<username>:<password>' \
--header 'Content-Type: application/json' \
--data '{
"IPv4Addresses": {
"Dhcp4": false,
"Addresses": [{ "Address": "198.51.100.10", "PrefixLen": 24 }],
"NameServers": [],
"Optional": true
},
"Routes": []
}' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/EthernetInterfaces/nic1/Actions/Oem/Firefly/EthernetInterface.Configure'
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
A Success Message Does Not Mean the Running State Has Changed
That POST returned 200 OK, but a subsequent GET of nic1 still showed IPv4Addresses as an empty array. Clients must query the resource again after configuration and must not assume the configuration took effect based on the success message alone.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/NetworkBondings/{NetworkBondingId}/Actions/Oem/Firefly/ConfigureActionInfoPath /redfish/v1/Systems/{SystemId}/NetworkBondings/{NetworkBondingId}/Actions/Oem/Firefly/NetworkBonding.ConfigureTest object bond1, with the non-management network interface nic2 as its memberSuccess status code 200 OK
Request Field Type Required Description Modestring Yes Bond mode: 802.3ad, active-backup, balance-alb, balance-rr, balance-tlb, balance-xor, or broadcast. Interfacesstring[] Yes Physical network interface members of the Bond; must not include the network interface that carries the management address. IPv4Addressesobject Yes IPv4 configuration. IPv4Addresses.Dhcp4boolean No Whether DHCPv4 is enabled. IPv4Addresses.Addressesobject[] No List of static IPv4 addresses. IPv4Addresses.Addresses[].Addressstring Yes IPv4 address. IPv4Addresses.Addresses[].PrefixLennumber Yes Network prefix length. IPv4Addresses.Gateway4string No Default gateway. IPv4Addresses.Gateway4Prioritynumber No Default gateway priority. IPv4Addresses.Optionalboolean No Whether the interface is allowed to be not ready at startup. IPv4Addresses.NameServersstring[] No DNS servers. Routesobject[] No List of static routes; each entry supports To, Via, and the optional Metric.
curl --request POST \
--user '<username>:<password>' \
--header 'Content-Type: application/json' \
--data '{
"Mode": "802.3ad",
"Interfaces": ["nic2"],
"IPv4Addresses": {
"Dhcp4": false,
"Addresses": [],
"NameServers": ["114.114.114.114"],
"Optional": true
},
"Routes": []
}' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkBondings/bond1/Actions/Oem/Firefly/NetworkBonding.Configure'
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
After writing the original configuration of bond1 back to the real device, a follow-up GET confirms that its mode is still 802.3ad and its member is still nic2.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/NetworkBondings/Actions/Oem/Firefly/AddConfigureActionInfoPath /redfish/v1/Systems/{SystemId}/NetworkBondings/Actions/Oem/Firefly/NetworkBondingAdd.ConfigureNew field Device: Bond name; the other fields are the same as those of "Configuring a Bond"Test object Temporary bond9, with the non-management network interface nic1 as its member Success status code 200 OK
curl --request POST \
--user '<username>:<password>' \
--header 'Content-Type: application/json' \
--data '{
"Mode": "active-backup",
"Interfaces": ["nic1"],
"Device": "bond9",
"IPv4Addresses": {
"Dhcp4": false,
"Addresses": [],
"NameServers": [],
"Optional": true
},
"Routes": []
}' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkBondings/Actions/Oem/Firefly/NetworkBondingAdd.Configure'
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
You Must Query to Confirm the Add Result
Although the real device returned a success message, bond9 did not appear when the Bond collection was queried afterwards. Callers must not conclude from 200 OK alone that the Bond was created; they must GET the resource collection again to confirm.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/NetworkBondings/Actions/Oem/Firefly/DelConfigureActionInfoPath /redfish/v1/Systems/{SystemId}/NetworkBondings/Actions/Oem/Firefly/NetworkBondingDel.ConfigureRequest field Device: name of the Bond to deleteTest object Temporary bond9 Success status code 200 OK
curl --request POST \
--user '<username>:<password>' \
--header 'Content-Type: application/json' \
--data '{ "Device": "bond9" }' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkBondings/Actions/Oem/Firefly/NetworkBondingDel.Configure'
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
After the deletion, querying the Bond collection again shows that the real device contains only bond0 and bond1.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/NetworkVLANs/{NetworkVLANId}/Actions/Oem/Firefly/ConfigureActionInfoPath /redfish/v1/Systems/{SystemId}/NetworkVLANs/{NetworkVLANId}/Actions/Oem/Firefly/NetworkVLAN.ConfigureTest object vlan400, with the non-management network interface nic3 as the underlying interfaceSuccess status code 200 OK
Request Field Type Required Description Idnumber Yes VLAN ID; the value must be within the IEEE 802.1Q range. Linkstring Yes Underlying network interface the VLAN attaches to; do not use the network interface that carries the management address. IPv4Addressesobject No IPv4 configuration; the sub-fields are the same as those for network interface configuration. Routesobject[] No List of static routes.
Do Not Pass Device to the Configuration API
When configuring an existing VLAN, the backend determines the device name from {NetworkVLANId} in the URL. When the real-device request body explicitly passed Device, the response was 400 Base.1.11.0.PropertyUnknown.
curl --request POST \
--user '<username>:<password>' \
--header 'Content-Type: application/json' \
--data '{
"IPv4Addresses": {
"Dhcp4": false,
"Addresses": [],
"NameServers": ["114.114.114.114"],
"Optional": true
},
"Link": "nic3",
"Id": 400,
"Routes": []
}' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkVLANs/vlan400/Actions/Oem/Firefly/NetworkVLAN.Configure'
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
After the configuration, a follow-up GET of vlan400 shows that the real device still returns VlanId=400 and VlanLink=nic3.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/NetworkVLANs/Actions/Oem/Firefly/AddConfigureActionInfoPath /redfish/v1/Systems/{SystemId}/NetworkVLANs/Actions/Oem/Firefly/NetworkVlANAdd.ConfigureRequest fields Id, Link, and Device are required; IPv4Addresses and Routes are optionalTest object Temporary vlan4090, with the non-management network interface nic1 as the underlying interface Success status code 200 OK
curl --request POST \
--user '<username>:<password>' \
--header 'Content-Type: application/json' \
--data '{
"IPv4Addresses": {
"Dhcp4": false,
"Addresses": [],
"NameServers": [],
"Optional": true
},
"Link": "nic1",
"Id": 4090,
"Device": "vlan4090",
"Routes": []
}' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkVLANs/Actions/Oem/Firefly/NetworkVlANAdd.Configure'
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
You Must Query to Confirm the Add Result
After the real device returned a success message, vlan4090 did not appear in the VLAN collection. Callers must query the VLAN collection or the specific VLAN again to confirm whether the configuration actually took effect.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/NetworkVLANs/Actions/Oem/Firefly/DelConfigureActionInfoPath /redfish/v1/Systems/{SystemId}/NetworkVLANs/Actions/Oem/Firefly/NetworkVLANDel.ConfigureRequest field Device: name of the VLAN device to delete, requiredTest object Temporary vlan4090 Success status code 200 OK
curl --request POST \
--user '<username>:<password>' \
--header 'Content-Type: application/json' \
--data '{ "Device": "vlan4090" }' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkVLANs/Actions/Oem/Firefly/NetworkVLANDel.Configure'
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
After the deletion, querying the VLAN collection again shows that the real device contains only vlan400 and vlan4000.
Item Content Method GETPath /redfish/v1/Systems/bmc/EthernetInterfaces/nic1/Actions/Oem/Firefly/ConfigureActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Non-Management Network Interface Configuration ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/EthernetInterfaces/nic1/Actions/Oem/Firefly/ConfigureActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/EthernetInterfaces/nic1/Actions/Oem/Firefly/ConfigureActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "Dhcp4" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Address" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "PrefixLen" ,
"Required" : true
}
],
"DataType" : "ObjectArray" ,
"Name" : "Addresses" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Gateway4" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "Gateway4Priority" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "Optional" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "StringArray" ,
"Name" : "NameServers" ,
"Required" : false
}
],
"DataType" : "Object" ,
"Name" : "IPv4Addresses" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "To" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Via" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "Metric" ,
"Required" : false
}
],
"DataType" : "ObjectArray" ,
"Name" : "Routes" ,
"Required" : false
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowableValues[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValues[].DataTypestring Parameter data type. Parameters[].AllowableValues[].Namestring Parameter name. Parameters[].AllowableValues[].Requiredboolean Whether the parameter is required. Parameters[].AllowableValues[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].AllowableValues[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowableValues[].AllowableValues[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValues[].AllowableValues[].DataTypestring Parameter data type. Parameters[].AllowableValues[].AllowableValues[].Namestring Parameter name. Parameters[].AllowableValues[].AllowableValues[].Requiredboolean Whether the parameter is required. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/NetworkBondings/bond1/Actions/Oem/Firefly/ConfigureActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Bond Configuration ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkBondings/bond1/Actions/Oem/Firefly/ConfigureActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/NetworkBondings/bond1/Actions/Oem/Firefly/ConfigureActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "Dhcp4" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Address" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "PrefixLen" ,
"Required" : true
}
],
"DataType" : "ObjectArray" ,
"Name" : "Addresses" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Gateway4" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "Gateway4Priority" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "Optional" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "StringArray" ,
"Name" : "NameServers" ,
"Required" : false
}
],
"DataType" : "Object" ,
"Name" : "IPv4Addresses" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"802.3ad" ,
"active-backup" ,
"balance-alb" ,
"balance-rr" ,
"balance-tlb" ,
"balance-xor" ,
"broadcast"
],
"DataType" : "String" ,
"Name" : "Mode" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "StringArray" ,
"Name" : "Interfaces" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "To" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Via" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "Metric" ,
"Required" : false
}
],
"DataType" : "ObjectArray" ,
"Name" : "Routes" ,
"Required" : false
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowableValues[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValues[].DataTypestring Parameter data type. Parameters[].AllowableValues[].Namestring Parameter name. Parameters[].AllowableValues[].Requiredboolean Whether the parameter is required. Parameters[].AllowableValues[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].AllowableValues[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowableValues[].AllowableValues[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValues[].AllowableValues[].DataTypestring Parameter data type. Parameters[].AllowableValues[].AllowableValues[].Namestring Parameter name. Parameters[].AllowableValues[].AllowableValues[].Requiredboolean Whether the parameter is required. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/NetworkBondings/Actions/Oem/Firefly/AddConfigureActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Add Bond ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkBondings/Actions/Oem/Firefly/AddConfigureActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/NetworkBondings/Actions/Oem/Firefly/AddConfigureActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "Dhcp4" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Address" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "PrefixLen" ,
"Required" : true
}
],
"DataType" : "ObjectArray" ,
"Name" : "Addresses" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Gateway4" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "Gateway4Priority" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "Optional" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "StringArray" ,
"Name" : "NameServers" ,
"Required" : false
}
],
"DataType" : "Object" ,
"Name" : "IPv4Addresses" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"802.3ad" ,
"active-backup" ,
"balance-alb" ,
"balance-rr" ,
"balance-tlb" ,
"balance-xor" ,
"broadcast"
],
"DataType" : "String" ,
"Name" : "Mode" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "StringArray" ,
"Name" : "Interfaces" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Device" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "To" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Via" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "Metric" ,
"Required" : false
}
],
"DataType" : "ObjectArray" ,
"Name" : "Routes" ,
"Required" : false
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowableValues[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValues[].DataTypestring Parameter data type. Parameters[].AllowableValues[].Namestring Parameter name. Parameters[].AllowableValues[].Requiredboolean Whether the parameter is required. Parameters[].AllowableValues[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].AllowableValues[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowableValues[].AllowableValues[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValues[].AllowableValues[].DataTypestring Parameter data type. Parameters[].AllowableValues[].AllowableValues[].Namestring Parameter name. Parameters[].AllowableValues[].AllowableValues[].Requiredboolean Whether the parameter is required. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/NetworkBondings/Actions/Oem/Firefly/DelConfigureActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Delete Bond ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkBondings/Actions/Oem/Firefly/DelConfigureActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/NetworkBondings/Actions/Oem/Firefly/DelConfigureActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Device" ,
"Required" : false
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/NetworkVLANs/vlan400/Actions/Oem/Firefly/ConfigureActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the VLAN Configuration ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkVLANs/vlan400/Actions/Oem/Firefly/ConfigureActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/NetworkVLANs/vlan400/Actions/Oem/Firefly/ConfigureActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "Dhcp4" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Address" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "PrefixLen" ,
"Required" : true
}
],
"DataType" : "ObjectArray" ,
"Name" : "Addresses" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Gateway4" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "Gateway4Priority" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "Optional" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "StringArray" ,
"Name" : "NameServers" ,
"Required" : false
}
],
"DataType" : "Object" ,
"Name" : "IPv4Addresses" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "Id" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Link" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "To" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Via" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "Metric" ,
"Required" : false
}
],
"DataType" : "ObjectArray" ,
"Name" : "Routes" ,
"Required" : false
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowableValues[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValues[].DataTypestring Parameter data type. Parameters[].AllowableValues[].Namestring Parameter name. Parameters[].AllowableValues[].Requiredboolean Whether the parameter is required. Parameters[].AllowableValues[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].AllowableValues[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowableValues[].AllowableValues[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValues[].AllowableValues[].DataTypestring Parameter data type. Parameters[].AllowableValues[].AllowableValues[].Namestring Parameter name. Parameters[].AllowableValues[].AllowableValues[].Requiredboolean Whether the parameter is required. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/NetworkVLANs/Actions/Oem/Firefly/AddConfigureActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Add VLAN ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkVLANs/Actions/Oem/Firefly/AddConfigureActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/NetworkVLANs/Actions/Oem/Firefly/AddConfigureActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "Dhcp4" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Address" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "PrefixLen" ,
"Required" : true
}
],
"DataType" : "ObjectArray" ,
"Name" : "Addresses" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Gateway4" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "Gateway4Priority" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "Optional" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "StringArray" ,
"Name" : "NameServers" ,
"Required" : false
}
],
"DataType" : "Object" ,
"Name" : "IPv4Addresses" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "Id" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Link" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Device" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "To" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Via" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "Metric" ,
"Required" : false
}
],
"DataType" : "ObjectArray" ,
"Name" : "Routes" ,
"Required" : false
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowableValues[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValues[].DataTypestring Parameter data type. Parameters[].AllowableValues[].Namestring Parameter name. Parameters[].AllowableValues[].Requiredboolean Whether the parameter is required. Parameters[].AllowableValues[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].AllowableValues[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowableValues[].AllowableValues[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValues[].AllowableValues[].DataTypestring Parameter data type. Parameters[].AllowableValues[].AllowableValues[].Namestring Parameter name. Parameters[].AllowableValues[].AllowableValues[].Requiredboolean Whether the parameter is required. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/NetworkVLANs/Actions/Oem/Firefly/DelConfigureActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Delete VLAN ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/NetworkVLANs/Actions/Oem/Firefly/DelConfigureActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/NetworkVLANs/Actions/Oem/Firefly/DelConfigureActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Device" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/Oem/Firefly/DateTimeAuthentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Oem/Firefly/DateTime'
{
"@odata.id" : "/redfish/v1/Systems/bmc/Oem/Firefly/DateTime" ,
"@odata.type" : "#FireflyDateTime.v1_9_0.FireflyDateTime" ,
"Id" : "DateTime" ,
"Name" : "DateTime" ,
"Actions" : {
"#DateTime.Configure" : {
"target" : "/redfish/v1/Systems/bmc/Oem/Firefly/DateTime/Actions/ComputerSystem.SetDateTime" ,
"@Redfish.ActionInfo" : "/redfish/v1/Systems/bmc/Oem/Firefly/DateTime/Actions/SetDateTimeActionInfo"
}
},
"DateTime" : "2026-08-04 17:05:28"
}
Field Type Description @odata.idstring Access path of the system time resource. @odata.typestring OData type of the system time resource. Idstring System time resource identifier. Namestring System time resource name. Actionsobject Operations available for the system time. Actions.#DateTime.Configureobject Operation definition for setting the system time. Actions.#DateTime.Configure.targetstring POST path for setting the system time. Actions.#DateTime.Configure.@Redfish.ActionInfostring ActionInfo path for setting the time. DateTimestring Current system date and time.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/Oem/Firefly/TimeZoneAuthentication HTTP Basic Auth or X-Xsrf-Token Request body None Success status code 200 OK
curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Oem/Firefly/TimeZone'
The following is a real 200 OK response returned by a test device.
{
"@odata.id" : "/redfish/v1/Systems/bmc/Oem/Firefly/TimeZone" ,
"@odata.type" : "#FireflyDateTime.v1_9_0.FireflyTimeZone" ,
"Id" : "TimeZone" ,
"Name" : "TimeZone" ,
"Actions" : {
"#TimeZone.Configure" : {
"target" : "/redfish/v1/Systems/bmc/Oem/Firefly/TimeZone/Actions/ComputerSystem.SetTimeZone" ,
"@Redfish.ActionInfo" : "/redfish/v1/Systems/bmc/Oem/Firefly/TimeZone/Actions/SetTimeZoneActionInfo"
}
},
"TimeZone" : "Etc/GMT-8"
}
Field Type Description @odata.idstring Path of the time zone resource. @odata.typestring OData type of the time zone resource. Idstring Time zone resource identifier. Namestring Time zone resource name. Actionsobject Operations supported by the time zone resource. Actions.#TimeZone.Configureobject Operation definition for setting the time zone. Actions.#TimeZone.Configure.targetstring POST path for setting the time zone. Actions.#TimeZone.Configure.@Redfish.ActionInfostring ActionInfo path for setting the time zone. TimeZonestring Current IANA time zone name.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/Oem/Firefly/TimeServiceSettingAuthentication HTTP Basic Auth or X-Xsrf-Token Request body None Success status code 200 OK
Query the Full Time Service Configuration curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Oem/Firefly/TimeServiceSetting'
The following is a real 200 OK response returned by a test device.
{
"@odata.id" : "/redfish/v1/Systems/bmc/Oem/Firefly/TimeServiceSetting" ,
"@odata.type" : "#FireflyTimeService.v1_9_0.FireflyTimeServiceSetting" ,
"Id" : "TimeServiceSetting" ,
"Name" : "TimeServiceSetting" ,
"Actions" : {},
"manual" : false ,
"ntp_config" : {
"preferred" : "ntp.aliyun.com" ,
"alternative" : "" ,
"rtc" : true ,
"make_step" : {
"threshold" : "1" ,
"limit" : "3"
},
"server_config" : {
"port" : "123" ,
"local_stratum" : "10"
}
},
"time" : "" ,
"time_zone" : "GMT+08:00" ,
"chrony_config" : {
"servers" : [
{
"addr" : "ntp.aliyun.com" ,
"iburst" : true ,
"minpoll" : "6" ,
"maxpoll" : "7" ,
"port" : "123" ,
"nts" : false ,
"burst" : false ,
"trust" : false
}
],
"log" : {
"measurements" : true ,
"statistics" : true ,
"tracking" : true ,
"rtc" : false ,
"refclocks" : false ,
"tempcomp" : false ,
"rawmeasurements" : false ,
"selection" : false
},
"makestep" : {
"threshold" : "1" ,
"limit" : "3"
},
"allow" : [ "0.0.0.0/0" ],
"deny" : [],
"port" : "123" ,
"binddevice" : null ,
"local" : {
"distance" : "" ,
"stratum" : "10" ,
"orphan" : false
},
"logdir" : "var/lib/chrony/" ,
"driftfile" : "/var/lib/chrony/chrony.drift" ,
"minsources" : "" ,
"rtcsync" : true ,
"maxupdateskew" : "" ,
"maxdistance" : "" ,
"ntsdumpdir" : "" ,
"ntsservercert" : "" ,
"ntsserverkey" : "" ,
"ntstrustedcerts" : ""
}
}
Field Type Description @odata.idstring Path of the full time service configuration resource. @odata.typestring OData type of the time service configuration. Idstring Resource identifier. Namestring Resource name. Actionsobject Operation definitions provided directly by the current resource. manualboolean Whether a manually set time is used. ntp_configobject Simplified synchronization configuration of the time service. ntp_config.preferredstring Preferred time server. ntp_config.alternativestring Alternate time server. ntp_config.rtcboolean Whether to synchronize the hardware clock. ntp_config.make_stepobject Time stepping policy. ntp_config.make_step.thresholdstring Offset threshold that allows the time to be corrected directly. ntp_config.make_step.limitstring Number of direct corrections allowed after startup. ntp_config.server_configobject Local time server configuration. ntp_config.server_config.portstring Time service port. ntp_config.server_config.local_stratumstring Local time source stratum. timestring Manual time value; may be empty when not in manual mode. time_zonestring GMT time zone used by the time service, for example GMT+08:00. The standalone time zone resource may return the corresponding IANA name. chrony_configobject Complete Chrony configuration. chrony_config.serversarray List of upstream time servers. chrony_config.servers[].addrstring Time server address. chrony_config.servers[].iburstboolean Whether to send synchronization requests quickly at startup. chrony_config.servers[].minpollstring Minimum polling interval exponent. chrony_config.servers[].maxpollstring Maximum polling interval exponent. chrony_config.servers[].portstring Time server port. chrony_config.servers[].ntsboolean Whether Network Time Security is enabled. chrony_config.servers[].burstboolean Whether burst mode is enabled. chrony_config.servers[].trustboolean Whether this time source is trusted. chrony_config.logobject Chrony logging category configuration. chrony_config.log.measurementsboolean Whether to log measurements. chrony_config.log.statisticsboolean Whether to log statistics. chrony_config.log.trackingboolean Whether to log tracking. chrony_config.log.rtcboolean Whether to log RTC messages. chrony_config.log.refclocksboolean Whether to log reference clocks. chrony_config.log.tempcompboolean Whether to log temperature compensation. chrony_config.log.rawmeasurementsboolean Whether to log raw measurements. chrony_config.log.selectionboolean Whether to log time source selection. chrony_config.makestepobject Chrony time stepping policy. chrony_config.makestep.thresholdstring Time step threshold. chrony_config.makestep.limitstring Limit on the number of time steps. chrony_config.allowarray Network segments allowed to access the local time service. chrony_config.denyarray Network segments denied access to the local time service. chrony_config.portstring Local time service port. chrony_config.binddevicestring[] | null Network interfaces bound to Chrony. chrony_config.localobject Local time source configuration. chrony_config.local.distancestring Local time source distance. chrony_config.local.stratumstring Local time source stratum. chrony_config.local.orphanboolean Whether orphan mode is enabled. chrony_config.logdirstring Chrony log directory. chrony_config.driftfilestring Clock drift data file. chrony_config.minsourcesstring Minimum number of time sources required for synchronization. chrony_config.rtcsyncboolean Whether the system time is synchronized to the RTC. chrony_config.maxupdateskewstring Maximum estimated skew for which updating the clock is allowed. chrony_config.maxdistancestring Maximum root distance allowed for a time source. chrony_config.ntsdumpdirstring Directory where NTS data is saved. chrony_config.ntsservercertstring Path of the NTS server certificate. chrony_config.ntsserverkeystring Path of the NTS server private key. chrony_config.ntstrustedcertsstring NTS trusted certificate configuration.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Oem/Firefly/DateTime/Actions/SetDateTimeActionInfoPath /redfish/v1/Systems/{SystemId}/Oem/Firefly/DateTime/Actions/ComputerSystem.SetDateTimeRequest field DateTime, string, requiredDate format YYYY-MM-DD HH:mm:ss
curl --request POST \
--user '<username>:<password>' \
--header 'Content-Type: application/json' \
--data '{ "DateTime": "2026-08-04 18:00:00" }' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Oem/Firefly/DateTime/Actions/ComputerSystem.SetDateTime'
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Operation Impact
Setting the system time affects log ordering, tokens, certificates, scheduled tasks, and cluster synchronization. After the POST returns a success message, query the system time immediately to confirm that the device time has been updated to the expected value.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Oem/Firefly/TimeZone/Actions/SetTimeZoneActionInfoPath /redfish/v1/Systems/{SystemId}/Oem/Firefly/TimeZone/Actions/ComputerSystem.SetTimeZoneRequest field TimeZone, string, requiredExample value Etc/GMT-8
curl --request POST \
--user '<username>:<password>' \
--header 'Content-Type: application/json' \
--data '{ "TimeZone": "Etc/GMT-8" }' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Oem/Firefly/TimeZone/Actions/ComputerSystem.SetTimeZone'
The following is the real response returned after writing the current time zone Etc/GMT-8 back unchanged:
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Oem/Firefly/TimeService/Actions/ConfigureTimeServiceActionInfoPath /redfish/v1/Systems/{SystemId}/Oem/Firefly/TimeService/Actions/ConfigueTimeServiceRequired fields manual, time_zone
Request Field Type Required Description manualboolean Yes Whether a manual time is used. timestring No Manual time; used when manual=true. time_zonestring Yes GMT time zone, for example GMT+08:00. ntp_configobject No Time synchronization configuration. ntp_config.preferredstring No Preferred time server. ntp_config.alternativestring No Alternate time server. ntp_config.rtcboolean No Whether to synchronize the hardware clock. ntp_config.make_stepobject No Time stepping policy. ntp_config.make_step.thresholdstring No Time step threshold. ntp_config.make_step.limitstring No Limit on the number of time steps. ntp_config.server_configobject No Local time service configuration. ntp_config.server_config.portstring No Time service port. ntp_config.server_config.local_stratumstring No Local time source stratum.
Configure the Time Service curl --request POST \
--user '<username>:<password>' \
--header 'Content-Type: application/json' \
--data '{
"manual": false,
"ntp_config": {
"preferred": "ntp.aliyun.com",
"alternative": "",
"rtc": true,
"make_step": {
"threshold": "1",
"limit": "3"
},
"server_config": {
"port": "123",
"local_stratum": "10"
}
},
"time": "",
"time_zone": "GMT+08:00"
}' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Oem/Firefly/TimeService/Actions/ConfigueTimeService'
The following is the real response returned by the device after writing the current time service configuration back unchanged.
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Verification Results on the Real Device
After the POST returns 200 OK, a follow-up query confirms that the preferred time source, RTC, stepping parameters, port, and local stratum are all the same as before the operation; time_zone in the time service configuration is GMT+08:00, and the time zone resource correspondingly returns Etc/GMT-8. The system time keeps incrementing normally. You should still perform a GET to verify after a successful response instead of checking only MessageId.
Item Content Method GETPath /redfish/v1/Systems/bmc/Oem/Firefly/DateTime/Actions/SetDateTimeActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Set System Time ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Oem/Firefly/DateTime/Actions/SetDateTimeActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Oem/Firefly/DateTime/Actions/SetDateTimeActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "DateTime" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/Oem/Firefly/TimeZone/Actions/SetTimeZoneActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Set Time Zone ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Oem/Firefly/TimeZone/Actions/SetTimeZoneActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Oem/Firefly/TimeZone/Actions/SetTimeZoneActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "TimeZone" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/Oem/Firefly/TimeService/Actions/ConfigureTimeServiceActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Configure Time Service ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Oem/Firefly/TimeService/Actions/ConfigureTimeServiceActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Oem/Firefly/TimeService/Actions/ConfigureTimeServiceActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "manual" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "preferred" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "alternative" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "rtc" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "threshold" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "limit" ,
"Required" : false
}
],
"DataType" : "Object" ,
"Name" : "make_step" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "port" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "local_stratum" ,
"Required" : false
}
],
"DataType" : "Object" ,
"Name" : "server_config" ,
"Required" : false
}
],
"DataType" : "Object" ,
"Name" : "ntp_config" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "time" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"GMT+03:00" ,
"GMT+06:00" ,
"GMT+11:00" ,
"GMT+13:00" ,
"GMT+14:00" ,
"GMT-02:00" ,
"GMT-03:00" ,
"GMT-12:00" ,
"GMT+02:00" ,
"GMT+08:00" ,
"GMT-01:00" ,
"GMT-04:00" ,
"GMT-05:00" ,
"GMT-06:00" ,
"GMT-07:00" ,
"GMT-10:00" ,
"GMT+01:00" ,
"GMT+04:00" ,
"GMT+05:00" ,
"GMT+07:00" ,
"GMT+09:00" ,
"GMT-11:00" ,
"GMT+00:00" ,
"GMT+10:00" ,
"GMT+12:00" ,
"GMT-08:00" ,
"GMT-09:00"
],
"DataType" : "String" ,
"Name" : "time_zone" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowableValues[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValues[].DataTypestring Parameter data type. Parameters[].AllowableValues[].Namestring Parameter name. Parameters[].AllowableValues[].Requiredboolean Whether the parameter is required. Parameters[].AllowableValues[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].AllowableValues[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowableValues[].AllowableValues[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValues[].AllowableValues[].DataTypestring Parameter data type. Parameters[].AllowableValues[].AllowableValues[].Namestring Parameter name. Parameters[].AllowableValues[].AllowableValues[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/Storages/BlockDeviceAuthentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
Query the Block Device Storage Controller curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/BlockDevice'
200 OK · Excerpt of a Real Response {
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/BlockDevice" ,
"@odata.type" : "#Storage.v1_4_0.Storage" ,
"Oem" : {},
"StorageControllers@odata.count" : 1 ,
"StorageControllers" : [
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/BlockDevice#/StorageControllers/0" ,
"@odata.type" : "#StorageController.v1_16_0.StorageController" ,
"Id" : "lsblk" ,
"Description" : "System block Tool" ,
"Manufacturer" : "Linux"
}
],
"Volumes" : {
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes"
}
}
Field Type Description @odata.idstring Access path of the block device storage resource. @odata.typestring OData type of the storage resource. Oemobject OEM extension information of the storage resource. StorageControllers@odata.countnumber Number of storage controllers. StorageControllersarray List of storage controllers. StorageControllers[].@odata.idstring Resource path of the storage controller. StorageControllers[].@odata.typestring OData type of the storage controller. StorageControllers[].Idstring Storage controller identifier. StorageControllers[].Descriptionstring Storage controller description. StorageControllers[].Manufacturerstring Storage controller implementer. Volumesobject Entry point of block device volume resources. Volumes.@odata.idstring Path of the block device volume resource collection.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/VolumesAuthentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
Query the Block Device Volume Collection curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes'
200 OK · Excerpt of a Real Response {
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes" ,
"@odata.type" : "#VolumeCollection.VolumeCollection" ,
"Name" : "lsblk Volume Collection" ,
"Members@odata.count" : 1 ,
"Members" : [
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0"
}
],
"Oem" : {
"Firefly" : {
"Tree" : {
"blockdevices" : [
{
"name" : "mmcblk0" ,
"path" : "/dev/mmcblk0" ,
"size" : 62545461248 ,
"type" : "disk" ,
"pttype" : "gpt" ,
"StorageType" : "MMC" ,
"OemEnableCreatePartition" : false ,
"OemEnableDeletePartition" : false ,
"children" : [
{
"name" : "mmcblk0p3" ,
"fstype" : "ext4" ,
"mountpoint" : "/boot" ,
"size" : 268435456
},
{
"name" : "mmcblk0p6" ,
"fstype" : "ext4" ,
"mountpoint" : "/" ,
"size" : 7516192768
},
{
"name" : "mmcblk0p7" ,
"fstype" : "ext4" ,
"mountpoint" : "/userdata" ,
"size" : 53632548352
}
]
}
]
}
}
}
}
Field Type Description @odata.idstring Path of the block device volume collection. @odata.typestring OData type of the volume collection. Namestring Name of the volume collection. Members@odata.countnumber Number of root block devices. Membersarray List of root block device members. Members[].@odata.idstring Access path of a specific block device. Oemobject OEM extension information. Oem.Fireflyobject Firefly storage extension information. Oem.Firefly.Treeobject lsblk device tree.Oem.Firefly.Tree.blockdevicesarray List of root block devices. Oem.Firefly.Tree.blockdevices[].namestring Linux block device name. Oem.Firefly.Tree.blockdevices[].pathstring Device node path. Oem.Firefly.Tree.blockdevices[].sizenumber Device capacity in bytes. Oem.Firefly.Tree.blockdevices[].typestring Device type. Oem.Firefly.Tree.blockdevices[].pttypestring Partition table type. Oem.Firefly.Tree.blockdevices[].StorageTypestring Storage media type. Oem.Firefly.Tree.blockdevices[].OemEnableCreatePartitionboolean Whether creating a new partition is allowed. Oem.Firefly.Tree.blockdevices[].OemEnableDeletePartitionboolean Whether deleting partitions is allowed. Oem.Firefly.Tree.blockdevices[].childrenarray List of child partitions. Oem.Firefly.Tree.blockdevices[].children[].namestring Partition name. Oem.Firefly.Tree.blockdevices[].children[].fstypestring File system type. Oem.Firefly.Tree.blockdevices[].children[].mountpointstring Current mount point. Oem.Firefly.Tree.blockdevices[].children[].sizenumber Partition capacity in bytes.
Item Content Protocol WebSocket Handshake method GET + Upgrade: websocketPath /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/wsAuthentication Login privilege
<ws-protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/ws
After the connection is established, the server first sends the complete block device tree with ActionType=Action_GetInfo; it then subscribes to the storage Redis topic and continuously pushes device or task status changes.
Proxy Compatibility
The current test entry point goes through a Polipo HTTP proxy. A plain GET returns 502 Server dropped connection, and a manual Upgrade request returns 503 Couldn't parse client headers, which shows that this proxy cannot forward the WebSocket handshake. The server-side routing and Upgrade implementation exist, but the connection must be verified after bypassing this HTTP proxy or using a reverse proxy that supports WebSocket.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}Path parameter BlockDeviceId: obtained from the block device volume collection; the example below uses mmcblk0Authentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0'
200 OK · Excerpt of a Real Response {
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0" ,
"@odata.type" : "#Volume.v1_8_0.Volume" ,
"CapacityBytes" : "62545461248" ,
"RAIDType" : "None" ,
"VolumeType" : "RawDevice" ,
"Oem" : {
"Firefly" : {
"Detail" : {
"name" : "mmcblk0" ,
"path" : "/dev/mmcblk0" ,
"serial" : "0x9d722704" ,
"size" : 62545461248 ,
"type" : "disk" ,
"pttype" : "gpt" ,
"StorageType" : "MMC" ,
"OemEnableCreatePartition" : false ,
"OemEnableDeletePartition" : false ,
"OemEnableMakeFS" : false ,
"OemEnableMount" : false ,
"OemEnableUnmount" : false ,
"OemBlockBusy" : false
}
}
},
"Links" : {
"Drives@odata.count" : 1 ,
"Drives" : [
{
"@odata.id" : "/redfish/v1/Chassis/mmcblk0/Drives/"
}
]
}
}
Field Type Description @odata.idstring Path of the specified block device resource. @odata.typestring OData type of the block device volume. CapacityBytesstring Device capacity in bytes. RAIDTypestring RAID type. VolumeTypestring Volume type. Oemobject OEM extension information. Oem.Fireflyobject Firefly storage extension information. Oem.Firefly.Detailobject Detailed block device information. Oem.Firefly.Detail.namestring Device name. Oem.Firefly.Detail.pathstring Linux device node path. Oem.Firefly.Detail.serialstring Device serial number. Oem.Firefly.Detail.sizenumber Device capacity in bytes. Oem.Firefly.Detail.typestring Device type. Oem.Firefly.Detail.pttypestring Partition table type. Oem.Firefly.Detail.StorageTypestring Storage media type. Oem.Firefly.Detail.OemEnableCreatePartitionboolean Whether creating partitions is allowed. Oem.Firefly.Detail.OemEnableDeletePartitionboolean Whether deleting partitions is allowed. Oem.Firefly.Detail.OemEnableMakeFSboolean Whether creating a file system is allowed. Oem.Firefly.Detail.OemEnableMountboolean Whether mounting is allowed. Oem.Firefly.Detail.OemEnableUnmountboolean Whether unmounting is allowed. Oem.Firefly.Detail.OemBlockBusyboolean Whether the device is currently occupied by a task. Linksobject Linked resources. Links.Drives@odata.countnumber Number of associated drives. Links.Drivesarray List of associated drives. Links.Drives[].@odata.idstring Path of an associated drive.
Check the Capability Flags First
The current mmcblk0 is the running system disk, and the capability flags for creating/deleting partitions, formatting, mounting, and unmounting are all false. Clients must rely on the OemEnable* fields in the detail resource to decide whether to display or invoke the corresponding operations.
This API uses POST, but it only reads device health information and does not modify partitions or the file system.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/Actions/Oem/Firefly/SmartInfoActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/Actions/Oem/Firefly/SmartInfoRequest body Empty JSON object {} Success status code 200 OK
Query the SMART Information of mmcblk0 curl --request POST \
--user '<username>:<password>' \
--header 'Content-Type: application/json' \
--data '{}' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/SmartInfo'
The following is the standard Redfish Message response returned when this POST succeeds. The success message only indicates that the request has been processed; it contains no SMART metric fields.
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/{FreeSpaceId}/Actions/Oem/Firefly/NewPartitionActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/{FreeSpaceId}/Actions/Oem/Firefly/NewPartitionPrerequisites A free area with FreeSpace=true exists in the device tree, and OemEnableCreatePartition=true
Request Field Type Required Description StartOffsetMBnumber Yes Offset relative to the start of the free area, in MiB. SizeMBnumber Yes Capacity of the new partition in MiB. AlignmentBytenumber No Alignment bytes: 512, 1024, 2048, 4096, or 8192. Partlabelstring No GPT partition label. Labelstring No File system volume label. FsTypestring No ext4, exfat, ntfs, ext2, ext3, fat32, or <None>.
{
"StartOffsetMB" : 0 ,
"SizeMB" : 1024 ,
"AlignmentByte" : 4096 ,
"Partlabel" : "data" ,
"Label" : "data" ,
"FsType" : "ext4"
}
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/Actions/Oem/Firefly/WriteLabelActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/Actions/Oem/Firefly/WriteLabelRequest field Label, string, requiredPrerequisites OemEnableCreteLabel=true, and the target is not a system partition in use
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/Actions/Oem/Firefly/MountActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/Actions/Oem/Firefly/MountPrerequisites OemEnableMount=true
Request Field Type Required Description MountPathstring Yes Mount path that is absolute and not the root directory. MountTypestring Yes forever for a persistent mount, tmp for a temporary mount.RwModelstring No rw or ro.
{
"MountPath" : "/mnt/data" ,
"MountType" : "tmp" ,
"RwModel" : "rw"
}
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/Actions/Oem/Firefly/UMountActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/Actions/Oem/Firefly/UMountRequest field MountPath, string, requiredPrerequisites OemEnableUnmount=true
{
"MountPath" : "/mnt/data"
}
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/Actions/Oem/Firefly/MakeFileSystemActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/Actions/Oem/Firefly/MakeFileSystemPrerequisites OemEnableMakeFS=true
Request Field Type Required Description FsTypestring Yes ext4, exfat, ntfs, ext2, ext3, or fat32.Labelstring No File system volume label.
{
"FsType" : "ext4" ,
"Label" : "data"
}
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/Actions/Oem/Firefly/CheckRepairActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/Actions/Oem/Firefly/CheckRepairRequest field ActionType, string, required
ActionType allowed values:
Action_CheckFS: check the file system.
Action_CheckFSAutoRepair: check the file system and repair it automatically.
Action_CheckSector: check sectors.
{
"ActionType" : "Action_CheckFS"
}
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/Actions/Oem/Firefly/TaskListActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/Actions/Oem/Firefly/TaskListActionTypeAction_CheckFS, Action_CheckFSAutoRepair, Action_CheckSector, or Action_MkfsModelOnly Cancel is allowed
{
"ActionType" : "Action_CheckFS" ,
"Model" : "Cancel"
}
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method DELETEPath /redfish/v1/Systems/{SystemId}/Storages/BlockDevice/Volumes/{BlockDeviceId}/{PartitionId}Request body None Prerequisites OemEnableDeletePartition=true, and the target partition is not mounted and belongs to neither the system nor a RAID
Irreversible Operation
Deleting a partition modifies the partition table and makes the data on the partition inaccessible. The deletion capability of the current mmcblk0 is false, so no DELETE was performed.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/Storages/MdraidAuthentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
Query the Software RAID Storage Controller curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/Mdraid'
200 OK · Excerpt of a Real Response {
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/Mdraid" ,
"@odata.type" : "#Storage.v1_4_0.Storage" ,
"StorageControllers@odata.count" : 1 ,
"StorageControllers" : [
{
"Id" : "mdadm" ,
"Description" : "SoftRaid Tool in Linux" ,
"Manufacturer" : "RedHat" ,
"Oem" : {
"Firefly" : {
"FreeResource" : {
"Mdname" : "" ,
"Levels" : [ "Linear" , "Raid0" , "Raid1" , "Raid4" , "Raid5" , "Raid6" , "Raid10" ],
"Chunks" : [ "64K" , "128K" , "256K" , "512K" ],
"Layouts" : [ "left-symmetric" , "far" , "offset" ],
"Blocks" : []
},
"RiskInfo" : null
}
}
}
],
"Volumes" : {}
}
Field Type Description @odata.idstring Path of the software RAID controller resource. @odata.typestring OData type of the storage resource. StorageControllers@odata.countnumber Number of software RAID controllers. StorageControllersarray List of controllers. StorageControllers[].Idstring Controller identifier. StorageControllers[].Descriptionstring Controller description. StorageControllers[].Manufacturerstring Controller implementer. StorageControllers[].Oemobject Controller OEM information. StorageControllers[].Oem.Fireflyobject Firefly RAID information. StorageControllers[].Oem.Firefly.FreeResourceobject Resources available for creating a RAID. StorageControllers[].Oem.Firefly.FreeResource.Mdnamestring Suggested array device name. StorageControllers[].Oem.Firefly.FreeResource.Levelsarray Supported RAID levels. StorageControllers[].Oem.Firefly.FreeResource.Chunksarray Supported stripe chunk sizes. StorageControllers[].Oem.Firefly.FreeResource.Layoutsarray Supported layouts. StorageControllers[].Oem.Firefly.FreeResource.Blocksarray Block devices that can join a RAID. StorageControllers[].Oem.Firefly.RiskInfoobject | null Result of the most recent risk assessment. Volumesobject Entry point of RAID volumes.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/Storages/Mdraid/VolumesAuthentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
Query the Software RAID Volume Collection curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes'
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes" ,
"@odata.type" : "#VolumeCollection.VolumeCollection" ,
"Name" : "Soft RaidArray Volume Collection" ,
"Members@odata.count" : 0 ,
"Members" : [],
"Oem" : {
"Firefly" : {
"All" : {
"Raidlist" : [],
"Mdadmconf" : null
}
}
}
}
Field Type Description @odata.idstring Path of the software RAID volume collection. @odata.typestring OData type of the volume collection. Namestring Name of the volume collection. Members@odata.countnumber Number of RAID arrays. Membersarray List of RAID array members. Oemobject OEM extension information. Oem.Fireflyobject Firefly RAID extension information. Oem.Firefly.Allobject All RAID data. Oem.Firefly.All.Raidlistarray List of RAID arrays recognized by the backend. Oem.Firefly.All.Mdadmconfobject | null mdadm configuration content.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Actions/Oem/Firefly/CreateRaidArrayActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Actions/Oem/Firefly/CreateRaidArray
Request Field Type Required Description DevNamestring Yes Array device path or device name. MdNamestring Yes RAID array name. Levelstring Yes Linear, Raid0, Raid1, Raid4, Raid5, Raid6, or Raid10.Chunkstring No 64K, 128K, 256K, or 512K.Metadatastring No 0.90, 1.0, 1.1, or 1.2.Blocksstring[] Yes Block device paths that participate in the array.
{
"DevName" : "/dev/md0" ,
"MdName" : "md0" ,
"Level" : "Raid1" ,
"Chunk" : "512K" ,
"Metadata" : "1.2" ,
"Blocks" : [ "/dev/sda" , "/dev/sdb" ]
}
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Actions/Oem/Firefly/SetRiskInfoActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Actions/Oem/Firefly/SetRiskInfo
Request Field Type Required Description Levelstring No Target RAID level. Opsstring Yes create, expan, or change.Blocksobject[] Yes List of disks used for the risk assessment. Blocks[].BlockNamestring Yes Block device name. Blocks[].Sizenumber Yes Block device capacity. Blocks[].Rotaboolean Yes Whether the media is rotational.
{
"Level" : "Raid1" ,
"Ops" : "create" ,
"Blocks" : [
{
"BlockName" : "/dev/sda" ,
"Size" : 1000000000000 ,
"Rota" : true
}
]
}
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}Authentication HTTP Basic Auth or X-Xsrf-Token
Query a Specific Software RAID Array curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/<raid-array-id>'
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/RemoveDiskActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/RemoveDiskRequest field BlocksPath, string[], requiredServer-side limitation Code comments indicate that only RAID1 supports removing member disks
{
"BlocksPath" : [ "/dev/sdb" ]
}
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/AddDiskActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/AddDiskRequest field BlocksPath, string[], required
{
"BlocksPath" : [ "/dev/sdc" ]
}
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/BitmapActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/BitmapRequest field BitmapFlag, boolean, required
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/ReplaceDiskActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/ReplaceDisk
Request Field Type Required Description OldBlocksPathstring[] Yes Paths of the original member disks to be replaced. NewBlocksPathstring[] Yes Paths of the new member disks.
{
"OldBlocksPath" : [ "/dev/sdb" ],
"NewBlocksPath" : [ "/dev/sdc" ]
}
Member Disk Operations Not Performed
The current RAID volume collection is empty, so no corresponding ActionInfo can be generated and there are no member disks that can be safely operated on. The methods, paths, and parameters above have been verified against the server-side registration code and the request structure, but no POST was performed.
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/Reshape/SetCurrentRiskInfoActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/Reshape/SetCurrentRiskInfoRequest field Level, string, requiredAllowed values Linear, Raid0, Raid1, Raid4, Raid5, Raid6, Raid10
This API calculates the reshape risk and RAID level capabilities of the current array and saves them to the array runtime state. No array currently exists, so no POST was performed.
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/Reshape/CompareActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/Reshape/CompareRequest field Level, string, requiredAllowed values Linear, Raid0, Raid1, Raid4, Raid5, Raid6, Raid10
The server calculates the upgrade or downgrade direction, the target capacity, the number of disks to add or release, and the disk count constraints for RAID10.
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/Reshape/RiskActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/Reshape/Risk
Request Field Type Required Description Levelstring No Target RAID level. Opsstring Yes create, expan, or change.Blocksobject[] Yes Disks involved in the risk calculation. Blocks[].BlockNamestring Yes Block device name. Blocks[].Sizenumber Yes Block device capacity. Blocks[].Rotaboolean Yes Whether the media is rotational.
{
"Level" : "Raid5" ,
"Ops" : "change" ,
"Blocks" : [
{
"BlockName" : "/dev/sdc" ,
"Size" : 1000000000000 ,
"Rota" : true
}
]
}
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTActionInfo /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/Reshape/ExecActionInfoPath /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/Oem/Firefly/Reshape/ExecRequest fields Same as "Calculating RAID Reshape Risk"
{
"Level" : "Raid5" ,
"Ops" : "change" ,
"Blocks" : [
{
"BlockName" : "/dev/sdc" ,
"Size" : 1000000000000 ,
"Rota" : true
}
]
}
Do Not Judge a Reshape Solely by Request Success
A reshape can run for a long time and degrade the array. Before executing, call the risk context, level comparison, and risk calculation APIs first; afterwards, keep querying the status of the specific RAID array. No RAID array currently exists, so no reshape POST was performed this time.
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method POSTPath /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}/Actions/AssembleActionInfo No separate ActionInfo Request body None
This route calls the server-side AssembleRaid. No array is currently available to assemble, so no POST was performed.
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Item Content Method DELETEPath /redfish/v1/Systems/{SystemId}/Storages/Mdraid/Volumes/{RaidArrayId}Request body None
RAID Deletion Risk
The server calls DeleteRaid to delete the array. This operation may erase the RAID metadata and make the data inaccessible; no RAID array currently exists, so no DELETE was performed.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/SmartInfoActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the SMART Operation ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/SmartInfoActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/SmartInfoActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : null
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersnull List of operation parameter definitions.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/free0/Actions/Oem/Firefly/NewPartitionActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 405 Method Not Allowed
Query the Create Partition ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/free0/Actions/Oem/Firefly/NewPartitionActionInfo"
{
"error" : {
"@Message.ExtendedInfo" : [
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785863973" ,
"MessageId" : "Base.1.11.0.GeneralError" ,
"Message" : "[free0] not found in unallocated partition" ,
"MessageArgs" : [
],
"MessageSeverity" : "Critical" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
],
"code" : "Base.1.11.0.GeneralError" ,
"message" : "A general error has occurred. See ExtendedInfo for more information."
}
}
Field Type Description errorobject Redfish error object. error.@Message.ExtendedInfoarray List of error details. error.@Message.ExtendedInfo[].@odata.typestring OData type of the ActionInfo or message resource. error.@Message.ExtendedInfo[].Timestampstring Timestamp when the message was generated. error.@Message.ExtendedInfo[].MessageIdstring Redfish message identifier. error.@Message.ExtendedInfo[].Messagestring Specific error message. error.@Message.ExtendedInfo[].MessageArgsarray List of message formatting arguments. error.@Message.ExtendedInfo[].MessageSeveritystring Message severity. error.@Message.ExtendedInfo[].Severitystring Severity field kept for compatibility. error.@Message.ExtendedInfo[].Oemnull OEM extension message. error.@Message.ExtendedInfo[].RelatedPropertiesnull Property paths related to the message. error.@Message.ExtendedInfo[].Resolutionstring Recommended resolution. error.codestring Redfish error code. error.messagestring Generic Redfish error description.
No Unallocated Space on the Current Device
The current system disk has no unallocated area available for creating a new partition, so querying with free0 actually returns 405 Method Not Allowed. Once a valid free-space resource appears, replace free0 in the path with the actual free-space identifier returned by the query.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/WriteLabelActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Write Volume Label ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/WriteLabelActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/WriteLabelActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Label" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/MountActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Mount Block Device ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/MountActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/MountActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "MountPath" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"forever" ,
"tmp"
],
"DataType" : "String" ,
"Name" : "MountType" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"rw" ,
"ro"
],
"DataType" : "String" ,
"Name" : "RwModel" ,
"Required" : false
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/UMountActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Unmount Block Device ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/UMountActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/UMountActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "MountPath" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/MakeFileSystemActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Create File System ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/MakeFileSystemActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/MakeFileSystemActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"ext4" ,
"exfat" ,
"ntfs" ,
"ext2" ,
"ext3" ,
"fat32"
],
"DataType" : "String" ,
"Name" : "FsType" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "Label" ,
"Required" : false
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/CheckRepairActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Check-and-Repair ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/CheckRepairActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/CheckRepairActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"Action_CheckFS" ,
"Action_CheckFSAutoRepair" ,
"Action_CheckSector"
],
"DataType" : "String" ,
"Name" : "ActionType" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/TaskListActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Cancel Storage Task ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/TaskListActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/BlockDevice/Volumes/mmcblk0/Actions/Oem/Firefly/TaskListActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"Action_CheckFS" ,
"Action_CheckFSAutoRepair" ,
"Action_CheckSector" ,
"Action_CheckFS" ,
"Action_Mkfs"
],
"DataType" : "String" ,
"Name" : "ActionType" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"Cancel"
],
"DataType" : "String" ,
"Name" : "Model" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/Mdraid/Actions/Oem/Firefly/CreateRaidArrayActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Create Software RAID ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/Mdraid/Actions/Oem/Firefly/CreateRaidArrayActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/Mdraid/Actions/Oem/Firefly/CreateRaidArrayActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "DevName" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "MdName" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"Linear" ,
"Raid0" ,
"Raid1" ,
"Raid4" ,
"Raid5" ,
"Raid6" ,
"Raid10"
],
"DataType" : "String" ,
"Name" : "Level" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"64K" ,
"128K" ,
"256K" ,
"512K"
],
"DataType" : "String" ,
"Name" : "Chunk" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"0.90" ,
"1.0" ,
"1.1" ,
"1.2"
],
"DataType" : "String" ,
"Name" : "Metadata" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "StringArray" ,
"Name" : "Blocks" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/Mdraid/Actions/Oem/Firefly/SetRiskInfoActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Set RAID Risk Information ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/Mdraid/Actions/Oem/Firefly/SetRiskInfoActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/Mdraid/Actions/Oem/Firefly/SetRiskInfoActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"Linear" ,
"Raid0" ,
"Raid1" ,
"Raid4" ,
"Raid5" ,
"Raid6" ,
"Raid10"
],
"DataType" : "String" ,
"Name" : "Level" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"create" ,
"expan" ,
"change"
],
"DataType" : "String" ,
"Name" : "Ops" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "BlockName" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "Size" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "Rota" ,
"Required" : true
}
],
"DataType" : "ObjectArray" ,
"Name" : "Blocks" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required. Parameters[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowableValues[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValues[].DataTypestring Parameter data type. Parameters[].AllowableValues[].Namestring Parameter name. Parameters[].AllowableValues[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/RemoveDiskActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Remove RAID Member Disk ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/RemoveDiskActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/RemoveDiskActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "StringArray" ,
"Name" : "BlocksPath" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/AddDiskActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Add RAID Member Disk ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/AddDiskActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/AddDiskActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "StringArray" ,
"Name" : "BlocksPath" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/BitmapActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the RAID Bitmap ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/BitmapActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/BitmapActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
true ,
false
],
"DataType" : "Boolean" ,
"Name" : "BitmapFlag" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/ReplaceDiskActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Replace RAID Member Disk ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/ReplaceDiskActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/ReplaceDiskActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "StringArray" ,
"Name" : "OldBlocksPath" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "StringArray" ,
"Name" : "NewBlocksPath" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/Reshape/SetCurrentRiskInfoActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the RAID Reshape Current Risk ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/Reshape/SetCurrentRiskInfoActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/Reshape/SetCurrentRiskInfoActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"Linear" ,
"Raid0" ,
"Raid1" ,
"Raid4" ,
"Raid5" ,
"Raid6" ,
"Raid10"
],
"DataType" : "String" ,
"Name" : "Level" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/Reshape/CompareActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the RAID Reshape Compare ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/Reshape/CompareActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/Reshape/CompareActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"Linear" ,
"Raid0" ,
"Raid1" ,
"Raid4" ,
"Raid5" ,
"Raid6" ,
"Raid10"
],
"DataType" : "String" ,
"Name" : "Level" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/Reshape/RiskActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the RAID Reshape Risk ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/Reshape/RiskActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/Reshape/RiskActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"Linear" ,
"Raid0" ,
"Raid1" ,
"Raid4" ,
"Raid5" ,
"Raid6" ,
"Raid10"
],
"DataType" : "String" ,
"Name" : "Level" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"create" ,
"expan" ,
"change"
],
"DataType" : "String" ,
"Name" : "Ops" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "BlockName" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "Size" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "Rota" ,
"Required" : true
}
],
"DataType" : "ObjectArray" ,
"Name" : "Blocks" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required. Parameters[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowableValues[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValues[].DataTypestring Parameter data type. Parameters[].AllowableValues[].Namestring Parameter name. Parameters[].AllowableValues[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/Reshape/ExecActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Actual status code 200 OK
Query the Execute RAID Reshape ActionInfo curl --user "<username>:<password>" \
--header "Accept: application/json" \
"<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/Reshape/ExecActionInfo"
{
"@odata.id" : "/redfish/v1/Systems/bmc/Storages/Mdraid/Volumes/md0/Actions/Oem/Firefly/Reshape/ExecActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"Linear" ,
"Raid0" ,
"Raid1" ,
"Raid4" ,
"Raid5" ,
"Raid6" ,
"Raid10"
],
"DataType" : "String" ,
"Name" : "Level" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"create" ,
"expan" ,
"change"
],
"DataType" : "String" ,
"Name" : "Ops" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "BlockName" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "Size" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "Rota" ,
"Required" : true
}
],
"DataType" : "ObjectArray" ,
"Name" : "Blocks" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the ActionInfo resource. @odata.typestring OData type of the ActionInfo or message resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValuesarray Allowed values and structure definitions for a parameter or sub-parameter. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name. Parameters[].Requiredboolean Whether the parameter is required. Parameters[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowableValues[].AllowablePatternstring String pattern allowed for the parameter; an empty string means no pattern restriction. Parameters[].AllowableValues[].DataTypestring Parameter data type. Parameters[].AllowableValues[].Namestring Parameter name. Parameters[].AllowableValues[].Requiredboolean Whether the parameter is required.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/Actions/PowerModeSettingActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
Query the Power Mode Parameters curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Actions/PowerModeSettingActionInfo'
{
"@odata.id" : "/redfish/v1/Systems/bmc/Actions/PowerModeSettingActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"MaximumPerformance" ,
"BalancedPerformance" ,
"PowerSaving" ,
"Static" ,
"OSControlled"
],
"DataType" : "String" ,
"Name" : "PowerMode" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the power mode ActionInfo resource. @odata.typestring OData type of the ActionInfo resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of power mode parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring Allowed string pattern. Parameters[].AllowableValuesarray List of allowed power modes. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Parameter name, currently PowerMode. Parameters[].Requiredboolean Whether the parameter is required.
Sets the CPU frequency scaling mode of the specified system. Before submitting, use the "Query the Power Mode Parameters" API to obtain the values supported by the current service.
Item Content Method POSTPath /redfish/v1/Systems/{SystemId}/Actions/ComputerSystem.PowerMode.SettingActionInfo /redfish/v1/Systems/{SystemId}/Actions/PowerModeSettingActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Required privilege OemPowerControlSuccess status code 200 OK
Field Type Required Description PowerModestring Yes Power mode. Allowed values are MaximumPerformance, BalancedPerformance, PowerSaving, Static, and OSControlled.
Value Description MaximumPerformanceMaximum performance mode. The server maps it to the CPU Performance governor. BalancedPerformanceBalanced performance mode. The server maps it to the CPU Interactive governor. PowerSavingPower-saving mode. The server maps it to the CPU Powersave governor. StaticStatic mode. The server maps it to the CPU Userspace governor. OSControlledOperating-system-controlled mode. The server maps it to the CPU Ondemand governor.
Running State Impact
This API immediately changes the CPU frequency scaling policy of the target system and may affect performance, power consumption, and temperature. Confirm the service workload first and use the supported values returned by the ActionInfo.
curl --user '<username>:<password>' \
--request POST \
--header 'Content-Type: application/json' \
--data '{
"PowerMode": "OSControlled"
}' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Actions/ComputerSystem.PowerMode.Setting'
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Queries the reset operation types supported by the specified system. Different systems may return different parameter definitions, so query the ActionInfo of the target system before performing a reset.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/Actions/ResetActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
Query the System Reset Parameters curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/sub01/Actions/ResetActionInfo'
{
"@odata.id" : "/redfish/v1/Systems/sub01/Actions/ResetActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"On" ,
"ForceOn" ,
"ForceOff" ,
"ForceRestart" ,
"GracefulRestart" ,
"GracefulShutdown" ,
"PowerCycle" ,
"LoaderByHardware"
],
"DataType" : "String" ,
"Name" : "ResetType" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the system reset ActionInfo resource. @odata.typestring OData type of the ActionInfo resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of reset parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring Allowed string pattern; an empty string means no pattern restriction. Parameters[].AllowableValuesarray List of reset types supported by the target system. Parameters[].DataTypestring Parameter data type. Parameters[].Namestring Request field name, currently ResetType for sub-board systems. Parameters[].Requiredboolean Whether the parameter is required.
Performs a power-on, shutdown, restart, or power cycle operation on the specified system according to ResetType.
Item Content Method POSTPath /redfish/v1/Systems/{SystemId}/Actions/ComputerSystem.ResetActionInfo /redfish/v1/Systems/{SystemId}/Actions/ResetActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Required privilege OemPowerControlSuccess status code 200 OK
Field Type Required Description ResetTypestring Yes Reset type for sub-board systems. The actual allowed values are subject to the Reset ActionInfo of the target system.
Value Description OnPowers on a system that is off; when the system is already on, it usually stays in the current state. ForceOnForces the system power on. ForceOffForces the system power off, which may cause unsaved data to be lost. ForceRestartForces a system restart. GracefulRestartRequests a graceful operating system restart. GracefulShutdownRequests a graceful operating system shutdown. PowerCyclePowers off and then powers on again. LoaderByHardwareEnters the Loader through hardware.
Service Interruption Risk
ForceOff, ForceRestart, GracefulRestart, GracefulShutdown, PowerCycle, and LoaderByHardware may interrupt services. Before executing, confirm the target SystemId, save service data, and reserve a recovery window.
curl --user '<username>:<password>' \
--request POST \
--header 'Content-Type: application/json' \
--data '{
"ResetType": "On"
}' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/<system-id>/Actions/ComputerSystem.Reset'
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
Parameter Differences for the BMC Target
The parameter name in the Reset ActionInfo that the current server returns for bmc is GracefulRestart, not the ResetType used by sub-boards. When calling bmc, follow its ActionInfo and submit {"GracefulRestart":"GracefulRestart"}; the server returns a success message, but the implementation does not actually restart the BMC. Submitting ResetType directly to bmc returns 400 PropertyUnknown.
Queries the request parameters, required status, and allowed values of the set power-on policy API.
Item Content Method GETPath /redfish/v1/Systems/{SystemId}/Actions/SetPowerConfig.ActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
Query the Power-On Policy Parameters curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/sub01/Actions/SetPowerConfig.ActionInfo'
{
"@odata.id" : "/redfish/v1/Systems/sub01/Actions/SetPowerConfig.ActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "PowerOnDelaySeconds" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
"AlwaysOn" ,
"AlwaysOff" ,
"LastState"
],
"DataType" : "String" ,
"Name" : "PowerRestorePolicy" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the power-on policy ActionInfo resource. @odata.typestring OData type of the ActionInfo resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of power-on policy parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for this parameter. Parameters[].AllowablePatternstring Allowed string pattern; an empty string means no pattern restriction. Parameters[].AllowableValuesarray List of allowed values for a string parameter; only PowerRestorePolicy returns this field. Parameters[].DataTypestring Parameter data type, which can be Number or String. Parameters[].Namestring Request field name. Parameters[].Requiredboolean Whether the parameter is required.
Sets the startup policy and power-on delay for the sub-board after power is restored.
Item Content Method POSTPath /redfish/v1/Systems/{SystemId}/Actions/SetPowerConfigActionInfo /redfish/v1/Systems/{SystemId}/Actions/SetPowerConfig.ActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Required privilege OemPowerControlSuccess status code 200 OK
Field Type Required Description PowerRestorePolicystring Yes Power restore policy. Allowed values are AlwaysOn, AlwaysOff, and LastState. PowerOnDelaySecondsinteger No Number of seconds to delay power-on after power is restored. If omitted, the Go server treats it as the integer zero value 0.
PowerRestorePolicy ValueDescription AlwaysOnAutomatically starts the sub-board after power is restored. AlwaysOffStays powered off after power is restored. LastStateRestores the power state from before the power loss after power is restored.
Configuration Impact
This API writes the sub-board runtime power configuration and affects subsequent power-loss recovery behavior. It is recommended to first query PowerRestorePolicy and PowerOnDelaySeconds in the system resources and confirm the target SystemId before submitting. bmc does not support this operation.
curl --user '<username>:<password>' \
--request POST \
--header 'Content-Type: application/json' \
--data '{
"PowerRestorePolicy": "AlwaysOn",
"PowerOnDelaySeconds": 0
}' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/<system-id>/Actions/SetPowerConfig'
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.
This section describes the OEM port mapping resources of the BMC. Port mapping supports port redirection, port forwarding, and IP mapping, and provides a connectivity testing operation.
BMC Only
The APIs in this section uniformly use the system identifier bmc. The server-side implementation of the port mapping testing operation also rejects non-BMC systems.
Queries all port mapping rules currently saved on the BMC, as well as the entry points of the configuration and testing operations.
Item Content Method GETPath /redfish/v1/Systems/bmc/Oem/Firefly/PortMappingsAuthentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Oem/Firefly/PortMappings'
{
"@odata.id" : "/redfish/v1/Systems/bmc/Oem/Firefly/PortMappings" ,
"@odata.type" : "#PortMappings.v1_9_0.PortMappings" ,
"Id" : "PortMappings" ,
"Name" : "PortMappings" ,
"Actions" : {
"#PortMappings.Configure" : {
"target" : "/redfish/v1/Systems/bmc/Oem/Firefly/PortMappings/Actions/Configure" ,
"@Redfish.ActionInfo" : "/redfish/v1/Systems/bmc/Oem/Firefly/PortMappings/Actions/ConfigureActionInfo"
},
"#PortMappings.Testing" : {
"target" : "/redfish/v1/Systems/bmc/Oem/Firefly/PortMappings/Actions/Testing" ,
"@Redfish.ActionInfo" : "/redfish/v1/Systems/bmc/Oem/Firefly/PortMappings/Actions/TestingActionInfo"
}
},
"Oem" : {
"Firefly" : {
"PortMappings" : [
{
"external_ip" : "" ,
"external_port" : 88 ,
"protocol" : "tcp" ,
"internal_ip" : "172.168.1.1" ,
"internal_port" : 8080 ,
"service_name" : "hjkjhdkjsahdkjasdhkasjdhas" ,
"status" : true ,
"RedirectUrl" : ""
},
{
"external_ip" : "" ,
"external_port" : 8080 ,
"protocol" : "tcp" ,
"internal_ip" : "172.168.0.10" ,
"internal_port" : 8080 ,
"service_name" : "21" ,
"status" : false ,
"RedirectUrl" : ""
},
{
"external_ip" : "" ,
"external_port" : 1 ,
"protocol" : "tcp" ,
"internal_ip" : "172.168.1.10" ,
"internal_port" : 8080 ,
"service_name" : "2" ,
"status" : false ,
"RedirectUrl" : ""
}
]
}
}
}
Field Type Description @odata.idstring Path of the port mapping resource. @odata.typestring OData type of the port mapping resource. Idstring Resource identifier. Namestring Resource name. Actionsobject Set of operations supported by the resource. Actions.#PortMappings.Configureobject Port mapping configuration operation. Actions.#PortMappings.Configure.targetstring POST path of the configuration operation. Actions.#PortMappings.Configure.@Redfish.ActionInfostring ActionInfo path of the configuration operation. Actions.#PortMappings.Testingobject Port mapping testing operation. Actions.#PortMappings.Testing.targetstring POST path of the testing operation. Actions.#PortMappings.Testing.@Redfish.ActionInfostring ActionInfo path of the testing operation. Oemobject OEM extension object. Oem.Fireflyobject Firefly OEM extension object. Oem.Firefly.PortMappingsarray List of port mapping rules currently saved. Oem.Firefly.PortMappings[].external_ipstring External IP; may be empty in port mapping or local redirect scenarios. Oem.Firefly.PortMappings[].external_portinteger External port, in the range 0 to 65535. Oem.Firefly.PortMappings[].protocolstring Protocol type: tcp, udp, or all in IP mapping scenarios. Oem.Firefly.PortMappings[].internal_ipstring Internal target IP; may be empty in local port redirect scenarios. Oem.Firefly.PortMappings[].internal_portinteger Internal target port, in the range 0 to 65535. Oem.Firefly.PortMappings[].service_namestring Rule name, which is also the rule identifier. Oem.Firefly.PortMappings[].statusboolean Whether the rule is enabled. false means the rule is saved but no forwarding rule is generated. Oem.Firefly.PortMappings[].RedirectUrlstring Optional redirect URL field. The first letter of the field name is uppercase.
Queries the request structure, field types, required status, and protocol allowed values of the configuration operation.
Item Content Method GETPath /redfish/v1/Systems/bmc/Oem/Firefly/PortMappings/Actions/ConfigureActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Success status code 200 OK
Query the Port Mapping Configuration Parameters curl --user '<username>:<password>' \
--header 'Accept: application/json' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Oem/Firefly/PortMappings/Actions/ConfigureActionInfo'
{
"@odata.id" : "/redfish/v1/Systems/bmc/Oem/Firefly/PortMappings/Actions/ConfigureActionInfo" ,
"@odata.type" : "#ActionInfo.v1_1_2.ActionInfo" ,
"Id" : "ActionInfo" ,
"Name" : "Action Info" ,
"Parameters" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "external_ip" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "external_port" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"AllowableValues" : [ "tcp" , "udp" , "all" ],
"DataType" : "String" ,
"Name" : "protocol" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "internal_ip" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Number" ,
"Name" : "internal_port" ,
"Required" : false
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "service_name" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "Boolean" ,
"Name" : "status" ,
"Required" : true
},
{
"DisallowedInput" : false ,
"AllowablePattern" : "" ,
"DataType" : "String" ,
"Name" : "RedirectUrl" ,
"Required" : false
}
],
"DataType" : "ObjectArray" ,
"Name" : "PortMappings" ,
"Required" : true
}
]
}
Field Type Description @odata.idstring Path of the configuration operation ActionInfo resource. @odata.typestring OData type of the ActionInfo resource. Idstring ActionInfo resource identifier. Namestring ActionInfo resource name. Parametersarray List of operation parameter definitions. Parameters[].DisallowedInputboolean Whether input is disallowed for the main parameter. Parameters[].AllowablePatternstring Input pattern allowed for the main parameter. Parameters[].AllowableValuesarray List of field definitions for elements of the PortMappings array. Parameters[].AllowableValues[].DisallowedInputboolean Whether input is disallowed for the sub-field. Parameters[].AllowableValues[].AllowablePatternstring Input pattern allowed for the sub-field. Parameters[].AllowableValues[].AllowableValuesarray Allowed values for the sub-field; currently only protocol returns tcp, udp, and all. Parameters[].AllowableValues[].DataTypestring Sub-field data type. Parameters[].AllowableValues[].Namestring Sub-field name. Parameters[].AllowableValues[].Requiredboolean Whether the sub-field is required. Parameters[].DataTypestring Data type of the main parameter, currently the object array ObjectArray. Parameters[].Namestring Name of the main parameter, currently PortMappings. Parameters[].Requiredboolean Whether the main parameter is required.
Replaces the current port mapping configuration of the BMC with the complete PortMappings array in the request.
Item Content Method POSTPath /redfish/v1/Systems/bmc/Oem/Firefly/PortMappings/Actions/ConfigureActionInfo /redfish/v1/Systems/bmc/Oem/Firefly/PortMappings/Actions/ConfigureActionInfoAuthentication HTTP Basic Auth or X-Xsrf-Token Required privilege ConfigureComponentsSuccess status code 200 OK
Field Type Required Description PortMappingsarray Yes Complete list of port mapping rules to save. This array replaces the existing list. PortMappings[].external_ipstring No External IP. An empty string can be passed in port forwarding and port redirect scenarios. PortMappings[].external_portinteger No External port, in the range 0 to 65535. Use 0 in IP mapping scenarios. PortMappings[].protocolstring Yes Protocol. Port mapping uses tcp or udp; only pure IP mapping can use all. PortMappings[].internal_ipstring No Internal target IP. Pass an empty string in local port redirect scenarios. PortMappings[].internal_portinteger No Internal target port, in the range 0 to 65535. Use 0 in IP mapping scenarios. PortMappings[].service_namestring Yes Non-empty rule name. PortMappings[].statusboolean Yes Whether the rule is enabled. PortMappings[].RedirectUrlstring No Optional redirect URL. Note that the first letter of the field name is uppercase.
Overwriting Configuration
This API does not append a single rule; it replaces the entire port mapping list. Before submitting, query the existing Oem.Firefly.PortMappings and include the rules to keep in the request. Submitting an empty array clears all port mapping configuration.
curl --user '<username>:<password>' \
--request POST \
--header 'Content-Type: application/json' \
--data '{
"PortMappings": [
{
"external_ip": "",
"external_port": 8081,
"protocol": "tcp",
"internal_ip": "192.168.2.10",
"internal_port": 22,
"service_name": "ssh-forward",
"status": true,
"RedirectUrl": ""
}
]
}' \
'<protocol>://<device-ip>:<port>/redfish/v1/Systems/bmc/Oem/Firefly/PortMappings/Actions/Configure'
{
"@odata.type" : "#Message.v1_1_1.Message" ,
"Timestamp" : "1785836138" ,
"MessageId" : "Base.1.11.0.Success" ,
"Message" : "The request completed successfully." ,
"MessageArgs" : [],
"MessageSeverity" : "OK" ,
"Severity" : "" ,
"Oem" : null ,
"RelatedProperties" : null ,
"Resolution" : "None"
}
Field Type Description @odata.typestring OData type of the Redfish message resource. Timestampstring Timestamp recorded by the server when generating the response. MessageIdstring Message identifier; Base.1.11.0.Success on success. Messagestring Description of the request processing result. MessageArgsarray List of message formatting arguments; an empty array in this response. MessageSeveritystring Message severity; OK on success. Severitystring Severity field kept for compatibility; an empty string in this response. Oemobject | null OEM extension message; null in this response. RelatedPropertiesarray | null Property paths related to the message; null in this response. Resolutionstring Recommended resolution; None on success.