It is actually device interface instance id (symbolic link name). And yes, its unique and persists across system restart. Some details also here.
You can use CM_Get_Device_Interface_Property
or SetupDiGetDeviceInterfaceProperty
on interface instance id with DEVPKEY_Device_InstanceId
to get device instance id (one device can have multiple interfaces).
In your example - you have a HID device. Its device id format is described here.
Info on general USB devices id format is here.
After you have device instance id you can use CM_Get_DevNode_Property
or SetupDiGetDeviceProperty
with DEVPKEY_NAME
to get localized friendly name of a device (which is shown in Device Manager).
To sum up:
NOTE: exact device interface id
format is not documented, each device interface can generate file name it want. I don't recommend you to parse it - it could be changed in later Windows version, better aquire device instance id
- it is documents at least.