OPC quality status codes
Bad | 0x80000000 | The value is bad but the reason is unknown. |
Bad_AggregateConfigurationRejected | 0x80DA0000 | The aggregate configuration is not valid for the specified node. |
Bad_AggregateInvalidInputs | 0x80D60000 | The aggregate value could not be derived due to invalid input data. |
Bad_AggregateListMismatch | 0x80D40000 | The requested number of Aggregates does not match the requested number of node IDs. |
Bad_AggregateNotSupported | 0x80D50000 | The requested Aggregate is not support by the server. |
Bad_ApplicationSignatureInvalid | 0x80580000 | The signature generated with the client certificate is missing or invalid. |
Bad_ArgumentsMissing | 0x80760000 | The client did not specify all of the input arguments for the method. |
Bad_AttributeIdInvalid | 0x80350000 | The attribute is not supported for the specified node. |
Bad_BoundNotFound | 0x80D70000 | No data found to provide upper or lower bound value. |
Bad_BoundNotSupported | 0x80D80000 | The server cannot retrieve a bound for the variable. |
Bad_BrowseDirectionInvalid | 0x804D0000 | The browse direction is not valid. |
Bad_BrowseNameDuplicated | 0x80610000 | The browse name is not unique among nodes that share the same relationship with the parent. |
Bad_BrowseNameInvalid | 0x80600000 | The browse name is invalid. |
Bad_CertificateHostNameInvalid | 0x80160000 | The HostName used to connect to a serverdoes not match a HostName in the certificate. |
Bad_CertificateInvalid | 0x80120000 | The certificate provided as a parameter is not valid. |
Bad_CertificateIssuerRevocationUnknown | 0x801C0000 | It was not possible to determine if the Issuer certificate has been revoked. |
Bad_CertificateIssuerRevoked | 0x801E0000 | The Issuer certificate has been revoked. |
Bad_CertificateIssuerTimeInvalid | 0x80150000 | An Issuer certificate has expired or is not yet valid. |
Bad_CertificateIssuerUseNotAllowed | 0x80190000 | The Issuer certificate may not be used for the requested operation. |
Bad_CertificateRevocationUnknown | 0x801B0000 | It was not possible to determine if the certificate has been revoked. |
Bad_CertificateRevoked | 0x801D0000 | The certificate has been revoked. |
Bad_CertificateTimeInvalid | 0x80140000 | The certificate has expired or is not yet valid. |
Bad_CertificateUntrusted | 0x801A0000 | The certificate is not trusted. |
Bad_CertificateUriInvalid | 0x80170000 | The URI specified in the ApplicationDescription does not match the URI in the certificate. |
Bad_CertificateUseNotAllowed | 0x80180000 | The certificate may not be used for the requested operation. |
Bad_CommunicationError | 0x80050000 | A low level communication error occurred. |
Bad_ConditionAlreadyDisabled | 0x80980000 | This condition has already been disabled. |
Bad_ConditionAlreadyEnabled | 0x80CC0000 | This condition has already been enabled. |
Bad_ConditionAlreadyShelved | 0x80D10000 | The condition has already been shelved. |
Bad_ConditionBranchAlreadyAcked | 0x80CF0000 | The condition branch has already been acknowledged. |
Bad_ConditionBranchAlreadyConfirmed | 0x80D00000 | The condition branch has already been confirmed. |
Bad_ConditionDisabled | 0x80990000 | The property is not available or this condition is disabled. |
Bad_ConditionNotShelved | 0x80D20000 | The condition is not currently shelved. |
Bad_ConfigurationError | 0x80890000 | There is a problem with the configuration that affects the usefulness of the value. |
Bad_ConnectionClosed | 0x80AE0000 | The network connection has been closed. |
Bad_ConnectionRejected | 0x80AC0000 | Could not establish a network connection to remote server. |
Bad_ContentFilterInvalid | 0x80480000 | The content filter is not valid. |
Bad_ContinuationPointInvalid | 0x804A0000 | The continuation point is no longer valid. |
Bad_DataEncodingInvalid | 0x80380000 | The data encoding is invalid. |
Bad_DataEncodingUnsupported | 0x80390000 | The server does not support the requested data encoding for the node. |
Bad_DataLost | 0x809D0000 | Data is missing due to collection started/stopped/lost. |
Bad_DataTypeIdUnknown | 0x80110000 | The extension object cannot be (de)serialized because the data type ID is not recognized. |
Bad_DataUnavailable | 0x809E0000 | Expected data is unavailable for the requested time range due to an unmounted volume, an offline archive or tape, or similar reason for temporary unavailability. |
Bad_DeadbandFilterInvalid | 0x808E0000 | The deadband filter is not valid. |
Bad_DecodingError | 0x80070000 | Decoding halted because of invalid data in the stream. |
Bad_DeviceFailure | 0x808B0000 | There has been a failure in the device/data source that generates the value that has affected the value. |
Bad_DialogNotActive | 0x80CD0000 | The dialog condition is not active. |
Bad_DialogResponseInvalid | 0x80CE0000 | The response is not valid for the dialog. |
Bad_Disconnect | 0x80AD0000 | The server has disconnected from the client. |
Bad_DiscoveryUrlMissing | 0x80510000 | No DiscoveryUrl was specified. |
Bad_DuplicateReferenceNotAllowed | 0x80660000 | The reference type between the nodes is already defined. |
Bad_EncodingError | 0x80060000 | Encoding halted because of invalid data in the objects being serialized. |
Bad_EncodingLimitsExceeded | 0x80080000 | The message encoding/decoding limits imposed by the stack have been exceeded. |
Bad_EndOfStream | 0x80B00000 | Cannot move beyond end of the stream. |
Bad_EntryExists | 0x809F0000 | The data or event was not successfully inserted because a matching entry exists. |
Bad_EventFilterInvalid | 0x80470000 | The event filter is not valid. |
Bad_EventIdUnknown | 0x809A0000 | The specified event ID is not recognized. |
Bad_EventNotAcknowledgeable | 0x80BB0000 | The event cannot be acknowledged. |
Bad_ExpectedStreamToBlock | 0x80B40000 | The stream did not return all data requested (possibly because it is a non-blocking stream). |
Bad_FilterElementInvalid | 0x80C40000 | The referenced element is not a valid element in the content filter. |
Bad_FilterLiteralInvalid | 0x80C50000 | The referenced literal is not a valid value. |
Bad_FilterNotAllowed | 0x80450000 | A monitoring filter cannot be used in combination with the attribute specified. |
Bad_FilterOperandCountMismatch | 0x80C30000 | The number of operands provided for the filter operator was less than expected for the operand provided. |
Bad_FilterOperandInvalid | 0x80490000 | The operand used in a content filter is not valid. |
Bad_FilterOperatorInvalid | 0x80C10000 | An unregognized operator was provided in a filter. |
Bad_FilterOperatorUnsupported | 0x80C20000 | A valid operator was provided but the server does not provide support for this filter operator. |
Bad_HistoryOperationInvalid | 0x80710000 | The history details parameter is not valid. |
Bad_HistoryOperationUnsupported | 0x80720000 | The server does not support the requested operation. |
Bad_IdentityChangeNotSupported | 0x80C60000 | The server does not support changing the user identity assigned to the session. |
Bad_IdentityTokenInvalid | 0x80200000 | The user identity token is not valid. |
Bad_IdentityTokenRejected | 0x80210000 | The user identity token is valid but the server has rejected it. |
Bad_IndexRangeInvalid | 0x80360000 | The syntax of the index range parameter is invalid. |
Bad_IndexRangeNoData | 0x80370000 | No data exists within the range of indexes specified. |
Bad_InsufficientClientProfile | 0x807C0000 | The Client of the current Session does not support one or more Profiles that are necessary for the Subscription. |
Bad_InternalError | 0x80020000 | An internal error occurred as a result of a programming or configuration error. |
Bad_InvalidArgument | 0x80AB0000 | One or more arguments are invalid. |
Bad_InvalidSelfReference | 0x80670000 | The server does not allow this type of self-reference on this node. |
Bad_InvalidState | 0x80AF0000 | The operation cannot be completed because the object is closed, uninitialized or in some other invalid state. |
Bad_InvalidTimestamp | 0x80230000 | The timestamp is outside the range allowed by the server. |
Bad_InvalidTimestampArgument | 0x80BD0000 | The defined timestamp to return was invalid. |
Bad_MaxAgeInvalid | 0x80700000 | The max age parameter is invalid. |
Bad_MaxConnectionsReached | 0x80B70000 | The operation could not be finished because all available connections are in use. |
Bad_MessageNotAvailable | 0x807B0000 | The requested notification message is no longer available. |
Bad_MethodInvalid | 0x80750000 | The method ID does not refer to a method for the specified object. |
Bad_MonitoredItemFilterInvalid | 0x80430000 | The monitored item filter parameter is not valid. |
Bad_MonitoredItemFilterUnsupported | 0x80440000 | The server does not support the requested monitored item filter. |
Bad_MonitoredItemIdInvalid | 0x80420000 | The monitoring item ID does not refer to a valid monitored item. |
Bad_MonitoringModeInvalid | 0x80410000 | The monitoring mode is invalid. |
Bad_NoCommunication | 0x80310000 | Communication with the data source is defined but not established and there is no last known value available. |
Bad_NoContinuationPoints | 0x804B0000 | The operation could not be processed because all continuation points have been allocated. |
Bad_NoData | 0x809B0000 | No data exists for the requested time range or event filter. |
Bad_NoDataAvailable | 0x80B10000 | No data is currently available for reading from a non-blocking stream. |
Bad_NodeAttributesInvalid | 0x80620000 | The node attributes are not valid for the node class. |
Bad_NodeClassInvalid | 0x805F0000 | The node class is not valid. |
Bad_NodeIdExists | 0x805E0000 | The requested node ID is already used by another node. |
Bad_NodeIdInvalid | 0x80330000 | The syntax of the node ID is not valid. |
Bad_NodeIdRejected | 0x805D0000 | The requested node ID was rejected because it was invalid or server does not allow node IDs to be specified by the client. |
Bad_NodeIdUnknown | 0x80340000 | The node ID refers to a node that does not exist in the server address space. |
Bad_NoDeleteRights | 0x80690000 | The server will not allow the node to be deleted. |
Bad_NodeNotInView | 0x804E0000 | The node is not part of the view. |
Bad_NoEntryExists | 0x80A00000 | The data or event was not successfully updated because no matching entry exists. |
Bad_NoMatch | 0x806F0000 | The requested operation has no match to return. |
Bad_NonceInvalid | 0x80240000 | The nonce does appear to be not a random value or it is not the correct length. |
Bad_NoSubscription | 0x80790000 | There is no subscription available for this session. |
Bad_NotConnected | 0x808A0000 | The variable should receive its value from another variable but has never been configured to do so. |
Bad_NotFound | 0x803E0000 | A requested item was not found or a search operation ended without success. |
Bad_NothingToDo | 0x800F0000 | There was nothing to do because the client passed a list of operations with no elements. |
Bad_NotImplemented | 0x80400000 | Requested operation is not implemented. |
Bad_NotReadable | 0x803A0000 | The access level does not allow reading or subscribing to the node. |
Bad_NotSupported | 0x803D0000 | The requested operation is not supported. |
Bad_NotTypeDefinition | 0x80C80000 | The provided node ID was not a type definition node ID. |
Bad_NotWritable | 0x803B0000 | The access level does not allow writing to the node. |
Bad_NoValidCertificates | 0x80590000 | The client did not provide at least one software certificate that is valid and meets the profile requirements for the server. |
Bad_ObjectDeleted | 0x803F0000 | The object cannot be used because it has been deleted. |
Bad_OperationAbandoned | 0x80B30000 | The asynchronous operation was abandoned by the caller. |
Bad_OutOfMemory | 0x80030000 | Not enough memory to complete the operation. |
Bad_OutOfRange | 0x803C0000 | The value was out of range. |
Bad_OutOfService | 0x808D0000 | The source of the data is not operational. |
Bad_ParentNodeIdInvalid | 0x805B0000 | The parent node ID does not refer to a valid node. |
Bad_ProtocolVersionUnsupported | 0x80BE0000 | The applications do not have compatible protocol versions. |
Bad_QueryTooComplex | 0x806E0000 | The requested operation requires too many resources on the server. |
Bad_ReferenceLocalOnly | 0x80680000 | The reference type is not valid for a reference to a remote server. |
Bad_ReferenceNotAllowed | 0x805C0000 | The reference could not be created because it violates constraints imposed by the data model. |
Bad_ReferenceTypeIdInvalid | 0x804C0000 | The reference type ID is not valid. |
Bad_RefreshInProgress | 0x80970000 | This Condition refresh failed or a Condition refresh operation is already in progress. |
Bad_RequestCancelledByClient | 0x802C0000 | The request was cancelled by the client. |
Bad_RequestCancelledByRequest | 0x805A0000 | The request was cancelled by the client with the Cancel service. |
Bad_RequestHeaderInvalid | 0x802A0000 | The header for the request is missing or invalid. |
Bad_RequestInterrupted | 0x80840000 | The request could not be sent because of a network interruption. |
Bad_RequestTimeout | 0x80850000 | Timeout occurred while processing the request. |
Bad_RequestTooLarge | 0x80B80000 | The request message size exceeds limits set by the server. |
Bad_RequestTypeInvalid | 0x80530000 | The security token request type is not valid. |
Bad_ResourceUnavailable | 0x80040000 | An operating system resource is not available. |
Bad_ResponseTooLarge | 0x80B90000 | The response message size exceeds limits set by the client. |
Bad_SecureChannelClosed | 0x80860000 | The secure channel has been closed. |
Bad_SecureChannelIdInvalid | 0x80220000 | The specified secure channel is no longer valid. |
Bad_SecureChannelTokenUnknown | 0x80870000 | The token has expired or is not recognized. |
Bad_SecurityChecksFailed | 0x80130000 | An error occurred verifying security. |
Bad_SecurityModeRejected | 0x80540000 | The security mode does not meet the requirements set by the server. |
Bad_SecurityPolicyRejected | 0x80550000 | The security policy does not meet the requirements set by the server. |
Bad_SempahoreFileMissing | 0x80520000 | The semaphore file specified by the client is not valid. |
Bad_SensorFailure | 0x808C0000 | There has been a failure in the sensor from which the value is derived by the device/data source. |
Bad_SequenceNumberInvalid | 0x80880000 | The sequence number is not valid. |
Bad_SequenceNumberUnknown | 0x807A0000 | The sequence number is unknown to the server. |
Bad_ServerHalted | 0x800E0000 | The server has stopped and cannot process any requests. |
Bad_ServerIndexInvalid | 0x806A0000 | The server index is not valid. |
Bad_ServerNameMissing | 0x80500000 | No ServerName was specified. |
Bad_ServerNotConnected | 0x800D0000 | The operation could not complete because the client is not connected to the server. |
Bad_ServerUriInvalid | 0x804F0000 | The ServerUri is not a valid URI. |
Bad_ServiceUnsupported | 0x800B0000 | The server does not support the requested service. |
Bad_SessionClosed | 0x80260000 | The session was closed by the client. |
Bad_SessionIdInvalid | 0x80250000 | The session ID is not valid. |
Bad_SessionNotActivated | 0x80270000 | The session cannot be used because ActivateSession has not been called. |
Bad_ShelvingTimeOutOfRange | 0x80D30000 | The shelving time is not within an acceptable range. |
Bad_Shutdown | 0x800C0000 | The operation was cancelled because the application is shutting down. |
Bad_SourceNodeIdInvalid | 0x80640000 | The source node ID does not reference a valid node. |
Bad_StateNotActive | 0x80BF0000 | The sub-state machine is not currently active. |
Bad_StructureMissing | 0x80460000 | A mandatory structured parameter was missing or null. |
Bad_SubscriptionIdInvalid | 0x80280000 | The subscription ID is not valid. |
Bad_SyntaxError | 0x80B60000 | The value had an invalid syntax. |
Bad_TargetNodeIdInvalid | 0x80650000 | The target node ID does not reference a valid node. |
Bad_TcpEndpointUrlInvalid | 0x80830000 | The serverdoes not recognize the QueryString specified. |
Bad_TcpInternalError | 0x80820000 | An internal error occurred. |
Bad_TcpMessageTooLarge | 0x80800000 | The size of the message specified in the header is too large. |
Bad_TcpMessageTypeInvalid | 0x807E0000 | The type of the message specified in the header is invalid. |
Bad_TcpNotEnoughResources | 0x80810000 | There are not enough resources to process the request. |
Bad_TcpSecureChannelUnknown | 0x807F0000 | The SecureChannelId and/or TokenId are not currently in use. |
Bad_TcpServerTooBusy | 0x807D0000 | The server cannot process the request because it is too busy. |
Bad_Timeout | 0x800A0000 | The operation timed out. |
Bad_TimestampNotSupported | 0x80A10000 | The client requested history using a timestamp format the server does not support. In other words, the client requested ServerTimestamp when server only supports SourceTimestamp. |
Bad_TimestampsToReturnInvalid | 0x802B0000 | The timestamps to return parameter are invalid. |
Bad_TooManyMatches | 0x806D0000 | The requested operation has too many matches to return. |
Bad_TooManyMonitoredItems | 0x80DB0000 | The request could not be processed because there are too many monitored items in the subscription. |
Bad_TooManyOperations | 0x80100000 | The request could not be processed because it specified too many operations. |
Bad_TooManyPublishRequests | 0x80780000 | The server has reached the maximum number of queued publish requests. |
Bad_TooManySessions | 0x80560000 | The server has reached its maximum number of sessions. |
Bad_TooManySubscriptions | 0x80770000 | The server has reached its maximum number of subscriptions. |
Bad_TypeDefinitionInvalid | 0x80630000 | The type definition node ID does not reference an appropriate type node. |
Bad_TypeMismatch | 0x80740000 | The value supplied for the attribute is not of the same type as the attribute's value. |
Bad_UnexpectedError | 0x80010000 | An unexpected error occurred. |
Bad_UnknownResponse | 0x80090000 | An unrecognized response was received from the server. |
Bad_UserAccessDenied | 0x801F0000 | User does not have permission to perform the requested operation. |
Bad_UserSignatureInvalid | 0x80570000 | The user token signature is missing or invalid. |
Bad_ViewIdUnknown | 0x806B0000 | The view ID does not refer to a valid view node. |
Bad_ViewParameterMismatch | 0x80CA0000 | The view parameters are not consistent with each other. |
Bad_ViewTimestampInvalid | 0x80C90000 | The view timestamp is not available or not supported. |
Bad_ViewVersionInvalid | 0x80CB0000 | The view version is not available or not supported. |
Bad_WaitingForInitialData | 0x80320000 | Waiting for the server to obtain values from the underlying data source. |
Bad_WaitingForResponse | 0x80B20000 | The asynchronous operation is waiting for a response. |
Bad_WouldBlock | 0x80B50000 | Non-blocking behavior is required and the operation would block. |
Bad_WriteNotSupported | 0x80730000 | The server does not support writing the combination of value status and timestamps provided. |
Good | 0x00000000 | The operation was successful. |
Good_CallAgain | 0x00A90000 | The operation is not finished and needs to be called again. |
Good_Clamped | 0x00300000 | The value written was accepted but was clamped. |
Good_CommunicationEvent | 0x00A70000 | The communication layer has raised an event. |
Good_CompletesAsynchronously | 0x002E0000 | The processing will complete asynchronously. |
Good_DataIgnored | 0x00D90000 | The request specifies fields which are not valid for the EventType or cannot be saved by the historian. |
Good_EntryInserted | 0x00A20000 | The data or event was successfully inserted into the historical database. |
Good_EntryReplaced | 0x00A30000 | The data or event was successfully replaced in the historical database. |
Good_LocalOverride | 0x00960000 | The value has been overridden. |
Good_MoreData | 0x00A60000 | More data exists for the requested time range or event filter. |
Good_NoData | 0x00A50000 | No data exists for the requested time range or event filter. |
Good_NonCriticalTimeout | 0x00AA0000 | A non-critical timeout occurred. |
Good_Overload | 0x002F0000 | Sampling has slowed down due to resource limitations. |
Good_ResultsMayBeIncomplete | 0x00BA0000 | The server should have followed a reference to a node in a remote server but did not. The result set may be incomplete. |
Good_ShutdownEvent | 0x00A80000 | The system is shutting down. |
Good_SubscriptionTransferred | 0x002D0000 | The subscription was transferred to another session. |
Uncertain | 0x40000000 | The value is uncertain but the reason is unknown. |
Uncertain_DataSubNormal | 0x40A40000 | The value is derived from multiple values and contains less than the required number of Good values. |
Uncertain_EngineeringUnitsExceeded | 0x40940000 | The value is outside of the range of values defined for this parameter. |
Uncertain_InitialValue | 0x40920000 | The value is an initial value for a variable that normally receives its value from another variable. |
Uncertain_LastUsableValue | 0x40900000 | Whatever was updating this value has stopped doing so. |
Uncertain_NoCommunicationLastUsableValue | 0x408F0000 | Communication to the data source has failed. The variable value is the last value that had a Good quality. |
Uncertain_NotAllNodesAvailable | 0x40C00000 | The list of references may not be complete because the underlying system is not available. |
Uncertain_ReferenceNotDeleted | 0x40BC0000 | The server was not able to delete all target references. |
Uncertain_ReferenceOutOfServer | 0x406C0000 | One of the references to follow in the relative path references to a node in the address space in another server. |
Uncertain_SensorNotAccurate | 0x40930000 | The value is at one of the sensor limits. |
Uncertain_SubNormal | 0x40950000 | The value is derived from multiple sources and contains less than the required number of Good sources. |
Uncertain_SubstituteValue | 0x40910000 | The value is an operational value that was manually overwritten. |