diff --git a/redfish-core/include/registries/base_message_registry.hpp b/redfish-core/include/registries/base_message_registry.hpp
index 9508221..cfba904 100644
--- a/redfish-core/include/registries/base_message_registry.hpp
+++ b/redfish-core/include/registries/base_message_registry.hpp
@@ -1191,4 +1191,101 @@
                 "Correct the request body and resubmit the request if it failed.",
             }},
 };
-} // namespace redfish::message_registries::base
+
+enum class Index
+{
+    accessDenied = 0,
+    accountForSessionNoLongerExists = 1,
+    accountModified = 2,
+    accountNotModified = 3,
+    accountRemoved = 4,
+    actionDeprecated = 5,
+    actionNotSupported = 6,
+    actionParameterDuplicate = 7,
+    actionParameterMissing = 8,
+    actionParameterNotSupported = 9,
+    actionParameterUnknown = 10,
+    actionParameterValueError = 11,
+    actionParameterValueFormatError = 12,
+    actionParameterValueNotInList = 13,
+    actionParameterValueTypeError = 14,
+    chassisPowerStateOffRequired = 15,
+    chassisPowerStateOnRequired = 16,
+    conditionInRelatedResource = 17,
+    couldNotEstablishConnection = 18,
+    createFailedMissingReqProperties = 19,
+    createLimitReachedForResource = 20,
+    created = 21,
+    emptyJSON = 22,
+    eventSubscriptionLimitExceeded = 23,
+    generalError = 24,
+    insufficientPrivilege = 25,
+    internalError = 26,
+    invalidIndex = 27,
+    invalidJSON = 28,
+    invalidObject = 29,
+    invalidURI = 30,
+    malformedJSON = 31,
+    maximumErrorsExceeded = 32,
+    networkNameResolutionNotConfigured = 33,
+    networkNameResolutionNotSupported = 34,
+    noOperation = 35,
+    noValidSession = 36,
+    operationFailed = 37,
+    operationTimeout = 38,
+    passwordChangeRequired = 39,
+    preconditionFailed = 40,
+    preconditionRequired = 41,
+    propertyDeprecated = 42,
+    propertyDuplicate = 43,
+    propertyMissing = 44,
+    propertyNotWritable = 45,
+    propertyUnknown = 46,
+    propertyValueConflict = 47,
+    propertyValueDeprecated = 48,
+    propertyValueError = 49,
+    propertyValueExternalConflict = 50,
+    propertyValueFormatError = 51,
+    propertyValueIncorrect = 52,
+    propertyValueModified = 53,
+    propertyValueNotInList = 54,
+    propertyValueResourceConflict = 55,
+    propertyValueTypeError = 56,
+    queryCombinationInvalid = 57,
+    queryNotSupported = 58,
+    queryNotSupportedOnOperation = 59,
+    queryNotSupportedOnResource = 60,
+    queryParameterOutOfRange = 61,
+    queryParameterValueError = 62,
+    queryParameterValueFormatError = 63,
+    queryParameterValueTypeError = 64,
+    resetRequired = 65,
+    resourceAlreadyExists = 66,
+    resourceAtUriInUnknownFormat = 67,
+    resourceAtUriUnauthorized = 68,
+    resourceCannotBeDeleted = 69,
+    resourceCreationConflict = 70,
+    resourceDeprecated = 71,
+    resourceExhaustion = 72,
+    resourceInStandby = 73,
+    resourceInUse = 74,
+    resourceMissingAtURI = 75,
+    resourceNotFound = 76,
+    resourceTypeIncompatible = 77,
+    restrictedPrivilege = 78,
+    restrictedRole = 79,
+    serviceDisabled = 80,
+    serviceInUnknownState = 81,
+    serviceShuttingDown = 82,
+    serviceTemporarilyUnavailable = 83,
+    sessionLimitExceeded = 84,
+    sessionTerminated = 85,
+    sourceDoesNotSupportProtocol = 86,
+    strictAccountTypes = 87,
+    stringValueTooLong = 88,
+    subscriptionTerminated = 89,
+    success = 90,
+    undeterminedFault = 91,
+    unrecognizedRequestBody = 92,
+};
+} // namespace redfish::message_registries::base
\ No newline at end of file
diff --git a/redfish-core/include/registries/resource_event_message_registry.hpp b/redfish-core/include/registries/resource_event_message_registry.hpp
index eab44ab..e02aece 100644
--- a/redfish-core/include/registries/resource_event_message_registry.hpp
+++ b/redfish-core/include/registries/resource_event_message_registry.hpp
@@ -272,4 +272,27 @@
             "None.",
         }},
 };
-} // namespace redfish::message_registries::resource_event
+
+enum class Index
+{
+    licenseAdded = 0,
+    licenseChanged = 1,
+    licenseExpired = 2,
+    resourceChanged = 3,
+    resourceCreated = 4,
+    resourceErrorThresholdCleared = 5,
+    resourceErrorThresholdExceeded = 6,
+    resourceErrorsCorrected = 7,
+    resourceErrorsDetected = 8,
+    resourceRemoved = 9,
+    resourceSelfTestCompleted = 10,
+    resourceSelfTestFailed = 11,
+    resourceStatusChangedCritical = 12,
+    resourceStatusChangedOK = 13,
+    resourceStatusChangedWarning = 14,
+    resourceVersionIncompatible = 15,
+    resourceWarningThresholdCleared = 16,
+    resourceWarningThresholdExceeded = 17,
+    uRIForResourceChanged = 18,
+};
+} // namespace redfish::message_registries::resource_event
\ No newline at end of file
diff --git a/redfish-core/include/registries/task_event_message_registry.hpp b/redfish-core/include/registries/task_event_message_registry.hpp
index 6c83dc1..421bc35 100644
--- a/redfish-core/include/registries/task_event_message_registry.hpp
+++ b/redfish-core/include/registries/task_event_message_registry.hpp
@@ -135,4 +135,17 @@
                      "None.",
                  }},
 };
-} // namespace redfish::message_registries::task_event
+
+enum class Index
+{
+    taskAborted = 0,
+    taskCancelled = 1,
+    taskCompletedOK = 2,
+    taskCompletedWarning = 3,
+    taskPaused = 4,
+    taskProgressChanged = 5,
+    taskRemoved = 6,
+    taskResumed = 7,
+    taskStarted = 8,
+};
+} // namespace redfish::message_registries::task_event
\ No newline at end of file
diff --git a/scripts/parse_registries.py b/scripts/parse_registries.py
index d64e540..8334eae 100755
--- a/scripts/parse_registries.py
+++ b/scripts/parse_registries.py
@@ -91,7 +91,9 @@
         registry.write(
             "constexpr std::array<MessageEntry, {}> registry = {{".format(
                 len(json_dict["Messages"])))
-        for messageId, message in sorted(json_dict["Messages"].items()):
+
+        messages_sorted = sorted(json_dict["Messages"].items())
+        for messageId, message in messages_sorted:
             registry.write("MessageEntry{")
             registry.write("\"{}\",".format(messageId))
             registry.write("{")
@@ -108,7 +110,17 @@
             registry.write("},")
             registry.write("\"{}\",".format(message["Resolution"]))
             registry.write("}},")
-        registry.write("};}\n")
+
+        registry.write("\n};")
+
+        registry.write("\n\nenum class Index {\n")
+        for index, (messageId, message) in enumerate(messages_sorted):
+            messageId = messageId[0].lower() + messageId[1:]
+            registry.write(
+                "{} = {},\n".format(messageId, index))
+        registry.write("};")
+        registry.write("}")
+
     clang_format(file)
 
 
