Device connection and status

One of the reasons could be because the client which is generating the data has the HTTP header set X-Cumulocity-Application-Key (which is the default if you’re using the Cumulocity IoT Java or Angular SDKs).

There is a Concept page which mentions some details about this, below is a snippet from the references docs.

Furthermore, most of the HTTP requests which are sent by microservices must contain the HTTP header X-Cumulocity-Application-Key . The header indicates that an action is performed by an application. When the header is missing Cumulocity IoT assumes that the HTTP request is originated by an IoT device. Therefore, a request without X-Cumulocity-Application-Key affects for example, the device availability state, or the billing data.

Long story short, if you remove the X-Cumulocity-Application-Key HTTP header from the REST API calls which are generating data which should count towards the device monitoring (though inventory updates don’t generally affect it, except for an empty PUT).

Note

I inferred that you are using a microservice to generate the data has the screenshot showed that the device owner follows the pattern service_xxxx.

1 Like