I think you should always be able to get the API from the suppliers.
IoT devices may use various ways to transmit data (BLE, Wi-Fi, LTE,etc).
Each of those protocols has their own way to define a unique ID of the device.
Like some of them may contain the MAC address in the header, or some may contain the unique ID in the data.