When updating a dashboard via PUT (/api/dashboards/{originOrId}), the CLI sends the user-defined ID in both the URL path parameter and the request body (metadata.dash0Extensions.id).
The server-side validation rejects the request when the body ID is a UUID that matches the dashboard's own server-assigned ID, because it interprets the duplicate as a conflict between the path parameter and the body field.
This affects both dash0 dashboards update -f <file> and dash0 apply -f <file> when the dashboard definition contains a dash0Extensions.id that happens to be a UUID.
When updating a dashboard via PUT (
/api/dashboards/{originOrId}), the CLI sends the user-defined ID in both the URL path parameter and the request body (metadata.dash0Extensions.id).The server-side validation rejects the request when the body ID is a UUID that matches the dashboard's own server-assigned ID, because it interprets the duplicate as a conflict between the path parameter and the body field.
This affects both
dash0 dashboards update -f <file>anddash0 apply -f <file>when the dashboard definition contains adash0Extensions.idthat happens to be a UUID.