Skip to main content
A canvas is a board of charts. There are two ways to put one in front of your users, depending on whose numbers they should see: Canvases replace Applications for both. If you’re moving from Applications, see Moving from Applications.

Every customer, their own data

Build the dashboard once as a canvas, share it with the workspace, and every user of your embedded workspace gets it, each with their own numbers.
A Sales Performance canvas inside an app's embedded Upsolve workspace: KPI cards for customers and profit margin above revenue and profit charts, with the canvas listed in the side panel
  1. Build the canvas in the workspace: in Home, open Canvas and create one, then add charts to it. See Canvas.
  2. Save a version from the canvas’s Actions menu.
  3. Share it with the workspace. In the share dialog, turn on Workspace. Only a builder can.
  4. Promote a version. Click the rocket beside the version picker and choose the version to promote. Everyone who opens the canvas through the workspace now sees that version, and can’t switch to another.
  5. Embed the workspace in your product if you haven’t yet: see Embed Upsolve in your product.
Your users find the canvas under Canvases in the embedded workspace’s side panel, or in All canvases. To open the embed on its canvases rather than on the chat, add nav=canvas to the iframe URL. For each user:
  • Every chart runs live, as them. The rows each user sees come from your warehouse under their own row-level security, never from the numbers you saw when you built it.
  • They can’t change it, but they can make a copy of their own to change, and build canvases of their own from their chats.
  • You keep editing. Changes to the canvas reach your users only when you promote a new version. Stop promoting shows them the canvas as it stands.
A canvas link carries the access of the canvas owner who made it: everyone who opens it sees the canvas as that owner does. It needs no Upsolve account and no DNS or CNAME setup.
Every visitor to a link sees the same numbers. To give each customer their own data, use the workspace embed above instead.

Before you start

  1. A canvas you own, with a saved version.
  2. Your link to it: open the canvas’s share dialog, choose what visitors see under Your link (a Live link needs a passkey) and make the link. Its token is the last part of the URL the dialog shows.
Build a page in your product and point an iframe at the canvas link:
  • Replace {accessToken} with the token from your share dialog.
  • ?hideHeader=1 hides the canvas name and “Read-only” badge for a chrome-free embed.
  • A link with a passkey asks for it in the frame before it shows the canvas.
  • For on-premise deployments, replace ai-hub.upsolve.ai with your instance’s hostname.
That’s it. Canvas links can be framed from any website, so your users see your app’s address while the canvas renders inside the frame.

Use your own domain (optional)

By default, canvas links are on ai-hub.upsolve.ai. To make the link you copy show your own domain, set a Custom Share Domain:
  1. Go to Project Settings → Sharing.
  2. Enter your Custom Share Domain, for example insights.yourcompany.com/canvas. A preview shows the resulting link.
  3. Save.
Every canvas link then reads https://insights.yourcompany.com/canvas/{accessToken}.
The Custom Share Domain only changes the link Upsolve shows you, not where the canvas is served. Either route that path in your own product to a page that iframes the Upsolve link (no DNS needed), or point the domain at Upsolve with a CNAME or reverse proxy. If you proxy, keep the frame-ancestors * response header so the page can still be framed.

Security

  • The canvas is read-only. A Live link runs only the charts in the link’s version; a Snapshot link runs nothing and shows their saved rows.
  • A visitor needs the token, and the passkey when there is one (a Live link always has one). Wrong passkeys are throttled.
  • Every live chart runs as the link’s owner, so a link never shows more than its owner can see. It stops working when they lose their access, and deleting the link stops it at once. A builder can revoke any link to a canvas.

Moving from Applications

Applications are being deprecated. Everything they did maps onto workspaces and canvases:

Next steps

Canvas

Build canvases, save versions and share them.

Embed Upsolve in your product

Sign your users in and embed the workspace.