1 #pragma once
2 /****************************************************************
3  *                 READ THIS WARNING FIRST
4  * This is an auto-generated header which contains definitions
5  * for Redfish DMTF defined messages.
6  * DO NOT modify this registry outside of running the
7  * parse_registries.py script.  The definitions contained within
8  * this file are owned by DMTF.  Any modifications to these files
9  * should be first pushed to the relevant registry in the DMTF
10  * github organization.
11  ***************************************************************/
12 #include "registries.hpp"
13 
14 #include <array>
15 
16 // clang-format off
17 
18 namespace redfish::registries::base
19 {
20 const Header header = {
21     "Copyright 2014-2022 DMTF. All rights reserved.",
22     "#MessageRegistry.v1_5_0.MessageRegistry",
23     "Base.1.13.0",
24     "Base Message Registry",
25     "en",
26     "This registry defines the base messages for Redfish",
27     "Base",
28     "1.13.0",
29     "DMTF",
30 };
31 constexpr const char* url =
32     "https://redfish.dmtf.org/registries/Base.1.13.0.json";
33 
34 constexpr std::array registry =
35 {
36     MessageEntry{
37         "AccessDenied",
38         {
39             "Indicates that while attempting to access, connect to, or transfer to or from another resource, the service denied access.",
40             "While attempting to establish a connection to '%1', the service denied access.",
41             "Critical",
42             1,
43             {
44                 "string",
45             },
46             "Attempt to ensure that the URI is correct and that the service has the appropriate credentials.",
47         }},
48     MessageEntry{
49         "AccountForSessionNoLongerExists",
50         {
51             "Indicates that the account for the session has been removed, thus the session has been removed as well.",
52             "The account for the current session has been removed, thus the current session has been removed as well.",
53             "OK",
54             0,
55             {},
56             "Attempt to connect with a valid account.",
57         }},
58     MessageEntry{
59         "AccountModified",
60         {
61             "Indicates that the account was successfully modified.",
62             "The account was successfully modified.",
63             "OK",
64             0,
65             {},
66             "No resolution is required.",
67         }},
68     MessageEntry{
69         "AccountNotModified",
70         {
71             "Indicates that the modification requested for the account was not successful.",
72             "The account modification request failed.",
73             "Warning",
74             0,
75             {},
76             "The modification may have failed due to permission issues or issues with the request body.",
77         }},
78     MessageEntry{
79         "AccountRemoved",
80         {
81             "Indicates that the account was successfully removed.",
82             "The account was successfully removed.",
83             "OK",
84             0,
85             {},
86             "No resolution is required.",
87         }},
88     MessageEntry{
89         "ActionDeprecated",
90         {
91             "Indicates the action is deprecated.",
92             "The action %1 is deprecated.",
93             "Warning",
94             1,
95             {
96                 "string",
97             },
98             "Refer to the schema guide for more information.",
99         }},
100     MessageEntry{
101         "ActionNotSupported",
102         {
103             "Indicates that the action supplied with the POST operation is not supported by the resource.",
104             "The action %1 is not supported by the resource.",
105             "Critical",
106             1,
107             {
108                 "string",
109             },
110             "The action supplied cannot be resubmitted to the implementation.  Perhaps the action was invalid, the wrong resource was the target or the implementation documentation may be of assistance.",
111         }},
112     MessageEntry{
113         "ActionParameterDuplicate",
114         {
115             "Indicates that the action was supplied with a duplicated action parameter in the request body.",
116             "The action %1 was submitted with more than one value for the parameter %2.",
117             "Warning",
118             2,
119             {
120                 "string",
121                 "string",
122             },
123             "Resubmit the action with only one instance of the action parameter in the request body if the operation failed.",
124         }},
125     MessageEntry{
126         "ActionParameterMissing",
127         {
128             "Indicates that the action requested was missing an action parameter that is required to process the action.",
129             "The action %1 requires the parameter %2 to be present in the request body.",
130             "Critical",
131             2,
132             {
133                 "string",
134                 "string",
135             },
136             "Supply the action with the required parameter in the request body when the request is resubmitted.",
137         }},
138     MessageEntry{
139         "ActionParameterNotSupported",
140         {
141             "Indicates that the parameter supplied for the action is not supported on the resource.",
142             "The parameter %1 for the action %2 is not supported on the target resource.",
143             "Warning",
144             2,
145             {
146                 "string",
147                 "string",
148             },
149             "Remove the parameter supplied and resubmit the request if the operation failed.",
150         }},
151     MessageEntry{
152         "ActionParameterUnknown",
153         {
154             "Indicates that an action was submitted but an action parameter supplied did not match any of the known parameters.",
155             "The action %1 was submitted with the invalid parameter %2.",
156             "Warning",
157             2,
158             {
159                 "string",
160                 "string",
161             },
162             "Correct the invalid action parameter and resubmit the request if the operation failed.",
163         }},
164     MessageEntry{
165         "ActionParameterValueConflict",
166         {
167             "Indicates that the requested parameter value could not be completed, because of a mismatch with other parameters or properties in the resource.",
168             "The parameter '%1' with the requested value of '%2' does not meet the constraints of the implementation.",
169             "Warning",
170             2,
171             {
172                 "string",
173                 "string",
174             },
175             "No resolution is required.",
176         }},
177     MessageEntry{
178         "ActionParameterValueError",
179         {
180             "Indicates that a parameter was given an invalid value.",
181             "The value for the parameter %1 in the action %2 is invalid.",
182             "Warning",
183             2,
184             {
185                 "string",
186                 "string",
187             },
188             "Correct the value for the parameter in the request body and resubmit the request if the operation failed.",
189         }},
190     MessageEntry{
191         "ActionParameterValueFormatError",
192         {
193             "Indicates that a parameter was given the correct value type but the value of that parameter was not supported.  This includes the value size or length has been exceeded.",
194             "The value '%1' for the parameter %2 in the action %3 is of a different format than the parameter can accept.",
195             "Warning",
196             3,
197             {
198                 "string",
199                 "string",
200                 "string",
201             },
202             "Correct the value for the parameter in the request body and resubmit the request if the operation failed.",
203         }},
204     MessageEntry{
205         "ActionParameterValueNotInList",
206         {
207             "Indicates that a parameter was given the correct value type but the value of that parameter was not supported.  The value is not in an enumeration.",
208             "The value '%1' for the parameter %2 in the action %3 is not in the list of acceptable values.",
209             "Warning",
210             3,
211             {
212                 "string",
213                 "string",
214                 "string",
215             },
216             "Choose a value from the enumeration list that the implementation can support and resubmit the request if the operation failed.",
217         }},
218     MessageEntry{
219         "ActionParameterValueTypeError",
220         {
221             "Indicates that a parameter was given the wrong value type, such as when a number is supplied for a parameter that requires a string.",
222             "The value '%1' for the parameter %2 in the action %3 is of a different type than the parameter can accept.",
223             "Warning",
224             3,
225             {
226                 "string",
227                 "string",
228                 "string",
229             },
230             "Correct the value for the parameter in the request body and resubmit the request if the operation failed.",
231         }},
232     MessageEntry{
233         "ChassisPowerStateOffRequired",
234         {
235             "Indicates that the request requires a specified chassis to be powered off.",
236             "The Chassis with Id '%1' requires to be powered off to perform this request.",
237             "Warning",
238             1,
239             {
240                 "string",
241             },
242             "Power off the specified chassis and resubmit the request.",
243         }},
244     MessageEntry{
245         "ChassisPowerStateOnRequired",
246         {
247             "Indicates that the request requires a specified chassis to be powered on.",
248             "The chassis with Id '%1' requires to be powered on to perform this request.",
249             "Warning",
250             1,
251             {
252                 "string",
253             },
254             "Power on the specified chassis and resubmit the request.",
255         }},
256     MessageEntry{
257         "ConditionInRelatedResource",
258         {
259             "Indicates that one or more fault or error conditions exist in a related resource.",
260             "One or more conditions exist in a related resource.  See the OriginOfCondition property.",
261             "Warning",
262             0,
263             {},
264             "Check the Conditions array in the resource shown in the OriginOfCondition property to determine the conditions that need attention.",
265         }},
266     MessageEntry{
267         "CouldNotEstablishConnection",
268         {
269             "Indicates that the attempt to access the resource, file, or image at the URI was unsuccessful because a session could not be established.",
270             "The service failed to establish a connection with the URI '%1'.",
271             "Critical",
272             1,
273             {
274                 "string",
275             },
276             "Ensure that the URI contains a valid and reachable node name, protocol information and other URI components.",
277         }},
278     MessageEntry{
279         "CreateFailedMissingReqProperties",
280         {
281             "Indicates that a create was attempted on a resource but that properties that are required for the create operation were missing from the request.",
282             "The create operation failed because the required property %1 was missing from the request.",
283             "Critical",
284             1,
285             {
286                 "string",
287             },
288             "Correct the body to include the required property with a valid value and resubmit the request if the operation failed.",
289         }},
290     MessageEntry{
291         "CreateLimitReachedForResource",
292         {
293             "Indicates that no more resources can be created on the resource as it has reached its create limit.",
294             "The create operation failed because the resource has reached the limit of possible resources.",
295             "Critical",
296             0,
297             {},
298             "Either delete resources and resubmit the request if the operation failed or do not resubmit the request.",
299         }},
300     MessageEntry{
301         "Created",
302         {
303             "Indicates that all conditions of a successful create operation have been met.",
304             "The resource has been created successfully.",
305             "OK",
306             0,
307             {},
308             "None.",
309         }},
310     MessageEntry{
311         "EmptyJSON",
312         {
313             "Indicates that the request body contained an empty JSON object when one or more properties are expected in the body.",
314             "The request body submitted contained an empty JSON object and the service is unable to process it.",
315             "Warning",
316             0,
317             {},
318             "Add properties in the JSON object and resubmit the request.",
319         }},
320     MessageEntry{
321         "EventBufferExceeded",
322         {
323             "Indicates undelivered events may have been lost due to a lack of buffer space in the service.",
324             "Undelivered events may have been lost due to exceeding the event buffer.",
325             "Warning",
326             0,
327             {},
328             "None.",
329         }},
330     MessageEntry{
331         "EventSubscriptionLimitExceeded",
332         {
333             "Indicates that a event subscription establishment has been requested but the operation failed due to the number of simultaneous connection exceeding the limit of the implementation.",
334             "The event subscription failed due to the number of simultaneous subscriptions exceeding the limit of the implementation.",
335             "Critical",
336             0,
337             {},
338             "Reduce the number of other subscriptions before trying to establish the event subscription or increase the limit of simultaneous subscriptions, if supported.",
339         }},
340     MessageEntry{
341         "GeneralError",
342         {
343             "Indicates that a general error has occurred.  Use in `@Message.ExtendedInfo` is discouraged.  When used in `@Message.ExtendedInfo`, implementations are expected to include a `Resolution` property with this message and provide a service-defined resolution to indicate how to resolve the error.",
344             "A general error has occurred.  See Resolution for information on how to resolve the error, or @Message.ExtendedInfo if Resolution is not provided.",
345             "Critical",
346             0,
347             {},
348             "None.",
349         }},
350     MessageEntry{
351         "HeaderInvalid",
352         {
353             "Indicates that a request header is invalid.",
354             "Header '%1' is invalid.",
355             "Critical",
356             1,
357             {
358                 "string",
359             },
360             "Resubmit the request with a valid request header.",
361         }},
362     MessageEntry{
363         "HeaderMissing",
364         {
365             "Indicates that a required request header is missing.",
366             "Required header '%1' is missing in the request.",
367             "Critical",
368             1,
369             {
370                 "string",
371             },
372             "Resubmit the request with the required request header.",
373         }},
374     MessageEntry{
375         "InsufficientPrivilege",
376         {
377             "Indicates that the credentials associated with the established session do not have sufficient privileges for the requested operation.",
378             "There are insufficient privileges for the account or credentials associated with the current session to perform the requested operation.",
379             "Critical",
380             0,
381             {},
382             "Either abandon the operation or change the associated access rights and resubmit the request if the operation failed.",
383         }},
384     MessageEntry{
385         "InsufficientStorage",
386         {
387             "Indicates that the operation could not be completed due to a lack of storage or memory avaiable to the service.",
388             "Insufficent storage or memory available to complete the request.",
389             "Critical",
390             0,
391             {},
392             "Increase the free storage space available to the service and resubmit the request.",
393         }},
394     MessageEntry{
395         "InternalError",
396         {
397             "Indicates that the request failed for an unknown internal error but that the service is still operational.",
398             "The request failed due to an internal service error.  The service is still operational.",
399             "Critical",
400             0,
401             {},
402             "Resubmit the request.  If the problem persists, consider resetting the service.",
403         }},
404     MessageEntry{
405         "InvalidIndex",
406         {
407             "The index is not valid.",
408             "The index %1 is not a valid offset into the array.",
409             "Warning",
410             1,
411             {
412                 "number",
413             },
414             "Verify the index value provided is within the bounds of the array.",
415         }},
416     MessageEntry{
417         "InvalidJSON",
418         {
419             "Indicates that the request body contains invalid JSON.",
420             "The request body submitted is invalid JSON starting at line %1 and could not be parsed by the receiving service.",
421             "Critical",
422             1,
423             {
424                 "number",
425             },
426             "Ensure that the request body is valid JSON and resubmit the request.",
427         }},
428     MessageEntry{
429         "InvalidObject",
430         {
431             "Indicates that the object in question is invalid according to the implementation.  Examples include a firmware update malformed URI.",
432             "The object at '%1' is invalid.",
433             "Critical",
434             1,
435             {
436                 "string",
437             },
438             "Either the object is malformed or the URI is not correct.  Correct the condition and resubmit the request if it failed.",
439         }},
440     MessageEntry{
441         "InvalidURI",
442         {
443             "Indicates that the operation encountered a URI that does not correspond to a valid resource.",
444             "The URI %1 was not found.",
445             "Critical",
446             1,
447             {
448                 "string",
449             },
450             "Provide a valid URI and resubmit the request.",
451         }},
452     MessageEntry{
453         "MalformedJSON",
454         {
455             "Indicates that the request body was malformed JSON.",
456             "The request body submitted was malformed JSON and could not be parsed by the receiving service.",
457             "Critical",
458             0,
459             {},
460             "Ensure that the request body is valid JSON and resubmit the request.",
461         }},
462     MessageEntry{
463         "MaximumErrorsExceeded",
464         {
465             "Indicates that sufficient errors have occurred that the reporting service cannot return them all.",
466             "Too many errors have occurred to report them all.",
467             "Critical",
468             0,
469             {},
470             "Resolve other reported errors and retry the current operation.",
471         }},
472     MessageEntry{
473         "MissingOrMalformedPart",
474         {
475             "Indicates that a multipart request is missing a required part or contains malformed parts.",
476             "The multipart request contains malformed parts or is missing required parts.",
477             "Critical",
478             0,
479             {},
480             "Add any missing required parts or correct the malformed parts and resubmit the request.",
481         }},
482     MessageEntry{
483         "NetworkNameResolutionNotConfigured",
484         {
485             "Indicates that network-based name resolution has not been configured on the service.",
486             "Network name resolution has not been configured on this service.",
487             "Warning",
488             0,
489             {},
490             "Configure the network name resolution protocol support on this service, or update any URI values to include an IP address instead of a network name and resubmit the request.",
491         }},
492     MessageEntry{
493         "NetworkNameResolutionNotSupported",
494         {
495             "Indicates the service does not support network-based name resolution.",
496             "Resolution of network-based names is not supported by this service.",
497             "Warning",
498             0,
499             {},
500             "Update any URI values to include an IP address instead of a network name and resubmit the request.",
501         }},
502     MessageEntry{
503         "NoOperation",
504         {
505             "Indicates that the requested operation will not perform any changes on the service.",
506             "The request body submitted contain no data to act upon and no changes to the resource took place.",
507             "Warning",
508             0,
509             {},
510             "Add properties in the JSON object and resubmit the request.",
511         }},
512     MessageEntry{
513         "NoValidSession",
514         {
515             "Indicates that the operation failed because a valid session is required in order to access any resources.",
516             "There is no valid session established with the implementation.",
517             "Critical",
518             0,
519             {},
520             "Establish a session before attempting any operations.",
521         }},
522     MessageEntry{
523         "OperationFailed",
524         {
525             "Indicates that one of the internal operations necessary to complete the request failed.  Examples of this are when an internal service provider is unable to complete the request, such as in aggregation or RDE.",
526             "An error occurred internal to the service as part of the overall request.  Partial results may have been returned.",
527             "Warning",
528             0,
529             {},
530             "Resubmit the request.  If the problem persists, consider resetting the service or provider.",
531         }},
532     MessageEntry{
533         "OperationNotAllowed",
534         {
535             "Indicates that the HTTP method in the request is not allowed on this resource.",
536             "The HTTP method is not allowed on this resource.",
537             "Critical",
538             0,
539             {},
540             "None.",
541         }},
542     MessageEntry{
543         "OperationTimeout",
544         {
545             "Indicates that one of the internal operations necessary to complete the request timed out.  Examples of this are when an internal service provider is unable to complete the request, such as in aggregation or RDE.",
546             "A timeout internal to the service occured as part of the request.  Partial results may have been returned.",
547             "Warning",
548             0,
549             {},
550             "Resubmit the request.  If the problem persists, consider resetting the service or provider.",
551         }},
552     MessageEntry{
553         "PasswordChangeRequired",
554         {
555             "Indicates that the password for the account provided must be changed before accessing the service.  The password can be changed with a PATCH to the `Password` property in the manager account resource instance.  Implementations that provide a default password for an account may require a password change prior to first access to the service.",
556             "The password provided for this account must be changed before access is granted.  PATCH the Password property for this account located at the target URI '%1' to complete this process.",
557             "Critical",
558             1,
559             {
560                 "string",
561             },
562             "Change the password for this account using a PATCH to the Password property at the URI provided.",
563         }},
564     MessageEntry{
565         "PayloadTooLarge",
566         {
567             "Indicates that the supplied payload is too large to be accepted by the service.",
568             "The supplied payload exceeds the maximum size supported by the service.",
569             "Critical",
570             0,
571             {},
572             "Check that the supplied payload is correct and supported by this service.",
573         }},
574     MessageEntry{
575         "PreconditionFailed",
576         {
577             "Indicates that the ETag supplied did not match the current ETag of the resource.",
578             "The ETag supplied did not match the ETag required to change this resource.",
579             "Critical",
580             0,
581             {},
582             "Try the operation again using the appropriate ETag.",
583         }},
584     MessageEntry{
585         "PreconditionRequired",
586         {
587             "Indicates that the request did not provide the required precondition such as an `If-Match` or `If-None-Match` header, or `@odata.etag` annotations.",
588             "A precondition header or annotation is required to change this resource.",
589             "Critical",
590             0,
591             {},
592             "Try the operation again using an If-Match or If-None-Match header and appropriate ETag.",
593         }},
594     MessageEntry{
595         "PropertyDeprecated",
596         {
597             "Indicates the property is deprecated.",
598             "The deprecated property %1 was included in the request body.",
599             "Warning",
600             1,
601             {
602                 "string",
603             },
604             "Refer to the schema guide for more information.",
605         }},
606     MessageEntry{
607         "PropertyDuplicate",
608         {
609             "Indicates that a duplicate property was included in the request body.",
610             "The property %1 was duplicated in the request.",
611             "Warning",
612             1,
613             {
614                 "string",
615             },
616             "Remove the duplicate property from the request body and resubmit the request if the operation failed.",
617         }},
618     MessageEntry{
619         "PropertyMissing",
620         {
621             "Indicates that a required property was not supplied as part of the request.",
622             "The property %1 is a required property and must be included in the request.",
623             "Warning",
624             1,
625             {
626                 "string",
627             },
628             "Ensure that the property is in the request body and has a valid value and resubmit the request if the operation failed.",
629         }},
630     MessageEntry{
631         "PropertyNotUpdated",
632         {
633             "Indicates that a property was not updated due to an internal service error, but the service is still functional.",
634             "The property %1 was not updated due to an internal service error.  The service is still operational.",
635             "Critical",
636             1,
637             {
638                 "string",
639             },
640             "Resubmit the request.  If the problem persists, check for additional messages and consider resetting the service.",
641         }},
642     MessageEntry{
643         "PropertyNotWritable",
644         {
645             "Indicates that a property was given a value in the request body, but the property is a readonly property.",
646             "The property %1 is a read only property and cannot be assigned a value.",
647             "Warning",
648             1,
649             {
650                 "string",
651             },
652             "Remove the property from the request body and resubmit the request if the operation failed.",
653         }},
654     MessageEntry{
655         "PropertyUnknown",
656         {
657             "Indicates that an unknown property was included in the request body.",
658             "The property %1 is not in the list of valid properties for the resource.",
659             "Warning",
660             1,
661             {
662                 "string",
663             },
664             "Remove the unknown property from the request body and resubmit the request if the operation failed.",
665         }},
666     MessageEntry{
667         "PropertyValueConflict",
668         {
669             "Indicates that the requested write of a property value could not be completed, because of a conflict with another property value.",
670             "The property '%1' could not be written because its value would conflict with the value of the '%2' property.",
671             "Warning",
672             2,
673             {
674                 "string",
675                 "string",
676             },
677             "No resolution is required.",
678         }},
679     MessageEntry{
680         "PropertyValueDeprecated",
681         {
682             "Indicates that a property was given a deprecated value.",
683             "The value '%1' for the property %2 is deprecated.",
684             "Warning",
685             2,
686             {
687                 "string",
688                 "string",
689             },
690             "Refer to the schema guide for more information.",
691         }},
692     MessageEntry{
693         "PropertyValueError",
694         {
695             "Indicates that a property was given an invalid value.",
696             "The value provided for the property %1 is not valid.",
697             "Warning",
698             1,
699             {
700                 "string",
701             },
702             "Correct the value for the property in the request body and resubmit the request if the operation failed.",
703         }},
704     MessageEntry{
705         "PropertyValueExternalConflict",
706         {
707             "Indicates that the requested write of a property value could not be completed, due to the current state or configuration of the resource.  This can include configuration conflicts with other resources or parameters that are not exposed by this interface.",
708             "The property '%1' with the requested value of '%2' could not be written because the value is not available due to a configuration conflict.",
709             "Warning",
710             2,
711             {
712                 "string",
713                 "string",
714             },
715             "No resolution is required.",
716         }},
717     MessageEntry{
718         "PropertyValueFormatError",
719         {
720             "Indicates that a property was given the correct value type but the value of that property was not supported.",
721             "The value '%1' for the property %2 is of a different format than the property can accept.",
722             "Warning",
723             2,
724             {
725                 "string",
726                 "string",
727             },
728             "Correct the value for the property in the request body and resubmit the request if the operation failed.",
729         }},
730     MessageEntry{
731         "PropertyValueIncorrect",
732         {
733             "Indicates that the requested write of a property value could not be completed, because of an incorrect value of the property.  Examples include values that do not match a regular expression requirement or passwords that do not match the implementation constraints.",
734             "The property '%1' with the requested value of '%2' could not be written because the value does not meet the constraints of the implementation.",
735             "Warning",
736             2,
737             {
738                 "string",
739                 "string",
740             },
741             "No resolution is required.",
742         }},
743     MessageEntry{
744         "PropertyValueModified",
745         {
746             "Indicates that a property was given the correct value type but the value of that property was modified.  Examples are truncated or rounded values.",
747             "The property %1 was assigned the value '%2' due to modification by the service.",
748             "Warning",
749             2,
750             {
751                 "string",
752                 "string",
753             },
754             "No resolution is required.",
755         }},
756     MessageEntry{
757         "PropertyValueNotInList",
758         {
759             "Indicates that a property was given the correct value type but the value of that property was not supported.  The value is not in an enumeration.",
760             "The value '%1' for the property %2 is not in the list of acceptable values.",
761             "Warning",
762             2,
763             {
764                 "string",
765                 "string",
766             },
767             "Choose a value from the enumeration list that the implementation can support and resubmit the request if the operation failed.",
768         }},
769     MessageEntry{
770         "PropertyValueOutOfRange",
771         {
772             "Indicates that a property was given the correct value type but the value of that property is outside the supported range.",
773             "The value '%1' for the property %2 is not in the supported range of acceptable values.",
774             "Warning",
775             2,
776             {
777                 "string",
778                 "string",
779             },
780             "Correct the value for the property in the request body and resubmit the request if the operation failed.",
781         }},
782     MessageEntry{
783         "PropertyValueResourceConflict",
784         {
785             "Indicates that the requested write of a property value could not be completed, due to the current state or configuration of another resource.",
786             "The property '%1' with the requested value of '%2' could not be written because the value conflicts with the state or configuration of the resource at '%3'.",
787             "Warning",
788             3,
789             {
790                 "string",
791                 "string",
792                 "string",
793             },
794             "No resolution is required.",
795         }},
796     MessageEntry{
797         "PropertyValueTypeError",
798         {
799             "Indicates that a property was given the wrong value type, such as when a number is supplied for a property that requires a string.",
800             "The value '%1' for the property %2 is of a different type than the property can accept.",
801             "Warning",
802             2,
803             {
804                 "string",
805                 "string",
806             },
807             "Correct the value for the property in the request body and resubmit the request if the operation failed.",
808         }},
809     MessageEntry{
810         "QueryCombinationInvalid",
811         {
812             "Indicates the request contains multiple query parameters, and that two or more of them cannot be used together.",
813             "Two or more query parameters in the request cannot be used together.",
814             "Warning",
815             0,
816             {},
817             "Remove one or more of the query parameters and resubmit the request if the operation failed.",
818         }},
819     MessageEntry{
820         "QueryNotSupported",
821         {
822             "Indicates that query is not supported on the implementation.",
823             "Querying is not supported by the implementation.",
824             "Warning",
825             0,
826             {},
827             "Remove the query parameters and resubmit the request if the operation failed.",
828         }},
829     MessageEntry{
830         "QueryNotSupportedOnOperation",
831         {
832             "Indicates that query is not supported with the given operation, such as when the `$expand` query is attempted with a PATCH operation.",
833             "Querying is not supported with the requested operation.",
834             "Warning",
835             0,
836             {},
837             "Remove the query parameters and resubmit the request if the operation failed.",
838         }},
839     MessageEntry{
840         "QueryNotSupportedOnResource",
841         {
842             "Indicates that query is not supported on the given resource, such as when the `$skip` query is attempted on a resource that is not a collection.",
843             "Querying is not supported on the requested resource.",
844             "Warning",
845             0,
846             {},
847             "Remove the query parameters and resubmit the request if the operation failed.",
848         }},
849     MessageEntry{
850         "QueryParameterOutOfRange",
851         {
852             "Indicates that a query parameter was provided that is out of range for the given resource.  This can happen with values that are too low or beyond that possible for the supplied resource, such as when a page is requested that is beyond the last page.",
853             "The value '%1' for the query parameter %2 is out of range %3.",
854             "Warning",
855             3,
856             {
857                 "string",
858                 "string",
859                 "string",
860             },
861             "Reduce the value for the query parameter to a value that is within range, such as a start or count value that is within bounds of the number of resources in a collection or a page that is within the range of valid pages.",
862         }},
863     MessageEntry{
864         "QueryParameterValueError",
865         {
866             "Indicates that a query parameter was given an invalid value.",
867             "The value for the parameter %1 is invalid.",
868             "Warning",
869             1,
870             {
871                 "string",
872             },
873             "Correct the value for the query parameter in the request and resubmit the request if the operation failed.",
874         }},
875     MessageEntry{
876         "QueryParameterValueFormatError",
877         {
878             "Indicates that a query parameter was given the correct value type but the value of that parameter was not supported.  This includes the value size or length has been exceeded.",
879             "The value '%1' for the parameter %2 is of a different format than the parameter can accept.",
880             "Warning",
881             2,
882             {
883                 "string",
884                 "string",
885             },
886             "Correct the value for the query parameter in the request and resubmit the request if the operation failed.",
887         }},
888     MessageEntry{
889         "QueryParameterValueTypeError",
890         {
891             "Indicates that a query parameter was given the wrong value type, such as when a number is supplied for a query parameter that requires a string.",
892             "The value '%1' for the query parameter %2 is of a different type than the parameter can accept.",
893             "Warning",
894             2,
895             {
896                 "string",
897                 "string",
898             },
899             "Correct the value for the query parameter in the request and resubmit the request if the operation failed.",
900         }},
901     MessageEntry{
902         "ResetRecommended",
903         {
904             "Indicates that a component reset is recommended for error recovery while unaffected applications can continue running without any effects on accuracy and performance.",
905             "In order to recover from errors, a component reset is recommended with the Reset action URI '%1' and ResetType '%2'.",
906             "Warning",
907             2,
908             {
909                 "string",
910                 "string",
911             },
912             "Perform the recommended reset action on the specified component.",
913         }},
914     MessageEntry{
915         "ResetRequired",
916         {
917             "Indicates that a component reset is required for changes, error recovery, or operations to complete.",
918             "In order to apply changes, recover from errors, or complete the operation, a component reset is required with the Reset action URI '%1' and ResetType '%2'.",
919             "Warning",
920             2,
921             {
922                 "string",
923                 "string",
924             },
925             "Perform the required reset action on the specified component.",
926         }},
927     MessageEntry{
928         "ResourceAlreadyExists",
929         {
930             "Indicates that a resource change or creation was attempted but that the operation cannot proceed because the resource already exists.",
931             "The requested resource of type %1 with the property %2 with the value '%3' already exists.",
932             "Critical",
933             3,
934             {
935                 "string",
936                 "string",
937                 "string",
938             },
939             "Do not repeat the create operation as the resource has already been created.",
940         }},
941     MessageEntry{
942         "ResourceAtUriInUnknownFormat",
943         {
944             "Indicates that the URI was valid but the resource or image at that URI was in a format not supported by the service.",
945             "The resource at '%1' is in a format not recognized by the service.",
946             "Critical",
947             1,
948             {
949                 "string",
950             },
951             "Place an image or resource or file that is recognized by the service at the URI.",
952         }},
953     MessageEntry{
954         "ResourceAtUriUnauthorized",
955         {
956             "Indicates that the attempt to access the resource, file, or image at the URI was unauthorized.",
957             "While accessing the resource at '%1', the service received an authorization error '%2'.",
958             "Critical",
959             2,
960             {
961                 "string",
962                 "string",
963             },
964             "Ensure that the appropriate access is provided for the service in order for it to access the URI.",
965         }},
966     MessageEntry{
967         "ResourceCannotBeDeleted",
968         {
969             "Indicates that a delete operation was attempted on a resource that cannot be deleted.",
970             "The delete request failed because the resource requested cannot be deleted.",
971             "Critical",
972             0,
973             {},
974             "Do not attempt to delete a non-deletable resource.",
975         }},
976     MessageEntry{
977         "ResourceCreationConflict",
978         {
979             "Indicates that the requested resource creation could not be completed because the service has a resource that conflicts with the request.",
980             "The resource could not be created.  The service has a resource at URI '%1' that conflicts with the creation request.",
981             "Warning",
982             1,
983             {
984                 "string",
985             },
986             "No resolution is required.",
987         }},
988     MessageEntry{
989         "ResourceDeprecated",
990         {
991             "Indicates the resource is deprecated.",
992             "The operation was performed on a deprecated resource '%1'.",
993             "Warning",
994             1,
995             {
996                 "string",
997             },
998             "Refer to the schema guide for more information.",
999         }},
1000     MessageEntry{
1001         "ResourceExhaustion",
1002         {
1003             "Indicates that a resource could not satisfy the request due to some unavailability of resources.  An example is that available capacity has been allocated.",
1004             "The resource '%1' was unable to satisfy the request due to unavailability of resources.",
1005             "Critical",
1006             1,
1007             {
1008                 "string",
1009             },
1010             "Ensure that the resources are available and resubmit the request.",
1011         }},
1012     MessageEntry{
1013         "ResourceInStandby",
1014         {
1015             "Indicates that the request could not be performed because the resource is in standby.",
1016             "The request could not be performed because the resource is in standby.",
1017             "Critical",
1018             0,
1019             {},
1020             "Ensure that the resource is in the correct power state and resubmit the request.",
1021         }},
1022     MessageEntry{
1023         "ResourceInUse",
1024         {
1025             "Indicates that a change was requested to a resource but the change was rejected due to the resource being in use or transition.",
1026             "The change to the requested resource failed because the resource is in use or in transition.",
1027             "Warning",
1028             0,
1029             {},
1030             "Remove the condition and resubmit the request if the operation failed.",
1031         }},
1032     MessageEntry{
1033         "ResourceMissingAtURI",
1034         {
1035             "Indicates that the operation expected an image or other resource at the provided URI but none was found.  Examples of this are in requests that require URIs like firmware update.",
1036             "The resource at the URI '%1' was not found.",
1037             "Critical",
1038             1,
1039             {
1040                 "string",
1041             },
1042             "Place a valid resource at the URI or correct the URI and resubmit the request.",
1043         }},
1044     MessageEntry{
1045         "ResourceNotFound",
1046         {
1047             "Indicates that the operation expected a resource identifier that corresponds to an existing resource but one was not found.",
1048             "The requested resource of type %1 named '%2' was not found.",
1049             "Critical",
1050             2,
1051             {
1052                 "string",
1053                 "string",
1054             },
1055             "Provide a valid resource identifier and resubmit the request.",
1056         }},
1057     MessageEntry{
1058         "ResourceTypeIncompatible",
1059         {
1060             "Indicates that the resource type of the operation does not match that for the operation destination.  Examples of when this can happen include during a POST to a resource collection using the wrong resource type, an update where the `@odata.type` properties do not match, or on a major version incompatibility.",
1061             "The @odata.type of the request body %1 is incompatible with the @odata.type of the resource, which is %2.",
1062             "Critical",
1063             2,
1064             {
1065                 "string",
1066                 "string",
1067             },
1068             "Resubmit the request with a payload compatible with the resource's schema.",
1069         }},
1070     MessageEntry{
1071         "RestrictedPrivilege",
1072         {
1073             "Indicates that the operation was not successful because a privilege is restricted.",
1074             "The operation was not successful because the privilege '%1' is restricted.",
1075             "Warning",
1076             1,
1077             {
1078                 "string",
1079             },
1080             "Remove restricted privileges from the request body and resubmit the request.",
1081         }},
1082     MessageEntry{
1083         "RestrictedRole",
1084         {
1085             "Indicates that the operation was not successful because the role is restricted.",
1086             "The operation was not successful because the role '%1' is restricted.",
1087             "Warning",
1088             1,
1089             {
1090                 "string",
1091             },
1092             "No resolution is required.  For standard roles, consider using the role specified in the AlternateRoleId property in the Role resource.",
1093         }},
1094     MessageEntry{
1095         "ServiceDisabled",
1096         {
1097             "Indicates that the operation failed because the service, such as the account service, is disabled and cannot accept requests.",
1098             "The operation failed because the service at %1 is disabled and cannot accept requests.",
1099             "Warning",
1100             1,
1101             {
1102                 "string",
1103             },
1104             "Enable the service and resubmit the request if the operation failed.",
1105         }},
1106     MessageEntry{
1107         "ServiceInUnknownState",
1108         {
1109             "Indicates that the operation failed because the service is in an unknown state and cannot accept additional requests.",
1110             "The operation failed because the service is in an unknown state and can no longer take incoming requests.",
1111             "Critical",
1112             0,
1113             {},
1114             "Restart the service and resubmit the request if the operation failed.",
1115         }},
1116     MessageEntry{
1117         "ServiceShuttingDown",
1118         {
1119             "Indicates that the operation failed as the service is shutting down, such as when the service reboots.",
1120             "The operation failed because the service is shutting down and can no longer take incoming requests.",
1121             "Critical",
1122             0,
1123             {},
1124             "When the service becomes available, resubmit the request if the operation failed.",
1125         }},
1126     MessageEntry{
1127         "ServiceTemporarilyUnavailable",
1128         {
1129             "Indicates the service is temporarily unavailable.",
1130             "The service is temporarily unavailable.  Retry in %1 seconds.",
1131             "Critical",
1132             1,
1133             {
1134                 "string",
1135             },
1136             "Wait for the indicated retry duration and retry the operation.",
1137         }},
1138     MessageEntry{
1139         "SessionLimitExceeded",
1140         {
1141             "Indicates that a session establishment has been requested but the operation failed due to the number of simultaneous sessions exceeding the limit of the implementation.",
1142             "The session establishment failed due to the number of simultaneous sessions exceeding the limit of the implementation.",
1143             "Critical",
1144             0,
1145             {},
1146             "Reduce the number of other sessions before trying to establish the session or increase the limit of simultaneous sessions, if supported.",
1147         }},
1148     MessageEntry{
1149         "SessionTerminated",
1150         {
1151             "Indicates that the DELETE operation on the session resource resulted in the successful termination of the session.",
1152             "The session was successfully terminated.",
1153             "OK",
1154             0,
1155             {},
1156             "No resolution is required.",
1157         }},
1158     MessageEntry{
1159         "SourceDoesNotSupportProtocol",
1160         {
1161             "Indicates that while attempting to access, connect to or transfer a resource, file, or image from another location that the other end of the connection did not support the protocol.",
1162             "The other end of the connection at '%1' does not support the specified protocol %2.",
1163             "Critical",
1164             2,
1165             {
1166                 "string",
1167                 "string",
1168             },
1169             "Change protocols or URIs.",
1170         }},
1171     MessageEntry{
1172         "StrictAccountTypes",
1173         {
1174             "Indicates the request failed because a set of `AccountTypes` or `OEMAccountTypes` was not accepted while `StrictAccountTypes` is set to `true`.",
1175             "The request was not possible to fulfill with the account types included in property '%1' and property StrictAccountTypes set to true.",
1176             "Warning",
1177             1,
1178             {
1179                 "string",
1180             },
1181             "Resubmit the request either with an acceptable set of AccountTypes and OEMAccountTypes or with StrictAccountTypes set to false.",
1182         }},
1183     MessageEntry{
1184         "StringValueTooLong",
1185         {
1186             "Indicates that a string value passed to the given resource exceeded its length limit.  An example is when a shorter limit is imposed by an implementation than that allowed by the specification.",
1187             "The string '%1' exceeds the length limit %2.",
1188             "Warning",
1189             2,
1190             {
1191                 "string",
1192                 "number",
1193             },
1194             "Resubmit the request with an appropriate string length.",
1195         }},
1196     MessageEntry{
1197         "SubscriptionTerminated",
1198         {
1199             "An event subscription has been terminated by the service.  No further events will be delivered.",
1200             "The event subscription has been terminated.",
1201             "OK",
1202             0,
1203             {},
1204             "No resolution is required.",
1205         }},
1206     MessageEntry{
1207         "Success",
1208         {
1209             "Indicates that all conditions of a successful operation have been met.",
1210             "The request completed successfully.",
1211             "OK",
1212             0,
1213             {},
1214             "None",
1215         }},
1216     MessageEntry{
1217         "UndeterminedFault",
1218         {
1219             "Indicates that a fault or error condition exists but the source of the fault cannot be determined or is unknown to the service.",
1220             "A undetermined fault condition has been reported by '%1'.",
1221             "Critical",
1222             1,
1223             {
1224                 "string",
1225             },
1226             "None.",
1227         }},
1228     MessageEntry{
1229         "UnrecognizedRequestBody",
1230         {
1231             "Indicates that the service encountered an unrecognizable request body that could not even be interpreted as malformed JSON.",
1232             "The service detected a malformed request body that it was unable to interpret.",
1233             "Warning",
1234             0,
1235             {},
1236             "Correct the request body and resubmit the request if it failed.",
1237         }},
1238 
1239 };
1240 
1241 enum class Index
1242 {
1243     accessDenied = 0,
1244     accountForSessionNoLongerExists = 1,
1245     accountModified = 2,
1246     accountNotModified = 3,
1247     accountRemoved = 4,
1248     actionDeprecated = 5,
1249     actionNotSupported = 6,
1250     actionParameterDuplicate = 7,
1251     actionParameterMissing = 8,
1252     actionParameterNotSupported = 9,
1253     actionParameterUnknown = 10,
1254     actionParameterValueConflict = 11,
1255     actionParameterValueError = 12,
1256     actionParameterValueFormatError = 13,
1257     actionParameterValueNotInList = 14,
1258     actionParameterValueTypeError = 15,
1259     chassisPowerStateOffRequired = 16,
1260     chassisPowerStateOnRequired = 17,
1261     conditionInRelatedResource = 18,
1262     couldNotEstablishConnection = 19,
1263     createFailedMissingReqProperties = 20,
1264     createLimitReachedForResource = 21,
1265     created = 22,
1266     emptyJSON = 23,
1267     eventBufferExceeded = 24,
1268     eventSubscriptionLimitExceeded = 25,
1269     generalError = 26,
1270     headerInvalid = 27,
1271     headerMissing = 28,
1272     insufficientPrivilege = 29,
1273     insufficientStorage = 30,
1274     internalError = 31,
1275     invalidIndex = 32,
1276     invalidJSON = 33,
1277     invalidObject = 34,
1278     invalidURI = 35,
1279     malformedJSON = 36,
1280     maximumErrorsExceeded = 37,
1281     missingOrMalformedPart = 38,
1282     networkNameResolutionNotConfigured = 39,
1283     networkNameResolutionNotSupported = 40,
1284     noOperation = 41,
1285     noValidSession = 42,
1286     operationFailed = 43,
1287     operationNotAllowed = 44,
1288     operationTimeout = 45,
1289     passwordChangeRequired = 46,
1290     payloadTooLarge = 47,
1291     preconditionFailed = 48,
1292     preconditionRequired = 49,
1293     propertyDeprecated = 50,
1294     propertyDuplicate = 51,
1295     propertyMissing = 52,
1296     propertyNotUpdated = 53,
1297     propertyNotWritable = 54,
1298     propertyUnknown = 55,
1299     propertyValueConflict = 56,
1300     propertyValueDeprecated = 57,
1301     propertyValueError = 58,
1302     propertyValueExternalConflict = 59,
1303     propertyValueFormatError = 60,
1304     propertyValueIncorrect = 61,
1305     propertyValueModified = 62,
1306     propertyValueNotInList = 63,
1307     propertyValueOutOfRange = 64,
1308     propertyValueResourceConflict = 65,
1309     propertyValueTypeError = 66,
1310     queryCombinationInvalid = 67,
1311     queryNotSupported = 68,
1312     queryNotSupportedOnOperation = 69,
1313     queryNotSupportedOnResource = 70,
1314     queryParameterOutOfRange = 71,
1315     queryParameterValueError = 72,
1316     queryParameterValueFormatError = 73,
1317     queryParameterValueTypeError = 74,
1318     resetRecommended = 75,
1319     resetRequired = 76,
1320     resourceAlreadyExists = 77,
1321     resourceAtUriInUnknownFormat = 78,
1322     resourceAtUriUnauthorized = 79,
1323     resourceCannotBeDeleted = 80,
1324     resourceCreationConflict = 81,
1325     resourceDeprecated = 82,
1326     resourceExhaustion = 83,
1327     resourceInStandby = 84,
1328     resourceInUse = 85,
1329     resourceMissingAtURI = 86,
1330     resourceNotFound = 87,
1331     resourceTypeIncompatible = 88,
1332     restrictedPrivilege = 89,
1333     restrictedRole = 90,
1334     serviceDisabled = 91,
1335     serviceInUnknownState = 92,
1336     serviceShuttingDown = 93,
1337     serviceTemporarilyUnavailable = 94,
1338     sessionLimitExceeded = 95,
1339     sessionTerminated = 96,
1340     sourceDoesNotSupportProtocol = 97,
1341     strictAccountTypes = 98,
1342     stringValueTooLong = 99,
1343     subscriptionTerminated = 100,
1344     success = 101,
1345     undeterminedFault = 102,
1346     unrecognizedRequestBody = 103,
1347 };
1348 } // namespace redfish::registries::base
1349