According to documentation
IDs are prefixed with a type in order to make them more distinguishable. The following types are used:
• "u" - user ID
• "g" – group ID
• "m" – meeting ID
• "s" – session code
• „c“ – contact ID
• „d“ – device ID
• „r“ – remote control ID, also referred to as TeamViewer ID in other documentations
In fact when I call https://webapi.teamviewer.com/api/v1/reports/connections?from_date=[date] the result contain records and deviceid field does not start with "d". The values looks like as integers, for example "475705308". I assume it is a bug?
BTW, at the same time userid and contact_id of the same record looks as it should: user Id starts with "u" and contact Id starts with "c"