Feature Request
Add support on /propagate for bulk meta updates on devices based on a pasted or uploaded list of EUIs.
Today, if we want to update or replace a device meta value for a specific set of devices spread across installations, we have to do it externally with a script. It would be very useful to support this directly in the Propagate UI.
Suggested UX
Allow the user to:
- Paste a list of EUIs or upload a text/CSV file
- Enter one meta key and one meta value
- Optionally restrict the operation to one or more installations
- Preview matched devices before applying changes
- See which EUIs matched, which were missing, and which devices would be updated
- Apply the change with “create missing key” support
- Optionally choose whether MQTT publish should be silent or not
Why this would help
This is a common admin task when devices already exist in Lynx but need metadata corrected or added afterward. Doing it in the UI would remove the need for custom scripts and reduce the risk of manual mistakes. There is to my knowledge no way of doing this via UI right now. This is what I've done to get around it when updating 'lora_manager.decoder_name'
Current Script-Based Method
Take a provided list of EUIs.
For each EUI, call global search:
GET /api/v3beta/search?q=*&types=device&metadata.eui=<EUI>
Use the returned device match, especially:
id
installationID
allMetadata
Optionally filter results by installation if needed.
For each matched device, update the meta key with:
PUT /api/v2/devicex/{installation_id}/{devicex_id}/meta/{meta_key}
Send body:
{
"value": "new value",
"protected": false
}
Use create_missing=true so the key is created if it does not already exist.
Skip devices where the value is already correct, and report unmatched EUIs.
Why this API flow fits the UI
The global search endpoint already gives a clean way to resolve devices from EUI without loading all devices first, and the meta PUT endpoint already supports replacing existing values and creating missing keys. That makes this a natural fit for a bulk operation in Propagate.
Nice-to-have additions
Dry-run mode in UI
Downloadable result report
Duplicate match warning if one EUI resolves to multiple devices
Summary counts: requested EUIs, matched devices, updated, skipped, failed, missing
I know there is a new UI coming. Was hoping to provide a painpoint that could hopefully be addressed. Looking forward to any news about the UI.