Request Id¶
The request id is a identifier that flows with a request, or multiple requests. It is used to track and monitor user activity and can be used to identify specific requests in the repository, API calls and audit trails.
The request id is a string. It can be used on multiple requests and does not need to be unique. It can be controlled by the caller of our APIs by passing it in the request body. If not supplied, a new request id is generated by Egeria for each API call to the view server.
Whichever method is used to create the request id, it is returned in all responses. For example, this is the result of a successful create request. The GUID of the new element is returned as well as the request id.
{
"class": "GUIDResponse",
"requestId": "a1e88cab-f32d-426f-bc59-bd982a0437ba",
"relatedHTTPCode": 200,
"guid": "9f871549-1b82-45da-a146-319dd8164943"
}
{
"class": "OpenMetadataRootElementsResponse",
"requestId": "ff16ba9e-ee83-45ad-b12a-65051dc69eb7",
"relatedHTTPCode": 404,
"exceptionClassName": "org.odpi.openmetadata.frameworks.openmetadata.ffdc.InvalidParameterException",
"exceptionSubclassName": "org.odpi.openmetadata.frameworks.openmetadata.ffdc.InvalidParameterException",
"actionDescription": "findGovernanceDefinitions",
"exceptionErrorMessage": "OMAG-MULTI-TENANT-404-001 The OMAG Server view-server is not available to service a request from user garygeeke",
"exceptionErrorMessageId": "OMAG-MULTI-TENANT-404-001",
"exceptionErrorMessageParameters": [
"view-server",
"garygeeke"
],
"exceptionSystemAction": "The system cannot process the request because the server is not running on the called platform.",
"exceptionUserAction": "Verify that the correct server is being called on the correct platform and that this server is running. Retry the request when the server is available.",
"exceptionProperties": {
"serverName": "view-server",
"parameterName": "serverName"
}
}
{
"guid": "1acce304-45d7-456e-a1fb-485d52c9f22d",
"timeStamp": 1772024171309,
"originatorProperties": {
"organizationName": "null",
"serverType": "Engine Host Server",
"serverName": "qs-engine-host"
},
"originatorComponent": {
"componentId": 194,
"componentDevelopmentStatus": "STABLE",
"componentName": "Engine Host Services",
"componentDescription": "Host one or more engine services that are actively managing governance of open metadata and the digital landscape.",
"componentWikiURL": "https://egeria-project.org/services/engine-host-services/"
},
"actionDescription": "userMonitoring",
"threadId": 36,
"threadName": "https-jsse-nio-9443-exec-3",
"requestId": "fa106f19-5997-46d6-a3cf-ec0ce312af7b",
"severityCode": 15,
"severity": "Activity",
"messageId": "METADATA-OBSERVABILITY-0010",
"messageText": "User omagspcatnpa issued REST API call to operation getGovernanceEngineSummaries of service Engine Host Services on server qs-engine-host",
"messageParameters": [
"omagspcatnpa",
"getGovernanceEngineSummaries",
"Engine Host Services",
"qs-engine-host"
],
"systemAction": "This message is used to capture user activity.",
"userAction": "No action is required, but this message can be used to capture user activity information."
}
This means, if an exception occurs, it is possible to correlate the failure with other diagnostics in the audit log.
Request ids are also stored in the header of elements in the open metadata repositories. Below is the JSON for an element returned on a request. The request id is found in the element header under 'versions' and it is called 'lastRequestId'. It describes the active request id when this element was last updated.
{
"elementHeader": {
"class": "ElementHeader",
"headerVersion": 0,
"status": "ACTIVE",
"type": {
"typeId": "646727c7-9ad4-46fa-b660-265489ad96c6",
"typeName": "NoteLog",
"superTypeNames": [
"Referenceable",
"OpenMetadataRoot"
],
"typeVersion": 1,
"typeDescription": "An ordered list of related notes.",
"typeCategory": "ENTITY_DEF"
},
"origin": {
"sourceServer": "qs-metadata-store",
"originCategory": "LOCAL_COHORT",
"homeMetadataCollectionId": "9905c3cb-94c5-4494-9229-0d6f69c0b842",
"homeMetadataCollectionName": "qs-metadata-store"
},
"versions": {
"createdBy": "peterprofile",
"createTime": "2026-03-01T16:47:31.290+00:00",
"version": 1,
"lastRequestId": "b905da3f-9562-443a-88c4-4a9d3104ce4e"
},
"guid": "1ac574e2-f8f6-410b-9060-58713e950a66",
"anchor": {
"class": "ElementClassification",
"headerVersion": 0,
"status": "ACTIVE",
"type": {
"typeId": "aa44f302-2e43-4669-a1e7-edaae414fc6e",
"typeName": "Anchors",
"typeVersion": 1,
"typeDescription": "Identifies the anchor entity for an element that is part of a large composite object such as an asset.",
"typeCategory": "CLASSIFICATION_DEF"
},
"origin": {
"sourceServer": "qs-metadata-store",
"originCategory": "LOCAL_COHORT",
"homeMetadataCollectionId": "9905c3cb-94c5-4494-9229-0d6f69c0b842",
"homeMetadataCollectionName": "qs-metadata-store"
},
"versions": {
"createdBy": "peterprofile",
"createTime": "2026-03-01T16:47:31.235+00:00",
"version": 1,
"lastRequestId": "b905da3f-9562-443a-88c4-4a9d3104ce4e"
},
"classificationOrigin": "ASSIGNED",
"classificationName": "Anchors",
"classificationProperties": {
"class": "AnchorsProperties",
"typeName": "Anchors",
"extendedProperties": {},
"anchorGUID": "2af4303f-cc9f-4179-b213-b835e745607a",
"anchorTypeName": "Person",
"anchorDomainName": "Actor"
}
},
"zoneMembership": {
"class": "ElementClassification",
"headerVersion": 0,
"status": "ACTIVE",
"type": {
"typeId": "52993f4b-d853-47ae-a2e6-f22b96863533",
"typeName": "ZoneMembership",
"typeVersion": 1,
"typeDescription": "Defines the element's membership of the governance zones.",
"typeCategory": "CLASSIFICATION_DEF"
},
"origin": {
"sourceServer": "qs-metadata-store",
"originCategory": "LOCAL_COHORT",
"homeMetadataCollectionId": "9905c3cb-94c5-4494-9229-0d6f69c0b842",
"homeMetadataCollectionName": "qs-metadata-store"
},
"versions": {
"createdBy": "peterprofile",
"createTime": "2026-03-01T16:47:31.235+00:00",
"version": 1,
"lastRequestId": "b905da3f-9562-443a-88c4-4a9d3104ce4e"
},
"classificationOrigin": "ASSIGNED",
"classificationName": "ZoneMembership",
"classificationProperties": {
"class": "ZoneMembershipProperties",
"typeName": "ZoneMembership",
"extendedProperties": {},
"zoneMembership": [
"peterprofile"
]
}
}
},
"properties": {
"class": "NoteLogProperties",
"typeName": "NoteLog",
"extendedProperties": {},
"qualifiedName": "NoteLog::2af4303f-cc9f-4179-b213-b835e745607a::MyJournal"
}
}
In this example, there is one entity with two attached classifications and they all have a last request id of 'b905da3f-9562-443a-88c4-4a9d3104ce4e'. Since they are also at version 1, then they were probably all created as part of the same request.