I have a kind of naive question, just to know if I fully understand the way Redfish "works":
For example : Chassis has a "Status" property. According to specification, this property is NOT readonly.
Does it mean that it is possible to send a PUT on the RF server to make it change ? Or should I have a corresponding real OEM Action like "ChangeStatus", to change that Property (in that case, what is the purpose of "PUT" behavior) ?
I mean every property that is not readonly could be changed immediatly by a simple 'PUT' sent on the Redfish server that will have the behavior (action?) to change the status ?
In other words, some properties reflect a "State" without the possibility to be set and some other properties are both exposing a state and a way to change that value , is it right ?
Does it means that 'Actions' are reserved to Properties without "values" or "states", but more simple function without results, like Reset that could not be on/off ?
I know my question is certainly obvious, well, I should develop the client part with label / form / ... html components to reflect a good Redfish behavior,
Regards, Francine Sorry for my poor english, I am French
"Status" as an object is not marked with any sort of permissions. We do that in the Redfish data model for all objects in resources since there are cases where different properties in the same object can have different permissions. In the case of Status, all of the underlying properties ("State", "HealthRollup", and "Health") are marked with "Read" as the permission. So, it should not be possible to PATCH or PUT the Status object on a resource.
We define Actions on resources for cases where we expect the client wants to be able to affect a resource in a particular manner, but the PUT and PATCH HTTP verbs do not make sense for the given context. PUT and PATCH are methods where a client wants to directly change a value in the resource (like changing an AssetTag property). Doing something like a "Reset" doesn't translate very well to PUT and PATCH, so Actions are used in these scenarios. It's possible that some Actions will have an effect on some properties though. For example, performing a "Reset" with the ResetType set to "ForceOff" will likely change the "Status" of the resource.