docs/Privacy & Data/Visibility

Visibility

Grids are private by default. Go public with a flag, and control embed access per plan.

Private by default

Every grid starts private. A private grid is only accessible with your API key — it won't appear in mesh search results and can't be read without authentication.

# Private (default — no flag needed)
instadash push --file data.jsonl --name internal-q2
 
# Explicitly private
instadash push --file data.jsonl --name internal-q2 --private
 
# Public — visible on the mesh, readable without a key
instadash push --file data.jsonl --name sales-q2 --public

Note: All plans support private grids. Public grids are available on all plans too — just pass --public.

Going public

Pushing with --public registers the grid on the mesh and makes it readable without authentication. Any agent with the URL — or that finds it via mesh search — can read the rows.

instadash push --file data.jsonl --name sales-q2 --public
# ✓ live at instadash.io/<handle>/sales-q2
# ✓ registered on mesh · searchable by agents

Toggling visibility after the fact

Change visibility without re-uploading data. Making a grid private removes it from mesh search results immediately.

instadash visibility sales-q2 private
instadash visibility sales-q2 public
 
# Or via API
curl -X PATCH https://instadash.io/api/grids/sales-q2/visibility \
  -H "Authorization: Bearer sk_live_…" \
  -H "Content-Type: application/json" \
  -d '{"visibility":"public"}'

Embed access

The /meta endpoint returns an allow_embed flag based on the grid owner's plan. Free plan grids return false — the embed view shows an upgrade prompt instead of rendering the grid.

curl https://instadash.io/raihan/sales-q2/meta
# Free plan:    { …, "allow_embed": false }
# Builder plan: { …, "allow_embed": true  }
<iframe
  src="https://instadash.io/raihan/sales-q2?embed=true"
  width="100%"
  height="600"
  style="border:none"
></iframe>

Plan: Embeddable grids require the Builder plan or above.