Skip to content

Configuration files

Besides backing up a whole workspace, some kinds of configuration can be saved to a file and restored into a workspace that is already running, for example to move them to another workspace.

Kind Format Where
Metric Catalog JSON and CSV (name, unit, label) The Metric Catalog page
Config Templates JSON The Config Templates page
Device Types JSON The Device Types page
Device settings JSON and CSV (one row per device) The Devices page
Rule sets (Device Rules) JSON The Device Rules page

Files use the same envelope:

{ "format": "celestian-config", "version": 1, "kind": "device-config-templates",
"exportedAt": "2026-10-12T08:00:00Z", "items": [ ... ] }

Files carry no internal IDs and no secrets. Items are matched by a stable key (a metric name, a template name, a device type key). At most 900 KB per file.

  1. Preview first: what will happen per item, without saving anything.
  2. All or nothing: if one item is invalid, nothing is saved.
  3. When an item already exists: Skip (the default), Overwrite, or Create a copy (a new name or key, for example voltage_2). An identical item is marked Unchanged.
  4. Every change is recorded in Journals.
  5. Export needs read permission; import (and preview too) needs change permission.

A device type’s versions are immutable. An import never changes an existing version: a new type is created with its versions, and for an existing type with Overwrite, versions from the file whose attributes do not exist yet are added as new versions. Re-importing the same file does not add versions.

The values in the file are merged into each device’s settings draft (matched by serial); other keys are not touched. In CSV, an empty cell means the key is not changed, and a decimal comma (36,5) is read as a number. Drafts are saved all-or-nothing; sending directly to the devices is optional and per device. At most 500 devices per file. See Remote device configuration.

Only the canvas graph and the description are included. Bindings (group or device type) and followers are not, because they refer to objects of the source workspace; re-attach them through the Apply tab. A set is validated with the same compiler as the editor.