meta.json applications schema | Viam hosting

meta.json applications schema

Reference for the applications array in meta.json. This array declares one or more Viam Applications that Viam hosts at *.viamapplications.com after you upload the module. For the deployment workflow that produces and uploads meta.json, see Deploy a Viam application.

Complete example

{
  "$schema": "https://dl.viam.dev/module.schema.json",
  "module_id": "acme:dashboard",
  "visibility": "public",
  "applications": [
    {
      "name": "dashboard",
      "type": "multi_machine",
      "entrypoint": "dist/index.html",
      "fragmentIds": ["f0b5a1c2-..."],
      "allowedOrgIds": ["org-id-1", "org-id-2"],
      "logoPath": "static/logo.png",
      "customizations": {
        "machinePicker": {
          "heading": "Select your device",
          "subheading": "Choose a machine to monitor"
        }
      }
    }
  ]
}

Top-level module fields

These fields apply to the whole module, not to a specific application. They are required even when the module’s only purpose is to host an application.

Field Type Required Notes
$schema string Optional Canonical value: `