# eXtremeDB IoT Specific Return Codes

> The following table lists status codes that can be returned by the eXtremeDB IoT APIs as defined in file `mco.h`:

> MCO_E_IOT
> IoT base error code
> MCO_E_IOT_NOT_INITIALIZED
> IoT runtime was not initialized
> MCO_E_IOT_INVALID_HANDLE
> Invalid or uninitialized IoT handle
> MCO_E_IOT_WRONG_AGENT_ID
> Invalid or unusable agentID
> MCO_E_IOT_AGENT_NOT_FOUND
> Agent with specified ID was not found
> MCO_E_IOT_PROTOCOLERR
> IoT protocol error
> MCO_E_IOT_TS_GAP
> Dscontinuous timestamps detected
> MCO_E_IOT_TS_OUTOFDATE
> Repeated timestamps detected
> MCO_E_IOT_NO_NEW_DATA
> No new data recevied
> MCO_E_IOT_TOO_MANY_CONTEXTS
> Max number of agent contexts exceeded
> MCO_E_IOT_DUPLICATE_CALLBACK
> IoT callback already registered
> MCO_E_IOT_CALLBACK_NOT_FOUND
> IoT callback was not registered
> MCO_E_IOT_INCOMPATIBLE_MODE
> Incompatible modes between agents
> MCO_E_IOT_INCOMPATIBLE_LEVEL
> Incompatible levels between agents
> MCO_E_IOT_STOPPED
> IoT runtime was stopped
> MCO_E_IOT_TIMEOUT
> Timeout for wait has expired (returned by `mco_iot_replicator_sync()` if the operation does not complete within the specified time)
> MCO_E_IOT_DDL_NOT_SUPPORTED
> DDL is not supported by IoT